function render_templated_files($ID, $type, $template) { global $conn, $lang, $config, $db_type; //Load the Core Template class and the Misc Class require_once $config['basepath'] . '/include/class/template/core.inc.php'; $page = new page_user(); require_once $config['basepath'] . '/include/misc.inc.php'; $misc = new misc(); $folderid = $ID; $ID = $misc->make_db_extra_safe($ID); //Declare an empty display variable to hold all output from function. $display = ''; if ($type == 'listing') { $file_upload_path = $config['listings_file_upload_path']; $file_view_path = $config['listings_view_file_path']; $sqltype = 'listings'; } else { $file_upload_path = $config['users_file_upload_path']; $file_view_path = $config['users_view_file_path']; $sqltype = 'user'; } $sql = "SELECT " . $type . "sfiles_id, " . $type . "sfiles_caption, " . $type . "sfiles_description, " . $type . "sfiles_file_name FROM " . $config['table_prefix'] . "" . $type . "sfiles WHERE (" . $sqltype . "db_id = {$ID}) ORDER BY " . $type . "sfiles_rank"; $recordSet = $conn->Execute($sql); if ($recordSet === false) { $misc->log_error($sql); } $num_files = $recordSet->RecordCount(); if ($num_files >= 1) { //Load the File Template specified by the calling tag unless a template was specified in the calling template tag. $page->load_page($config['template_path'] . '/files_' . $type . '_' . $template . '.html'); // Determine if the template uses rows. // First item in array is the row conent second item is the number of block per block row $file_template_row = $page->get_template_section_row('file_block_row'); if (is_array($file_template_row)) { $row = $file_template_row[0]; $col_count = $file_template_row[1]; $uses_rows = true; $x = 1; //Create an empty array to hold the row contents $new_row_data = array(); } else { $uses_rows = false; } $file_template_section = ''; while (!$recordSet->EOF) { if ($uses_rows == true && $x > $col_count) { //We are at then end of a row. Save the template section as a new row. $new_row_data[] = $page->replace_template_section('file_block', $file_template_section, $row); //$new_row_data[] = $file_template_section; $file_template_section = $page->get_template_section('file_block'); $x = 1; } else { $file_template_section .= $page->get_template_section('file_block'); } $file_caption = $misc->make_db_unsafe($recordSet->fields[$type . 'sfiles_caption']); $file_filename = $misc->make_db_unsafe($recordSet->fields[$type . 'sfiles_file_name']); $file_id = $misc->make_db_unsafe($recordSet->fields[$type . 'sfiles_id']); $file_url = $file_view_path . '/' . $folderid . '/' . $file_filename; $file_download_url = 'index.php?action=create_download&ID=' . $folderid . '&file_id=' . $file_id . '&type=' . $type; $file_description = urldecode($misc->make_db_unsafe($recordSet->fields[$type . 'sfiles_description'])); $file_icon_height = $config["file_icon_height"]; $file_icon_width = $config["file_icon_width"]; if ($file_filename != "" && file_exists("{$file_upload_path}/{$folderid}/{$file_filename}")) { $ext = substr(strrchr($file_filename, '.'), 1); $filesize = filesize($file_upload_path . '/' . $folderid . '/' . $file_filename); if ($caption != '') { $alt = $caption; } else { $alt = $thumb_file_name; } $iconpath = $config["file_icons_path"] . '/' . $ext . '.png'; if (file_exists($iconpath)) { $file_icon = $config["listings_view_file_icons_path"] . '/' . $ext . '.png'; } else { $file_icon = $config["listings_view_file_icons_path"] . '/default.png'; } $file_filesize = $this->bytesize($filesize); } $file_template_section = $page->parse_template_section($file_template_section, 'file_url', $file_url); $file_template_section = $page->parse_template_section($file_template_section, 'file_download_url', $file_download_url); $file_template_section = $page->parse_template_section($file_template_section, 'file_filename', $file_filename); $file_template_section = $page->parse_template_section($file_template_section, 'file_caption', $file_caption); $file_template_section = $page->parse_template_section($file_template_section, 'file_description', $file_description); $file_template_section = $page->parse_template_section($file_template_section, 'file_icon', $file_icon); $file_template_section = $page->parse_template_section($file_template_section, 'file_icon_height', $file_icon_height); $file_template_section = $page->parse_template_section($file_template_section, 'file_icon_width', $file_icon_width); $file_template_section = $page->parse_template_section($file_template_section, 'file_filesize', $file_filesize); $recordSet->MoveNext(); if ($uses_rows == true) { $x++; } } //END while (!$recordSet->EOF) if ($uses_rows == true) { $file_template_section = $page->cleanup_template_block('file', $file_template_section); $new_row_data[] = $page->replace_template_section('file_block', $file_template_section, $row); $replace_row = ''; foreach ($new_row_data as $rows) { $replace_row .= $rows; } $page->replace_template_section_row('file_block_row', $replace_row); } else { $page->replace_template_section('file_block', $file_template_section); } $page->replace_permission_tags(); $display .= $page->return_page(); } return $display; }
function renderFeaturedListings($num_of_listings = 0, $template_name = '', $random = FALSE, $pclass = '', $latest = FALSE) { global $conn, $lang, $config, $db_type, $current_ID; //Load the Core Template class and the Misc Class require_once $config['basepath'] . '/include/class/template/core.inc.php'; $page = new page_user(); require_once $config['basepath'] . '/include/misc.inc.php'; $misc = new misc(); //Declare an empty display variable to hold all output from function. $display = ''; //If We have a $current_ID save it $old_current_ID = ''; if ($current_ID != '') { $old_current_ID = $current_ID; } //Get the number of listing to display by default, unless user specified an override in the template file. if ($num_of_listings == 0) { $num_of_listings = $config['num_featured_listings']; } //Load a Random set of featured listings if ($db_type == 'mysql') { $rand = 'RAND()'; } else { $rand = 'RANDOM()'; } if ($latest == TRUE) { $rand = 'listingsdb_id DESC'; } if ($random == TRUE || $latest == TRUE) { $sql_rand = ''; } else { $sql_rand = "(listingsdb_featured = 'yes') AND"; } if ($config['use_expiration'] === "1") { if ($pclass != '') { $sql = "SELECT " . $config['table_prefix'] . "listingsdb.listingsdb_id, listingsdb_title FROM " . $config['table_prefix'] . "listingsdb," . $config['table_prefix_no_lang'] . "classlistingsdb WHERe {$sql_rand} (listingsdb_active = 'yes') AND (listingsdb_expiration > " . $conn->DBDate(time()) . ") AND (" . $config['table_prefix'] . "listingsdb.listingsdb_id = " . $config['table_prefix_no_lang'] . "classlistingsdb.listingsdb_id) AND class_id = " . $pclass . " ORDER BY {$rand}"; } else { $sql = "SELECT " . $config['table_prefix'] . "listingsdb.listingsdb_id, listingsdb_title FROM " . $config['table_prefix'] . "listingsdb WHERE {$sql_rand} (listingsdb_active = 'yes') AND (listingsdb_expiration > " . $conn->DBDate(time()) . ") ORDER BY {$rand}"; } } else { if ($pclass != '') { $sql = "SELECT " . $config['table_prefix'] . "listingsdb.listingsdb_id, listingsdb_title FROM " . $config['table_prefix'] . "listingsdb," . $config['table_prefix_no_lang'] . "classlistingsdb WHERE {$sql_rand} (listingsdb_active = 'yes') AND (" . $config['table_prefix'] . "listingsdb.listingsdb_id = " . $config['table_prefix_no_lang'] . "classlistingsdb.listingsdb_id) AND class_id = " . $pclass . " ORDER BY {$rand}"; } else { $sql = "SELECT " . $config['table_prefix'] . "listingsdb.listingsdb_id, listingsdb_title FROM " . $config['table_prefix'] . "listingsdb WHERE {$sql_rand} (listingsdb_active = 'yes') ORDER BY {$rand}"; } } $recordSet = $conn->SelectLimit($sql, $num_of_listings, 0); if ($recordSet === false) { $misc->log_error($sql); } //Find out how many listing were returned $returned_num_listings = $recordSet->RecordCount(); if ($returned_num_listings >= 1) { //Load the Featured Listing Template specified in the Site Config unless a template was specified in the calling template tag. if ($template_name == '') { $page->load_page($config['template_path'] . '/' . $config['featured_listing_template']); } else { if ($random == TRUE) { $page->load_page($config['template_path'] . '/random_listing_' . $template_name . '.html'); } elseif ($latest == TRUE) { $page->load_page($config['template_path'] . '/latest_listing_' . $template_name . '.html'); } else { $page->load_page($config['template_path'] . '/featured_listing_' . $template_name . '.html'); } } // Determine if the template uses rows. // First item in array is the row conent second item is the number of block per block row $featured_template_row = $page->get_template_section_row('featured_listing_block_row'); if (is_array($featured_template_row)) { $row = $featured_template_row[0]; $col_count = $featured_template_row[1]; $user_rows = true; $x = 1; //Create an empty array to hold the row conents $new_row_data = array(); } else { $user_rows = false; } $featured_template_section = ''; while (!$recordSet->EOF) { if ($user_rows == true && $x > $col_count) { //We are at then end of a row. Save the template section as a new row. $new_row_data[] = $page->replace_template_section('featured_listing_block', $featured_template_section, $row); //$new_row_data[] = $featured_template_section; $featured_template_section = $page->get_template_section('featured_listing_block'); $x = 1; } else { $featured_template_section .= $page->get_template_section('featured_listing_block'); } $listing_title = $misc->make_db_unsafe($recordSet->fields['listingsdb_title']); $current_ID = $misc->make_db_unsafe($recordSet->fields['listingsdb_id']); if ($config['url_style'] == '1') { $featured_url = 'index.php?action=listingview&listingID=' . $current_ID; } else { $url_title = str_replace("/", "", $listing_title); $url_title = strtolower(str_replace(" ", $config['seo_url_seperator'], $url_title)); $featured_url = 'listing-' . misc::urlencode_to_sef($url_title) . '-' . $current_ID . '.html'; } $featured_template_section = $page->replace_listing_field_tags($current_ID, $featured_template_section); $featured_template_section = $page->replace_listing_field_tags($current_ID, $featured_template_section); $featured_template_section = $page->parse_template_section($featured_template_section, 'featured_url', $featured_url); $featured_template_section = $page->parse_template_section($featured_template_section, 'listingid', $current_ID); // Start {isfavorite} featured template section tag if (isset($_SESSION['userID'])) { $userID = $misc->make_db_safe($_SESSION['userID']); $sql1 = "SELECT listingsdb_id FROM " . $config['table_prefix'] . "userfavoritelistings WHERE ((listingsdb_id = {$current_ID}) AND (userdb_id={$userID}))"; $recordSet1 = $conn->Execute($sql1); if ($recordSet1 === false) { $misc->log_error($sql1); } $favorite_listingsdb_id = $misc->make_db_unsafe($recordSet1->fields['listingsdb_id']); if ($favorite_listingsdb_id !== $current_ID) { $isfavorite = "no"; $featured_template_section = $page->parse_template_section($featured_template_section, 'isfavorite', $isfavorite); } else { $isfavorite = "yes"; $featured_template_section = $page->parse_template_section($featured_template_section, 'isfavorite', $isfavorite); } } // End {isfavorite} featured template section tag // Setup Image Tags $sql2 = "SELECT listingsimages_thumb_file_name,listingsimages_file_name FROM " . $config['table_prefix'] . "listingsimages WHERE (listingsdb_id = {$current_ID}) ORDER BY listingsimages_rank"; $recordSet2 = $conn->SelectLimit($sql2, 1, 0); if ($recordSet2 === false) { $misc->log_error($sql2); } if ($recordSet2->RecordCount() > 0) { $thumb_file_name = $misc->make_db_unsafe($recordSet2->fields['listingsimages_thumb_file_name']); $file_name = $misc->make_db_unsafe($recordSet2->fields['listingsimages_file_name']); if ($thumb_file_name != "" && file_exists("{$config['listings_upload_path']}/{$thumb_file_name}")) { // gotta grab the thumbnail image size $imagedata = GetImageSize("{$config['listings_upload_path']}/{$thumb_file_name}"); $imagewidth = $imagedata[0]; $imageheight = $imagedata[1]; $shrinkage = $config['thumbnail_width'] / $imagewidth; $featured_thumb_width = $imagewidth * $shrinkage; $featured_thumb_height = $imageheight * $shrinkage; $featured_thumb_src = $config['listings_view_images_path'] . '/' . $thumb_file_name; // gotta grab the thumbnail image size $imagedata = GetImageSize("{$config['listings_upload_path']}/{$file_name}"); $imagewidth = $imagedata[0]; $imageheight = $imagedata[1]; $featured_width = $imagewidth; $featured_height = $imageheight; $featured_src = $config['listings_view_images_path'] . '/' . $file_name; } } else { if ($config['show_no_photo'] == 1) { $imagedata = GetImageSize("images/nophoto.gif"); $imagewidth = $imagedata[0]; $imageheight = $imagedata[1]; $shrinkage = $config['thumbnail_width'] / $imagewidth; $featured_thumb_width = $imagewidth * $shrinkage; $featured_thumb_height = $imageheight * $shrinkage; $featured_thumb_src = "images/nophoto.gif"; $featured_width = $featured_thumb_width; $featured_height = $featured_thumb_height; $featured_src = "images/nophoto.gif"; } else { $featured_thumb_width = ''; $featured_thumb_height = ''; $featured_thumb_src = ''; $featured_width = ''; $featured_height = ''; $featured_src = ''; } } if (!empty($featured_thumb_src)) { $featured_template_section = $page->parse_template_section($featured_template_section, 'featured_thumb_src', $featured_thumb_src); $featured_template_section = $page->parse_template_section($featured_template_section, 'featured_thumb_height', $featured_thumb_height); $featured_template_section = $page->parse_template_section($featured_template_section, 'featured_thumb_width', $featured_thumb_width); $featured_template_section = $page->cleanup_template_block('featured_img', $featured_template_section); } else { $featured_template_section = $page->remove_template_block('featured_img', $featured_template_section); } if (!empty($featured_src)) { $featured_template_section = $page->parse_template_section($featured_template_section, 'featured_large_src', $featured_src); $featured_template_section = $page->parse_template_section($featured_template_section, 'featured_large_height', $featured_height); $featured_template_section = $page->parse_template_section($featured_template_section, 'featured_large_width', $featured_width); $featured_template_section = $page->cleanup_template_block('featured_img_large', $featured_template_section); } else { $featured_template_section = $page->remove_template_block('featured_img_large', $featured_template_section); } $recordSet->MoveNext(); if ($user_rows == true) { $x++; } } if ($user_rows == true) { $featured_template_section = $page->cleanup_template_block('featured_listing', $featured_template_section); $new_row_data[] = $page->replace_template_section('featured_listing_block', $featured_template_section, $row); $replace_row = ''; foreach ($new_row_data as $rows) { $replace_row .= $rows; } $page->replace_template_section_row('featured_listing_block_row', $replace_row); } else { $page->replace_template_section('featured_listing_block', $featured_template_section); } $page->replace_permission_tags(); $page->auto_replace_tags(); $display .= $page->return_page(); } $current_ID = ''; if ($old_current_ID != '') { $current_ID = $old_current_ID; } return $display; }
function renderNotifyListings($listingIDArray, $search_title, $user_name, $email) { global $conn, $lang, $config, $db_type, $current_ID; //Load the Core Template class and the Misc Class require_once $config['basepath'] . '/include/class/template/core.inc.php'; $page = new page_user(); require_once $config['basepath'] . '/include/misc.inc.php'; $misc = new misc(); require_once $config['basepath'] . '/include/listing.inc.php'; $listingclass = new listing_pages(); //Declare an empty display variable to hold all output from function. $display = ''; //If We have a $current_ID save it $old_current_ID = ''; if ($current_ID != '') { $old_current_ID = $current_ID; } //Load the Notify Listing Template specified in the Site Config $page->load_page($config['template_path'] . '/' . $config['notify_listings_template']); // Determine if the template uses rows. // First item in array is the row conent second item is the number of block per block row $notify_template_row = $page->get_template_section_row('notify_listing_block_row'); if (is_array($notify_template_row)) { $row = $notify_template_row[0]; $col_count = $notify_template_row[1]; $user_rows = true; $x = 1; //Create an empty array to hold the row conents $new_row_data = array(); } else { $user_rows = false; } $notify_template_section = ''; foreach ($listingIDArray as $current_ID) { if ($user_rows == true && $x > $col_count) { //We are at then end of a row. Save the template section as a new row. $new_row_data[] = $page->replace_template_section('notify_listing_block', $notify_template_section, $row); //$new_row_data[] = $notify_template_section; $notify_template_section = $page->get_template_section('notify_listing_block'); $x = 1; } else { $notify_template_section .= $page->get_template_section('notify_listing_block'); } $listing_title = $listingclass->get_title($current_ID); if ($config['url_style'] == '1') { $notify_url = $config['baseurl'] . '/index.php?action=listingview&listingID=' . $current_ID; // ##### } else { $url_title = str_replace("/", "", $listing_title); $url_title = strtolower(str_replace(" ", $config['seo_url_seperator'], $url_title)); $notify_url = $config['baseurl'] . '/listing-' . misc::urlencode_to_sef($url_title) . '-' . $current_ID . '.html'; // ##### } $notify_template_section = $page->replace_listing_field_tags($current_ID, $notify_template_section); $notify_template_section = $page->replace_listing_field_tags($current_ID, $notify_template_section); $notify_template_section = $page->parse_template_section($notify_template_section, 'notify_url', $notify_url); $notify_template_section = $page->parse_template_section($notify_template_section, 'listingid', $current_ID); // Setup Image Tags $sql2 = "SELECT listingsimages_thumb_file_name,listingsimages_file_name\n\t\t\t\t\tFROM " . $config['table_prefix'] . "listingsimages\n\t\t\t\t\tWHERE (listingsdb_id = {$current_ID})\n\t\t\t\t\tORDER BY listingsimages_rank"; $recordSet2 = $conn->SelectLimit($sql2, 1, 0); if ($recordSet2 === false) { $misc->log_error($sql2); } if ($recordSet2->RecordCount() > 0) { $thumb_file_name = $misc->make_db_unsafe($recordSet2->fields['listingsimages_thumb_file_name']); $file_name = $misc->make_db_unsafe($recordSet2->fields['listingsimages_file_name']); if ($thumb_file_name != "" && file_exists("{$config['listings_upload_path']}/{$thumb_file_name}")) { // gotta grab the thumbnail image size $imagedata = GetImageSize("{$config['listings_upload_path']}/{$thumb_file_name}"); $imagewidth = $imagedata[0]; $imageheight = $imagedata[1]; $shrinkage = $config['thumbnail_width'] / $imagewidth; $notify_thumb_width = $imagewidth * $shrinkage; $notify_thumb_height = $imageheight * $shrinkage; $notify_thumb_src = $config['listings_view_images_path'] . '/' . $thumb_file_name; // gotta grab the thumbnail image size $imagedata = GetImageSize("{$config['listings_upload_path']}/{$file_name}"); $imagewidth = $imagedata[0]; $imageheight = $imagedata[1]; $notify_width = $imagewidth; $notify_height = $imageheight; $notify_src = $config['listings_view_images_path'] . '/' . $file_name; } } else { if ($config['show_no_photo'] == 1) { $imagedata = GetImageSize($config['basepath'] . "/images/nophoto.gif"); $imagewidth = $imagedata[0]; $imageheight = $imagedata[1]; $shrinkage = $config['thumbnail_width'] / $imagewidth; $notify_thumb_width = $imagewidth * $shrinkage; $notify_thumb_height = $imageheight * $shrinkage; $notify_thumb_src = $config['baseurl'] . '/images/nophoto.gif'; $notify_width = $notify_thumb_width; $notify_height = $notify_thumb_height; $notify_src = $config['baseurl'] . '/images/nophoto.gif'; } else { $notify_thumb_width = ''; $notify_thumb_height = ''; $notify_thumb_src = ''; $notify_width = ''; $notify_height = ''; $notify_src = ''; } } if (!empty($notify_thumb_src)) { $notify_template_section = $page->parse_template_section($notify_template_section, 'notify_thumb_src', $notify_thumb_src); $notify_template_section = $page->parse_template_section($notify_template_section, 'notify_thumb_height', $notify_thumb_height); $notify_template_section = $page->parse_template_section($notify_template_section, 'notify_thumb_width', $notify_thumb_width); $notify_template_section = $page->cleanup_template_block('notify_img', $notify_template_section); } else { $notify_template_section = $page->remove_template_block('notify_img', $notify_template_section); } if (!empty($notify_src)) { $notify_template_section = $page->parse_template_section($notify_template_section, 'notify_large_src', $notify_src); $notify_template_section = $page->parse_template_section($notify_template_section, 'notify_large_height', $notify_height); $notify_template_section = $page->parse_template_section($notify_template_section, 'notify_large_width', $notify_width); $notify_template_section = $page->cleanup_template_block('notify_img_large', $notify_template_section); } else { $notify_template_section = $page->remove_template_block('notify_img_large', $notify_template_section); } if ($user_rows == true) { $x++; } } if ($user_rows == true) { $notify_template_section = $page->cleanup_template_block('notify_listing', $notify_template_section); $new_row_data[] = $page->replace_template_section('notify_listing_block', $notify_template_section, $row); $replace_row = ''; foreach ($new_row_data as $rows) { $replace_row .= $rows; } $page->replace_template_section_row('notify_listing_block_row', $replace_row); } else { $page->replace_template_section('notify_listing_block', $notify_template_section); } $page->replace_permission_tags(); $page->replace_urls(); $page->auto_replace_tags(); $page->replace_lang_template_tags(); $display .= $page->return_page(); $current_ID = ''; if ($old_current_ID != '') { $current_ID = $old_current_ID; } return $display; }