View Full Version : MOD - Multiple Listing Types
RealtyOne
10-27-2003, 06:58 PM
The thread for the new version has moved to http://www.open-realty.org/phpBB2/viewtopic.php?t=3643
Information on the old version can still be found in this thread!
Cybrac
04-11-2004, 11:11 AM
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
The tables must capital in the correct places.
below are what i have in the lines that you listed
add_auto around 89
} // end while
// now it's time to replace the password
$sql = "UPDATE " . $config[table_prefix] . "autoDB
SET notes = $notes WHERE ID = '$new_listing_id'";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
// now that that's taken care of, it's time to insert all the rest
// of the variables into the database
$message = updateautodata($new_listing_id, $userID);
if ($message == "success")
{
echo "<p>$lang[admin_new_listing_created], $user_name</p>";
if ($config[moderate_listings] == "yes
Around autoview 14
elseif ($listingID != "")
{
// first, check to see whether the listing is currently active
$show_listing = checkautoActive($listingID);
if ($show_listing == "yes")
/autosearch.php and /auto_browse.php display: Your search returned no results
I believe that i am still have this problem also but if i call it by the url i can bring them up.
jason
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
Thanks Jason.
below are what i have in the lines that you listed
I have exactly the same lines in add_auto.php and autoview.php
I believe that i am still have this problem also but if i call it by the url i can bring them up.
If I call the listing by the url, I get the same error:
Fatal error: Call to undefined function: checkautoactive() in /usr/local/psa/home/vhosts/clientsdomain.com.au/httpdocs/realty/autoview.php on line 14
Also just discovered that after submitting the add_auto.php form, some of the fields have gone into the listingDBElements table instead of autoDBElements
MJ
Cybrac
04-11-2004, 08:37 PM
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
I think that the majority of the things that i changed where the mysql calls
start looking there .
what do you think if i zip up what i got and post it so that we could both work on it with the same code.
With auto_edit.php is where i have my problem:
SELECT default_autoDB.ID, default_autoDB.Title, default_autoDB.mlsimport, default_autoDB.notes, default_autoDB.expiration, default_autoDB.active, default_autoDB.emailAddress as email FROM default_autoDB, default_UserDB where default_autoDB.user_ID = default_UserDB.ID ORDER BY default_autoDB.ID ASC
jason
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
With auto_edit.php is where i have my problem:
SELECT default_autoDB.ID, default_autoDB.Title, default_autoDB.mlsimport, default_autoDB.notes, default_autoDB.expiration, default_autoDB.active, default_autoDB.emailAddress as email FROM default_autoDB, default_UserDB where default_autoDB.user_ID = default_UserDB.ID ORDER BY default_autoDB.ID ASC
In auto_edit.php search for:
"autoDB.emailAddress as email FROM "
and change to:
"UserDB.emailAddress as email FROM "
There is no such field emailAddress in the autoDB database table.
MJ
what do you think if i zip up what i got and post it so that we could both work on it with the same code.
Good idea.
Cybrac
04-11-2004, 09:08 PM
I was looking at the code and noticed the email and then went and read your listing and tried it and it work.
I will work on zip it up.
Jason
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
To get rid of the first 2 errors I was getting:
Fatal error: Call to undefined function: updateautodata() in /usr/local/psa/home/vhosts/clientsdomain.com.au/httpdocs/realty/admin/add_auto.php on line 89
Fatal error: Call to undefined function: checkautoactive() in /usr/local/psa/home/vhosts/clientsdomain.com.au/httpdocs/realty/autoview.php on line 14
I have changed the following files:
auto_main.php - removed from line 3:
include("common.php");
main.php - added:
include("auto_main.php");
Now everything is inserted into the correct database tables and no errors.
The problem now is that any of the custom fields I added in auto_editor.php are not displaying the information from the database in edit_my_auto.php or autoview.php
autosearch.php and auto_browse.php still display: Your search returned no results however I can now call the listing url and it is displayed.
I was looking at the code and noticed the email and then went and read your listing and tried it and it work.
Great, some progress :)
MJ
Cybrac
04-11-2004, 09:27 PM
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
<?php
include("../include/common.php");
loginCheck('User');
global $action, $id, $cur_page, $lang, $conn, $config;
include("$config[template_path]/admin_top.html");
if ($delete != "")
{
$sql_delete = make_db_safe($delete);
// delete a listing
$sql = "DELETE FROM " . $config[table_prefix] . "autoDB
WHERE ((ID = $sql_delete) AND (user_ID = $userID))";
$recordSet = $conn->Execute($sql);
if ($recordSet === false) log_error($sql);
// delete all the elements associated with a listing
$sql = "DELETE FROM " . $config[table_prefix] . "autoDBElements WHERE ((listing_id = $sql_delete) AND (user_id = $userID))";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
// now get all the images associated with an listing
$sql = "SELECT file_name, thumb_file_name FROM " . $config[table_prefix] . "autoImages WHERE ((listing_id = $sql_delete) AND (user_id = $userID))";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
// so, you've got 'em... it's time to unlink those bad boys...
while (!$recordSet->EOF)
{
$thumb_file_name = make_db_unsafe ($recordSet->fields[thumb_file_name]);
$file_name = make_db_unsafe ($recordSet->fields[file_name]);
// get rid of those darned things...
if (!unlink("$config[listings_upload_path]/$file_name"))
{
die("$lang[alert_site_admin]");
}
if ($file_name != $thumb_file_name)
{
if (!unlink("$config[listings_upload_path]/$thumb_file_name"))
{
die("$lang[alert_site_admin]");
}
}
$recordSet->MoveNext();
}
// for the grand finale, we're going to remove the db records of 'em as well...
$sql = "DELETE FROM " . $config[table_prefix] . "autoImages WHERE ((listing_id = $sql_delete) AND (user_id = $userID))";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
// ta da! we're done...
echo "<p>$lang[admin_listings_editor_listing_number] '$delete' $lang[has_been_deleted]</p>";
log_action ("$lang[log_deleted_listing] $delete");
}
if ($action == "update_listing")
{
// update the listing
if ($title== "")
{
// if the title is blank
echo "$lang[admin_new_listing_enter_a_title]<br>";
} // end if
else
{
global $HTTP_POST_VARS, $userID, $pass_the_form;
$pass_the_form = validateForm(autoFormElements
);
if ($pass_the_form == "No")
{
// if we're not going to pass it, tell that they forgot to fill in one of the fields
echo "<p>$lang[required_fields_not_filled]</p>";
}
if ($pass_the_form == "Yes")
{
$sql_title = make_db_safe($title);
$sql_notes = make_db_safe($notes);
$sql_edit = make_db_safe($edit);
$sql_mlsimport = make_db_safe($mlsimport);
$sql = "UPDATE " . $config[table_prefix] . "autoDB
SET title = $sql_title, ";
if ($featureListings == "yes")
{
// if the user can feature properties
$sql_featured = make_db_safe($featured);
$sql .= "featured = $sql_featured, ";
} // end if ($featureListings == "yes")
if ($admin_privs == "yes")
{
// if the user can feature properties
$sql_active = make_db_safe($edit_active);
$sql .= "active = $sql_active, ";
} // end if ($admin_privs == "yes")
if (($admin_privs == "yes" OR $config[user_default_canChangeExpirations] == "yes")and $config[use_expiration] = "yes")
{
//$date_array = explode("-",$edit_expiration);
//$exp_text = implode(",",$date_array);
//$expiration_date = mktime (0,0,0,$exp_text);
$expiration_date = strtotime($edit_expiration);
$sql .= "expiration = ".$conn->DBDate($expiration_date).",";
}
$sql .= "notes = $sql_notes, mlsimport = $sql_mlsimport, last_modified = ".$conn->DBTimeStamp(time())." WHERE ((ID = $sql_edit) AND (user_ID = $userID))";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
$message = updateListingsData($edit, $userID);
if ($message == "success")
{
echo "<p>$lang[admin_listings_editor_listing_number] $edit $lang[has_been_updated] </p>";
log_action ("$lang[log_updated_listing] $edit");
} // end if
else
{
echo "<p>$lang[alert_site_admin]</p>";
} // end else
} // end if $pass_the_form == "Yes"
} // end else
} // end if $action == "update listing"
if ($edit != "")
{
$sql_edit = make_db_safe($edit);
// first, grab the listings's main info
$sql = "SELECT ID, title, notes, last_modified, featured, active, mlsimport, expiration FROM " . $config[table_prefix] . "autoDB
WHERE ((ID = $sql_edit) AND (user_ID = '$userID'))";
$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
$num_records = $recordSet->RecordCount();
if ($num_records == 0)
{
die("$lang[priv_failure]");
}
while (!$recordSet->EOF)
{
// collect up the main DB's various fields
$listing_ID = make_db_unsafe ($recordSet->fields[ID]);
$edit_title = make_db_unsafe ($recordSet->fields[title]);
$edit_notes = make_db_unsafe ($recordSet->fields[notes]);
$edit_featured = make_db_unsafe ($recordSet->fields[featured]);
$edit_active = make_db_unsafe ($recordSet->fields[active]);
$last_modified = $recordSet->UserTimeStamp($recordSet->fields[last_modified],'D M j G:i:s T Y');
$expiration = $recordSet->UserTimeStamp($recordSet->fields[expiration],'Y-m-d');
$formatted_expiration = $recordSet->UserTimeStamp($recordSet->fields[expiration],'D M j Y');
$edit_mlsimport = make_db_unsafe ($recordSet->fields[mlsimport]);
$recordSet->MoveNext();
} // end while
//$date_mod = getDate($last_modified);
//$last_modified = "$date_mod[weekday], $date_mod[month] $date_mod[mday] $date_mod[year] at $date_mod[hours]:$date_mod[minutes]" // display the date in a human readable format
// now, display all that stuff
?>
<table border="<?php echo $style[form_border] ?>" cellspacing="<?php echo $style[form_cellspacing] ?>" cellpadding="<?php echo $style[form_cellpadding] ?>" width="<?php echo $style[admin_table_width] ?>" class="form_main">
<tr>
<td colspan="2" class="row_main">
<h3><?php echo "$lang[admin_listings_editor_modify_listing]"?> (<a href="<?php echo "$config[baseurl]"."/autoview.php?listingID=$listing_ID";?>" target="_preview"><?php echo $lang[preview] ?></a>)</h3>
</td>
</tr>
<tr>
<td width="<?php echo $style[image_column_width] ?>" valign="top" align="center" class="row_main">
<b><?php echo $lang[images] ?></b>
<br>
<hr width="75%">
<a href="edit_auto_images.php?edit=<?php echo $edit ?>"><?php echo $lang[edit_images] ?></a><br><br>
<?php
$sql = "SELECT caption, file_name, thumb_file_name FROM " . $config[table_prefix] . "autoImages WHERE ((listing_id = '$edit') AND (user_id = '$userID'))";
$recordSet = $conn->Execute($sql);
if ($recordSet === false) log_error($sql);
$num_images = $recordSet->RecordCount();
while (!$recordSet->EOF)
{
$caption = make_db_unsafe ($recordSet->fields[caption]);
$thumb_file_name = make_db_unsafe ($recordSet->fields[thumb_file_name]);
$file_name = make_db_unsafe ($recordSet->fields[file_name]);
// gotta grab the image size
$imagedata = GetImageSize("$config[auto_upload_path]/$thumb_file_name");
$imagewidth = $imagedata[0];
$imageheight = $imagedata[1];
$shrinkage = $config[thumbnail_width]/$imagewidth;
$displaywidth = $imagewidth * $shrinkage;
$displayheight = $imageheight * $shrinkage;
echo "<a href=\"$config[auto_view_images_path]/$file_name\" target=\"_thumb\"> ";
echo "<img src=\"$config[auto_view_images_path]/$thumb_file_name\" height=\"$displayheight\" width=\"$displaywidth\"></a><br> ";
echo "<b>$caption</b><br><br>";
$recordSet->MoveNext();
} // end while
?>
</td>
<td class="row_main">
<table border="<?php echo $style[form_border] ?>" cellspacing="<?php echo $style[form_cellspacing] ?>" cellpadding="<?php echo $style[form_cellpadding] ?>">
<form name="update_listing" action="<?php echo "$PHP_SELF";?>" method="post">
<input type="hidden" name="action" value="update_listing">
<input type="hidden" name="edit" value="<?php echo $edit ?>">
<tr>
<td align="right" class="row_main"><b><?php echo $lang[admin_listings_editor_title] ?>: <span class="required">*</span></b></td>
<td align="left"> <input type="text" name="title" value="<?php echo $edit_title ?>"></td>
</tr>
<?php
if ($featureListings == "yes")
{
?>
<tr><td align="right"><b><?php echo $lang[admin_listings_editor_featured] ?>:</b></td><td align="left">
<select name="featured" size="1">
<option value="<?php echo $edit_featured ?>"><?php echo $edit_featured ?>
<option value="">-----
<option value="yes">yes
<option value="no">no
</select>
<?php
} // end if ($featureListings == "yes")
if ($admin_privs == "yes")
{
?>
<tr><td align="right"><b><?php echo $lang[admin_listings_active] ?>:</b></td><td align="left">
<select name="edit_active" size="1">
<option value="<?php echo $edit_active ?>"><?php echo $edit_active ?>
<option value="">-----
<option value="yes">yes
<option value="no">no
</select>
<?php
}
if (($admin_privs == "yes" OR $config[user_default_canChangeExpirations] == "yes")and $config[use_expiration] = "yes")
{
?>
<tr><td align="right"><b><? echo $lang[admin_listings_editor_mlsimport] ?>:</b></td><td align="left">
<select name="mlsimport" size="1">
<option value="<? echo $edit_mlsimport ?>"><? echo $edit_mlsimport ?>
<option value="">-----
<option value="yes">yes
<option value="no">no
</select>
</td></tr>
<tr><td align="right" class="row_main"><b><?php echo $lang[expiration] ?>:</b></td><td align="left"><input type="text" name="edit_expiration" value="<?php echo $expiration ?>">(Y-M-D)</td></tr>
<?php
} // end if ($admin_privs == "yes" and $config[use_expiration] = "yes")
elseif ($config[use_expiration] = "yes")
{
?>
<tr><td align="right" class="row_main"><b><?php echo $lang[expiration] ?>:</b></td><td align="left"> <?php echo $formatted_expiration ?></td></tr>
<?php
} // end if ($config[use_expiration] = "yes")
?>
<tr><td align="right" class="row_main"><b><?php echo $lang[last_modifed] ?>:</b></td><td align="left"> <?php echo $last_modified ?></td></tr>
<tr><td align="right" class="row_main"><b><?php echo $lang[admin_listings_editor_notes] ?>:</b><br><div class="small">(<?php echo $lang[admin_listings_editor_notes_note] ?>)</div></td><td align="left"> <textarea name="notes" rows="6" cols="40"><?php echo $edit_notes ?></textarea></td></tr>
<?php
echo '<script src="../date.js"></script>';
$sql = "SELECT f.field_name, db.field_value, f.field_type, f.field_caption, f.default_text, f.field_elements, f.required FROM " . $config[table_prefix] . "autoFormElements
f left join " . $config[table_prefix] . "autoDBElements db on db.field_name = f.field_name and db.listing_id = '$edit' AND db.user_id = '$userID' ORDER BY rank";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
while (!$recordSet->EOF)
{
$field_name = make_db_unsafe ($recordSet->fields[field_name]);
$field_value = make_db_unsafe ($recordSet->fields[field_value]);
$field_type = make_db_unsafe ($recordSet->fields[field_type]);
$field_caption = make_db_unsafe($recordSet->fields[field_caption]);
$default_text = make_db_unsafe($recordSet->fields[default_text]);
$field_elements = make_db_unsafe($recordSet->fields[field_elements]);
$required = make_db_unsafe($recordSet->fields[required]);
// pass the data to the function
renderExistingFormElement($field_type, $field_name, $field_value, $field_caption, $default_text, $required, $field_elements);
$recordSet->MoveNext();
}
echo "<tr><td colspan=\"2\" align=\"center\" class=\"row_main\">$lang[required_form_text]</td></tr>";
echo "<tr><td colspan=\"2\" align=\"center\" class=\"row_main\"><input type=\"submit\" value=\"$lang[update_button]\"></td></tr></table></form>";
?>
</td></tr></table>
<?php
} // end if $edit != ""
if ($edit == "")
{
echo "<h3>$lang[listings_editor]</h3>";
// show all a user's given listings
// grab the number of listings from the db
$sql = "SELECT ID, title, notes, expiration, active FROM " . $config[table_prefix] . "autoDB
WHERE user_ID = '$userID'";
$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC;
$recordSet = $conn->Execute($sql);
if ($recordSet === false) log_error($sql);
$num_rows = $recordSet->RecordCount();
next_prev($num_rows, $cur_page, ""); // put in the next/previous stuff
// build the string to select a certain number of listings per page
$limit_str = $cur_page * $config[listings_per_page];
$recordSet = $conn->SelectLimit($sql, $config[listings_per_page], $limit_str );
if ($recordSet === false)
{
log_error($sql);
}
$count = 0;
echo "<br><br>";
while (!$recordSet->EOF)
{
// alternate the colors
if ($count == 0)
{
$count = $count +1;
}
else
{
$count = 0;
}
//strip slashes so input appears correctly
$title = make_db_unsafe ($recordSet->fields[title]);
$notes = make_db_unsafe ($recordSet->fields[notes]);
$active = make_db_unsafe ($recordSet->fields[active]);
$formatted_expiration = $recordSet->UserTimeStamp($recordSet->fields[expiration],'D M j Y');
$ID = $recordSet->fields[ID];
?>
<table border="<?php echo $style[admin_listing_border] ?>" cellspacing="<?php echo $style[admin_listing_cellspacing] ?>" cellpadding="<?php echo $style[admin_listing_cellpadding] ?>" width="<?php echo $style[admin_table_width] ?>" class="form_main">
<?php
echo "<tr><td align=\"right\" width=\"200\" class=\"row1_$count\"><B><span class=\"adminListingLeft_$count\">$lang[admin_listings_editor_listing_number]: $ID</b></span></td><td align=\"center\" class=\"row2_$count\" width=\"310\"> <B> <a href=\"$PHP_SELF?edit=$ID\">$lang[admin_listings_editor_modify_listing]</a></b></td><td width=120 align=middle class=\"row2_$count\"><a href=\"$PHP_SELF?delete=$ID\" onClick=\"return confirmDelete()\">$lang[admin_listings_editor_delete_listing]</a></td></tr>";
echo "<tr><td align=\"center\" valign=\"middle\" class=\"row3_$count\">$title";
echo "</td><td class=\"row3_$count\">$notes";
if ($config[use_expiration] == "yes")
{
echo "<br><br><b>$lang[expiration]</b>: $formatted_expiration";
}
if ($active != "yes")
{
echo "<br><font color=\"red\">$lang[this_listing_is_not_active]</font></b>";
}
echo "</td>";
echo "<td class=\"row3_$count\">&nbsp;</td></tr></table><br><br>\r\n\r\n";
$recordSet->MoveNext();
} // end while
} // end if $edit == ""
?>
<P>
</P>
<?php
include("$config[template_path]/admin_bottom.html");
$conn->Close(); // close the db connection
?>
Cybrac
04-11-2004, 09:30 PM
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
<?php
//include("include/common.php");
global $config, $lang, $conn;
include("include/auto_main.php");
include("$config[template_path]/user_top.html");
if ($listingID == "")
{
echo "<a href=\"index.php\">$lang[perhaps_you_were_looking_something_else]</a>";
}
elseif ($listingID != "")
{
// first, check to see whether the listing is currently active
$show_listing = checkautoActive($listingID);
if ($show_listing == "yes")
{
?>
<!-- This Script opens a new window it is used by the mortgage calc. -->
<script type="text/javascript">
<!--
function open_window(url)
{
cwin = window.open(url,"attach","width=350,height=400,toolbar=no,resizable=yes");
}
-->
</script>
<table border="<?php echo $style['form_border'] ?>" cellspacing="<?php echo $style['form_cellspacing'] ?>" cellpadding="<?php echo $style['form_cellpadding'] ?>" width="<?php echo $style['admin_table_width'] ?>" class="form_main" align="center" >
<tr>
<td colspan="2" class="row_main">
<?php getMainautoData($listingID); ?>
<h4>
<?php renderautoTemplateAreaNoCaption('headline',$listin gID); ?>
</h4>
</td>
</tr>
<tr>
<?php
renderautoImages($listingID)
?>
<td class="row_main">
<table width="<?php echo $style['left_right_table_width'] ?>" cellpadding="<?php echo $style['left_right_table_cellpadding'] ?>" cellspacing="<?php echo $style['left_right_table_cellspacing'] ?>" border="<?php echo $style['left_right_table_border'] ?>">
<tr>
<td align="left" class="row_main" width="50%" valign="top">
<?php renderautoTemplateArea('top_left',$listingID); ?>
</td>
<td align="right" class="row_main" width="50%" valign="top">
<?php renderautoTemplateArea('top_right',$listingID); ?>
</td>
</tr>
</table>
<br>
<table width="98%">
<tr>
<td valign="top">
<?php renderautoTemplateArea('center',$listingID); ?>
<br><br>
</td>
</tr>
</table>
<table width="<?php echo $style['left_right_table_width'] ?>" cellpadding="<?php echo $style['left_right_table_cellpadding'] ?>" cellspacing="<?php echo $style['left_right_table_cellspacing'] ?>" border="<?php echo $style['left_right_table_border'] ?>">
<tr>
<td align="left" class="row_main" width="50%" valign="top">
<?php renderautoTemplateArea('feature1',$listingID); ?>
</td>
<td align="right" class="row_main" width="50%" valign="top">
<?php renderautoTemplateArea('feature2',$listingID); ?>
</td>
</tr>
</table>
<br><br><a href="javascript:open_window('autocalc.php?price=<? renderSingleListingItemRaw($listingID, "price") ?>')"><b>Loan Calculator</b></a>
<br><a href="members/addtoautofavorites.php?listingID=<? echo $listingID; ?>"><b>Add to favorites</b></a>
<br><a href="autoview.php?listingID=<?php echo $listingID ?>&amp;printer_friendly=yes"><b>Printer Friendly Version of This Page</b></a>
<br><a href="email_listing.php?listingID=<?php echo $listingID ?>"><b>Email This Listing to a Friend</b></a>
<table width="<?php echo $style['left_right_table_width'] ?>" cellpadding="<?php echo $style['left_right_table_cellpadding'] ?>" cellspacing="<?php echo $style['left_right_table_cellspacing'] ?>" border="<?php echo $style['left_right_table_border'] ?>">
<tr>
<td align="left" class="row_main" width="50%" valign="top">
<?php renderautoTemplateArea('bottom_left',$listingID); ?>
</td>
<td align="right" class="row_main" width="50%" valign="top">
<?php renderautoTemplateArea('bottom_right',$listingID); ?>
</td>
</tr>
</table>
<br><br>
<hr size="1" width="75%">
<?php renderUserInfoOnListingsPage($listingID) ?>
<br>
<?php getListingEmail($listingID) ?>
<br><br>
<hr size="1" width="75%">
<?php hitcount($listingID) ?>
</td>
</tr>
</table>
<?php
} // end if ($show_listing == "yes")
} // end elseif ($listingID != "")
include("$config[template_path]/user_bottom.html");
?>
Cybrac
04-11-2004, 09:32 PM
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
<?php
include("include/common.php");
include("$config[template_path]/user_top.html");
?>
<table border="<?php echo $style['admin_listing_border'] ?>" cellspacing="<?php echo $style['admin_listing_cellspacing'] ?>" cellpadding="<?php echo $style['admin_listing_cellpadding'] ?>" width="<?php echo $style['admin_table_width'] ?>" class="form_main">
<tr>
<td valign="top" align="center" width="100%">
<h3>Search Vehicles</h3>
<!--- refers to actual listings at the moment so comment to hide it. --->
<p><?php /*browse_all_listings()*/ ?></p>
<h4>Find the perfect Vehicle:<br>
UNDER CONSTRUCTION
</h4>
<form name="autosearch" action="./auto_browse.php" method="get">
<table>
<?php
// get the db object in scope
global $conn;
// Display The Agent Search
searchbox_agentdropdown();
// Get all searchable fields and display them
$sql = "select search_label, search_type, field_name from " . $config['table_prefix'] . "autoFormElements
where searchable = 1 order by rank";
if (!$rs = $conn->execute ($sql))
{
log_error($sql);
}
while (!$rs->EOF)
{
$searchfunction = 'searchbox_' . $rs->fields['search_type'];
$searchfunction($rs->fields['search_label'], $rs->fields['field_name']);
$rs->MoveNext();
}
?>
<tr>
<td align="center" colspan="2">
<input type="checkbox" name="imagesOnly" value="yes"> <b>Show only Vehicles with images</b>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<input type="submit">
</td>
</tr>
</table>
</form>
</td>
<td valign="top">
<!--- <?php renderFeaturedListingsVertical(4); ?> --->
</td>
</tr>
</table>
<?php
include("$config[template_path]/user_bottom.html");
?>
Cybrac
04-11-2004, 09:34 PM
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
<?php
include("include/common.php");
include("$config[template_path]/user_top.html");
global $conn, $lang, $config, $HTTP_GET_VARS;
global $sortby, $sorttype, $cur_page;
$debug_GET = True;
$guidestring = "";
$guidestring_with_sort = "";
// Save GET
foreach ($_GET as $k => $v)
{
if ($v && $k != 'cur_page' && $k != 'PHPSESSID' && $k != 'sortby')
{
if (is_array($v))
{
foreach ($v as $vitem)
{
$guidestring .= '&amp;' . urlencode("$k") . '[]=' . urlencode("$vitem");
}
}
else
{
$guidestring .= '&amp;' . urlencode("$k") . '=' . urlencode("$v");
}
}
}
// START BY SETTING UP THE TABLE OF ALL POSSIBLE LISTINGS
// while this may seem crazy at first, it actually is reasonably efficient, especially
// considering the limitations of mysql and the lack of subqueries.
// basically, it works by the process of elimination...
$sql = "drop table IF EXISTS " . $config['table_prefix'] . "temp";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
$sql = "CREATE TABLE " . $config['table_prefix'] . "temp SELECT " . $config['table_prefix'] . "autoDB
.ID, " . $config['table_prefix'] . "autoDB
.Title, " . $config['table_prefix'] . "autoDB
.user_ID, " . $config['table_prefix'] . "autoDBElements.field_name, " . $config['table_prefix'] . "autoDBElements.field_value FROM " . $config['table_prefix'] . "autoDB
, " . $config['table_prefix'] . "autoDBElements WHERE (" . $config['table_prefix'] . "autoDBElements.listing_id = " . $config['table_prefix'] . "autoDB
.ID) AND ";
if ($config['use_expiration'] == "yes")
{
$sql .= "(" . $config['table_prefix'] . "autoDB
.expiration > ".$conn->DBDate(time()).") AND ";
}
$sql .= "(" . $config['table_prefix'] . "autoDB
.active = 'yes')";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
// Create Index on temporary table to speed up searching
if ($config['manage_index_permissions'] == 'Yes')
{
//Host Supports Creating Indexes, so create some to speed up searching.
$sql = "create index idx_listingid on " . $config['table_prefix'] . "temp (ID)";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
$sql = "create index idx_autoname on " . $config['table_prefix'] . "temp (field_name(10))";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
}
reset ($HTTP_GET_VARS);
foreach ($_GET as $ElementIndexValue => $ElementContents) {
if ($ElementIndexValue == "sortby")
{
$guidestring_with_sort = "$ElementIndexValue=$ElementContents";
}
elseif ($ElementIndexValue == "sorttype")
{
$guidestring_with_sort = "$ElementIndexValue=$ElementContents&amp;";
}
elseif ($ElementIndexValue == "cur_page")
{
// do nothing
}
elseif ($ElementIndexValue == "PHPSESSID")
{
// do nothing
}
elseif ($ElementIndexValue == "user_ID")
{
$sql = "DELETE FROM " . $config['table_prefix'] . "temp WHERE User_ID <> $ElementContents";
$recordSet = $conn->Execute($sql);
}
elseif ($ElementIndexValue == "imagesOnly")
{
$guidestring .= "$ElementIndexValue=$ElementContents&amp;";
if ($ElementContents == "yes")
{
$whilecount = 0;
$delete_string = "DELETE FROM " . $config['table_prefix'] . "temp WHERE (1=1)";
// the 1=1 is a dumb sql trick to deal with the code below ... it works, but you can ignore it
$sql = "SELECT " . $config['table_prefix'] . "temp.ID, COUNT(" . $config['table_prefix'] . "autoImages.file_name) AS imageCount FROM " . $config['table_prefix'] . "autoImages," . $config['table_prefix'] . "temp WHERE (" . $config['table_prefix'] . "autoImages.listing_id = " . $config['table_prefix'] . "temp.ID) GROUP BY " . $config['table_prefix'] . "autoImages.listing_id";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
while (!$recordSet->EOF)
{
$whilecount = $whilecount + 1;
$listingID = $recordSet->fields[ID];
$imageCount = $recordSet->fields[imageCount];
$delete_string .= " AND ";
$delete_string .= "(ID <> $listingID)";
$recordSet->MoveNext();
} // end while
$recordSet = $conn->Execute($delete_string);
if ($recordSet === false)
{
log_error($delete_string);
}
}
} // end elseif ($ElementIndexValue == "imagesOnly")
elseif (is_array($ElementContents))
{
$sql_ElementIndexValue = make_db_safe($ElementIndexValue);
// Arrays can happen for two reasons: 1. multi options like zip code
// 2. multi options like home features. Check the db to see which
// type of field this is and process accordingly
$r = $conn->getOne("select search_type from " . $config['table_prefix'] . "autoFormElements
where field_name = ".$sql_ElementIndexValue);
if (($r == 'optionlist') || ($r == 'fcheckbox'))
{
$recordSet = $conn->Execute($sql);
// Delete all records that don't have any field name by this name
$sql = "select count(t2.field_name) as cnt, t1.id as id from " . $config['table_prefix'] . "temp t1 left join " . $config['table_prefix'] . "autoDBElements t2 on t1.id = t2.listing_id and t1.field_name = $sql_ElementIndexValue group by t1.id";
//$sql = " select count(t2.field_name) as cnt, t1.id as id from " . $config['table_prefix'] . "temp2 t1 left join " . $config['table_prefix'] . "listingsDBElements t2 on t1.id = t2.listing_id group by t1.id";
$res = $conn->Execute($sql);
while (!$res->EOF)
{
// Check for no field
if ($res->fields['cnt'] == 0)
{
$conn->execute("delete from " . $config['table_prefix'] . "temp where id = " . $res->fields['id']);
}
else
{
// for each value, delete those records that don't match it
$value = $conn->getOne("select field_value from " . $config['table_prefix'] . "temp where id = " . $res->fields['id'] . " and field_name = $sql_ElementIndexValue");
$delete = 1;
foreach ($ElementContents as $e)
{
if (!strstr($value, $e))
{
$conn->execute("delete from " . $config['table_prefix'] . "temp where id = " . $res->fields['id']);
}
}
}
$res->moveNext();
}
}
else
{
// first, we need to see if there's anything that'll meet the criteria
$whilecountTwo = 0;
$select_statement = "SELECT ID FROM " . $config['table_prefix'] . "temp WHERE ( (field_name=$sql_ElementIndexValue) AND ";
while (list($featureValue, $feature_item) = each ($ElementContents))
{
//$guidestring .= "&amp;".($ElementIndexValue)."%5B%5D=".urlencode($feature_item)."&amp;";
//$guidestring .= urlencode($featureValue)."%5B%5D=".urlencode($feature_item)."&";
$whilecountTwo = $whilecountTwo + 1;
if ($whilecountTwo > 1)
{
$select_statement .= " OR ";
}
$sql_feature_item = make_db_safe($feature_item);
$select_statement .= "(field_value = $sql_feature_item)";
}
$select_statement .= ")";
$recordSet = $conn->Execute($select_statement);
if ($recordSet === false)
{
log_error($select_statement);
}
$save_array = array();
while (!$recordSet->EOF)
{
$save_ID = $recordSet->fields[ID];
$save_array[] = "$save_ID";
$recordSet->MoveNext();
} // end while
$num_to_delete = $recordSet->RecordCount();
// now, delete everything that we don't want...
if ($num_to_delete > 0)
{
$delete_string = "DELETE FROM " . $config['table_prefix'] . "temp WHERE ";
while (list($IndexValue,$ElementContents) = each($save_array))
{
if ($IndexValue > 0)
{
$delete_string .= " AND ";
}
$sql_ElementContents = make_db_safe($ElementContents);
$delete_string .= "(ID <> $sql_ElementContents)";
} // end while
$recordSet = $conn->Execute($delete_string);
if ($recordSet === false)
{
log_error($delete_string);
}
} // ($num_to_delete > 0)
// if there's nothing that matches, delete all the other possibilities...
elseif ($num_to_delete == 0)
{
$delete_string = "DELETE FROM " . $config['table_prefix'] . "temp";
$recordSet = $conn->Execute($delete_string);
if ($recordSet === false)
{
log_error($delete_string);
}
} // end elseif ($num_to_delete = 0)
} // end optionlist check
} // end elseif (is_array($ElementContents))
else
{
// Don't process empty searches
if (!$ElementContents) continue;
$val = $ElementContents;
$ElementContents = make_db_safe($ElementContents);
// Check for min/max values
$l3 = substr($ElementIndexValue, strlen($ElementIndexValue) - 3);
if ($l3 == 'min' OR $l3 == 'max')
{
$col = strtok($ElementIndexValue, '-');
// Because mysql 3.x doesn't have cast(), we must retrieve all records then filter - yuck
$sql = "select id, field_value as v from " . $config['table_prefix'] . "temp where field_name = '$col'";
$rs = $conn->Execute($sql);
$del_id = array();
while (!$rs->EOF) {
if ($l3 == 'min' AND $val)
{
if ($rs->fields['v'] < $val)
{
$del_id[] = $rs->fields['id'];
}
}
if ($l3 == 'max' AND $val)
{
if ($rs->fields['v'] > $val)
{
$del_id[] = $rs->fields['id'];
}
}
$rs->MoveNext();
}
$sql = "delete from " . $config['table_prefix'] . "temp where id in (" . implode(',', $del_id) . ")";
if (sizeof($del_id))
{
$conn->execute($sql);
}
continue;
}
// Check for min/max dates
$l7 = substr($ElementIndexValue, strlen($ElementIndexValue) - 7);
if ($l7 == 'mindate' OR $l7 == 'maxdate')
{
if (($time = strtotime($val)) > 1)
{
$col = strtok($ElementIndexValue, '-');
// Because mysql 3.x doesn't have cast(), we must retrieve all records then filter - yuck
$sql = "select id, field_value as v from " . $config['table_prefix'] . "temp where field_name = '$col'";
$rs = $conn->Execute($sql);
$del_id = array();
while (!$rs->EOF)
{
$db_time = strtotime($rs->fields['v']);
if ($l7 == 'mindate' AND $val)
{
if ($db_time < $time)
{
$del_id[] = $rs->fields['id'];
}
}
if ($l7 == 'maxdate' AND $val)
{
if ($db_time > $time)
{
$del_id[] = $rs->fields['id'];
}
}
if ($db_time < 1 or !$val)
{
$del_id[] = $rs->fields['id'];
}
$rs->MoveNext();
}
$sql = "delete from " . $config['table_prefix'] . "temp where id in (" . implode(',', $del_id) . ")";
if (sizeof($del_id))
{
$conn->execute($sql);
}
continue;
}
}
if (!$ElementContents) continue;
$ElementIndexValue = make_db_safe($ElementIndexValue);
$select_statement = "SELECT ID FROM " . $config['table_prefix'] . "temp WHERE ( (field_name = $ElementIndexValue) AND (field_value = $ElementContents) )";
$recordSet = $conn->Execute($select_statement);
if ($recordSet === false)
{
log_error($select_statement);
}
$save_array = array();
while (!$recordSet->EOF)
{
$save_ID = $recordSet->fields[ID];
$save_array[] = "$save_ID";
$recordSet->MoveNext();
} // end while
$num_to_delete = $recordSet->RecordCount();
if ($num_to_delete > 0)
{
$delete_string = "DELETE FROM " . $config['table_prefix'] . "temp WHERE ";
while (list($IndexValue,$ElementContents) = each($save_array))
{
if ($IndexValue > 0)
{
$delete_string .= " AND ";
}
$delete_string .= "(ID <> $ElementContents)";
}
$recordSet = $conn->Execute($delete_string);
if ($recordSet === false)
{
log_error($delete_string);
}
} // end ($num_to_delete > 0)
elseif ($num_to_delete == 0)
{
$delete_string = "DELETE FROM " . $config['table_prefix'] . "temp";
$recordSet = $conn->Execute($delete_string);
if ($recordSet === false)
{
log_error($delete_string);
}
} // end elseif ($num_to_delete = 0)
} // end else
} // end while
// this is the main SQL that grabs the listings
// basic sort by title..
if ($sortby == "")
{
$sort_text = "";
$order_text = "ORDER BY ID DESC";
}
elseif ($sortby == "listingname")
{
$sort_text = "";
$order_text = "ORDER BY Title $sorttype";
}
// BEGIN NEW CODE
elseif ($sortby == "price")
{
$sortby = make_db_extra_safe($sortby);
$sort_text = "WHERE (field_name = $sortby)";
$order_text = "ORDER BY field_value +0 $sorttype";
}
// END NEW CODE
else
{
$sortby = make_db_extra_safe($sortby);
$sort_text = "WHERE (field_name = $sortby)";
$order_text = "ORDER BY field_value $sorttype";
}
if (($sorttype == "") || ($sorttype == "ASC"))
{
$sorttype = "DESC";
}
else
{
$sorttype = "ASC";
}
$guidestring_with_sort = $guidestring_with_sort.$guidestring;
$sql = "SELECT * from " . $config['table_prefix'] . "temp $sort_text GROUP BY ID $order_text";
$recordSet = $conn->Execute($sql);
if ($recordSet === false)
{
log_error($sql);
}
$num_rows = $recordSet->RecordCount();
if ($num_rows > 0)
{
//removeing the link to add as a save search becouse i'm lazy
//echo "<a href=\"members/savesearch.php?$guidestring\">$lang[save_this_search]</a><BR>";
next_prev($num_rows, $cur_page, $guidestring_with_sort); // put in the next/previous stuff
// build the string to select a certain number of listings per page
$limit_str = $cur_page * $config['listings_per_page'];
$resultRecordSet = $conn->SelectLimit($sql, $config['listings_per_page'], $limit_str );
if ($resultRecordSet === false)
{
log_error($sql);
}
?>
<table border="<?php echo $style['form_border'] ?>" cellspacing="<?php echo $style['form_cellspacing'] ?>" cellpadding="<?php echo $style['form_cellpadding'] ?>" width="<?php echo $style['admin_table_width'] ?>" class="form_main" align="center">
<tr>
<?php
if (($sortby == "listingname") ||($sortby == ""))
{
$sorttypestring = "sorttype=$sorttype&amp;";
}
?>
<?php
// grab browsable fields
$sql = "SELECT field_caption, field_name FROM " . $config['table_prefix'] . "autoFormElements
WHERE (display_on_browse = 'Yes') AND (field_type <> 'textarea') ORDER BY rank";
$recordSet = $conn->Execute($sql);
$num_columns = $recordSet->RecordCount();
// Add Title as a search link
$field_caption = "Title";
$field_name = "listingname";
if ($sortby != $field_name)
{
$sorttypestring = "";
}
else
{
$sorttypestring = "sorttype=$sorttype&amp;";
}
echo "<td align=\"center\"><b><a href=\"$PHP_SELF?sortby=$field_name&amp;$sorttypestring$g uidestring\">$field_caption</a></b></td>";
while (!$recordSet->EOF)
{
$field_caption = make_db_unsafe ($recordSet->fields['field_caption']);
$field_name = make_db_unsafe ($recordSet->fields['field_name']);
if ($sortby != "'$field_name'")
{
$sorttypestring = "";
}
else
{
$sorttypestring = "sorttype=$sorttype&amp;";
}
echo "<td align=\"center\"><b><a href=\"$PHP_SELF?sortby=$field_name&amp;$sorttypestring$g uidestring\">$field_caption</a></b></td>";
$recordSet->MoveNext();
} // end while
$num_columns = $num_columns + 1; // add one for the image
?>
</tr>
<tr>
<td colspan="<?php echo $num_columns ?>">
<hr>
</td>
</tr>
<?php
$count = 0;
while (!$resultRecordSet->EOF)
{
// alternate the colors
if ($count == 0)
{
$count = $count +1;
}
else
{
$count = 0;
}
$Title = make_db_unsafe ($resultRecordSet->fields['Title']);
$current_ID = $resultRecordSet->fields['ID'];
echo "<tr><td align=\"left\" class=\"search_row_$count\" colspan=\"$num_columns\"><b><a href=\"autoview.php?listingID=$current_ID\">$Title</a></b></td></tr>";
echo "<tr>";
// grab the listing's image
$sql2 = "SELECT thumb_file_name FROM " . $config['table_prefix'] . "autoImages WHERE listing_id = $current_ID ORDER BY rank";
$recordSet2 = $conn->SelectLimit($sql2, 1, 0);
if ($recordSet2 === false)
{
log_error($sql2);
}
$num_images = $recordSet2->RecordCount();
if ($num_images == 0)
{
if ($config[show_no_photo] == "yes")
{
//echo "<td class=\"search_row_$count\" align=\"center\"><img src=\"images/nophoto.gif\" border=\"1\" alt=\"no photo\"></td>";
echo "<td class=\"search_row_$count\" align=\"center\"><a href=\"autoview.php?listingID=$current_ID\"><img src=\"images/nophoto.gif\" border=\"1\" alt=\"no photo\"></a></td>";
}
else
{
echo "<td class=\"search_row_$count\">&nbsp;</td>";
}
}
while (!$recordSet2->EOF)
{
$thumb_file_name = make_db_unsafe ($recordSet2->fields['thumb_file_name']);
if ($thumb_file_name != "")
{
// gotta grab the image size
$imagedata = GetImageSize("$config[auto_upload_path]/$thumb_file_name");
$imagewidth = $imagedata[0];
$imageheight = $imagedata[1];
$shrinkage = $config['thumbnail_width']/$imagewidth;
$displaywidth = $imagewidth * $shrinkage;
$displayheight = $imageheight * $shrinkage;
echo "<td class=\"search_row_$count\" align=\"center\"><a href=\"autoview.php?listingID=$current_ID\">";
echo "<img src=\"$config[auto_view_images_path]/$thumb_file_name\" height=\"$displayheight\" width=\"$displaywidth\" alt=\"$thumb_file_name\"></a></td>";
} // end if ($thumb_file_name != "")
$recordSet2->MoveNext();
} // end while
// grab the rest of the listing's data
$sql2 = "SELECT " . $config['table_prefix'] . "autoDBElements.field_value, " . $config['table_prefix'] . "autoFormElements
.field_type FROM " . $config['table_prefix'] . "autoDBElements, " . $config['table_prefix'] . "autoFormElements
WHERE ((" . $config['table_prefix'] . "autoDBElements.listing_id = $current_ID) AND (" . $config['table_prefix'] . "autoFormElements
.display_on_browse = 'Yes') AND (" . $config['table_prefix'] . "autoFormElements
.field_type <> 'textarea') AND (" . $config['table_prefix'] . "autoDBElements.field_name = " . $config['table_prefix'] . "autoFormElements
.field_name)) ORDER BY " . $config['table_prefix'] . "autoFormElements
.rank";
$recordSet2 = $conn->Execute($sql2);
if ($recordSet2 === false)
{
log_error($sql2);
}
while (!$recordSet2->EOF)
{
$field_value = make_db_unsafe ($recordSet2->fields['field_value']);
$field_type = make_db_unsafe ($recordSet2->fields['field_type']);
echo "<td align=\"center\" class=\"search_row_$count\">";
if ($field_type == "select-multiple" OR $field_type == "option" OR $field_type == "checkbox")
{
// handle field types with multiple options
$feature_index_list = explode("||", $field_value);
while (list($feature_list_Value, $feature_list_item) = each ($feature_index_list))
{
echo "$feature_list_item<br>";
} // end while
} // end if field type is a multiple type
elseif ($field_type == "price")
{
//$field_value = ereg_replace('[^0-9]', '', $field_value);
//echo "$config[money_sign]".number_format($field_value, 2, '.', ',');
$money_amount = international_num_format($field_value);
echo money_formats($money_amount);
} // end elseif
elseif ($field_type == "number")
{
echo international_num_format($field_value);
} // end elseif
elseif ($field_type == "url")
{
echo "<a href=\"$field_value\" target=\"_new\">$field_value</a>";
}
elseif ($field_type == "email")
{
echo "<a href=\"mailto:$field_value\">$field_value</a>";
}
else
{
echo "$field_value";
} // end else
echo "</td>";
$recordSet2->MoveNext();
} // end while
echo "</tr>";
// deal with text areas, like descriptions
$sql2 = "SELECT " . $config['table_prefix'] . "autoDBElements.field_value, " . $config['table_prefix'] . "autoFormElements
.field_type FROM " . $config['table_prefix'] . "autoDBElements, " . $config['table_prefix'] . "autoFormElements
WHERE ((" . $config['table_prefix'] . "autoDBElements.listing_id = $current_ID) AND (" . $config['table_prefix'] . "autoFormElements
.display_on_browse = 'Yes') AND (" . $config['table_prefix'] . "autoFormElements
.field_type = 'textarea') AND (" . $config['table_prefix'] . "autoDBElements.field_name = " . $config['table_prefix'] . "autoFormElements
.field_name)) ORDER BY " . $config['table_prefix'] . "autoFormElements
.rank";
$recordSet2 = $conn->Execute($sql2);
if ($recordSet2 === false)
{
log_error($sql2);
}
while (!$recordSet2->EOF)
{
$field_value = make_db_unsafe ($recordSet2->fields[field_value]);
$field_caption = make_db_unsafe ($recordSet2->fields[field_caption]);
echo "<tr><td colspan=\"$num_columns\" class=\"search_row_$count\">$field_value</td></tr>";
$recordSet2->MoveNext();
} // end while
$resultRecordSet->MoveNext();
} // end while
?>
</table>
<?php
} // end if ($num_rows > 0)
else
{
echo "<p>$lang[search_no_results]</p>";
}
include("$config[template_path]/user_bottom.html");
?>
Cybrac
04-11-2004, 09:36 PM
If this helps or you figure out what is cause in the error post it here so that if any one want to use this mod they can.
Jason
FILE CHANGES ARE NOT FOR CURRENT PACKAGE:
There is no difference in the files edit_my_auto.php and autosearch.php
However when I use your autoview.php it returns errors.
Your code:
<?php
//include("include/common.php");
global $config, $lang, $conn;
include("include/auto_main.php");
Original:
<?php
include("include/common.php");
global $config, $lang, $conn;
MJ
Cybrac
04-11-2004, 10:46 PM
I am getting an error when adding a pic but the rest look like it is working. Can you post the errors you are getting.
Jason
I have changed many of the files which are just causing more errors.
Is it possible for you to upload a zip file of all your files for the mod? Then I can test it out here.
Thanks,
MJ
Cybrac
04-11-2004, 11:10 PM
As soon as i get some time
Jason
pbflash
05-20-2004, 01:06 PM
Does anyone have this mod working? I could really use it.
pbflash
05-20-2004, 03:02 PM
Never mind. I got it working (except for 'favorite autos' but I don't need that anyway. I have attached the files if anyone is interested.
Attached files may not be compatible with current version:
RealtyOne
06-04-2004, 06:45 AM
Main Mod Updated :
Note this was done by request :
I did not know that pbflash had rebuilt the code which was a shame as it could of saved me some time :(
The main thread for the original package has been moved due to the many code entries in this thread. (i could delete them but maybe they are usefull to some people)
new thread is @ http://www.open-realty.org/phpBB2/viewtopic.php?t=3643
kentpyper
07-13-2004, 01:49 AM
This link does not work for me.... HELP
voske
07-25-2004, 06:41 PM
I need this script but for the current version. Can somebody help me?
RealtyOne
07-25-2004, 09:26 PM
http://www.open-realty.org/support/showthread.php?t=2742
Powered by vBulletin® Version 4.1.5 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.