function Search($firstcount, $displaypg) { global $cache_types; uses("space", "industry", "area"); $space = new Space(); $area = new Areas(); $industry = new Industries(); $cache_options = cache_read('typeoption'); $area_s = $space->array_multi2single($area->getCacheArea()); $industry_s = $space->array_multi2single($area->getCacheArea()); $result = $this->findAll("*,name AS title,content AS digest", null, null, $this->orderby, $firstcount, $displaypg); while (list($keys, $values) = each($result)) { $result[$keys]['typename'] = $cache_types['productsort'][$values['sort_id']]; $result[$keys]['thumb'] = pb_get_attachmenturl($values['picture'], '', 'small'); $result[$keys]['pubdate'] = df($values['begin_time']); if (!empty($result[$keys]['area_id'])) { $r1 = $area_s[$result[$keys]['area_id']]; } if (!empty($result[$keys]['cache_companyname'])) { $r2 = "<a href='" . $space->rewrite($result[$keys]['cache_companyname'], $result[$keys]['company_id']) . "'>" . $result[$keys]['cache_companyname'] . "</a>"; } if (!empty($r1) || !empty($r2)) { $result[$keys]['extra'] = implode(" - ", array($r1, $r2)); } $result[$keys]['url'] = $this->getPermaLink($values['id']); } return $result; }
setvar("ProductTypes", $product_types); $group_info = array(); $group_info['year'] = $time_tmp; if (!empty($member->info['membergroup_id']['name'])) { $group_info['name'] = $_PB_CACHE['membergroup'][$member->info['membergroup_id']]['name']; } else { $group_info['name'] = L("undefined_image", "tpl"); } if (!empty($member->info['membergroup_id']['avatar'])) { $group_info['image'] = $absolute_uri . "images/group/" . $_PB_CACHE['membergroup'][$member->info['membergroup_id']]['avatar']; } else { $group_info['image'] = $absolute_uri . "images/group/formal.gif"; } setvar("GROUP", $group_info); //for old version if (isset($member->info['membergroup_id']['name'])) { setvar("GroupName", $_PB_CACHE['membergroup'][$member->info['membergroup_id']]['name']); } if (isset($member->info['membergroup_id']['avatar'])) { setvar("GroupImage", $absolute_uri . "images/group/" . $_PB_CACHE['membergroup'][$member->info['membergroup_id']]['avatar']); } //:~ setvar("Menus", $space->getMenu()); setvar("Links", $space->getLinks()); $space_url = $space->rewrite($company->info['cache_spacename'], $company->info['id']); setvar("space_url", $space_url); setvar("SpaceUrl", $absolute_uri . $skin_dir); setvar("BASEMAP", $absolute_uri . $skin_dir); if (!empty($arrTemplate)) { $smarty->assign($arrTemplate); }
/** * only use data1 col for cache,data2 is disabled * 03/05/2011 * @param int $id member id * @update 7.7.2011 */ function _updateMemberCaches($id) { global $_PB_CACHE; $cache_time = $this->default_cachetime; if (class_exists("Spaces")) { $space_controller = new Space(); } else { uses("space"); $space_controller = new Space(); } $data = array(); if (empty($id)) { $id = $_SESSION['MemberID']; } $data['member'] = $this->getInfoById($_SESSION['MemberID']); $new_pm = $this->dbstuff->GetOne("SELECT count(id) AS amount FROM {$this->table_prefix}messages WHERE status='0' AND to_member_id=" . $id); $data['message']['new_pm'] = $new_pm; if ($data['member']['membertype_id']) { $data['company'] = $this->GetRow("SELECT c.* FROM {$this->table_prefix}companies c LEFT JOIN {$this->table_prefix}companyfields cf ON c.id=cf.company_id WHERE c.member_id='" . $id . "'"); $data['company']['space_url'] = $space_controller->rewrite($data['company']['cache_spacename']); } if ($_PB_CACHE['office_cache'] && $_PB_CACHE['main_cache_lifetime']) { $cache_time = $_PB_CACHE['main_cache_lifetime']; $this->dbstuff->Execute("REPLACE INTO `{$this->table_prefix}membercaches` (member_id,data1,data2,expiration) VALUE ('" . $id . "','" . @serialize($data) . "',''," . ($this->timestamp + $cache_time) . ")"); } return $data; }
function formatResult($result) { global $_PB_CACHE; if (!class_exists('Space')) { uses("space"); } $space_controller = new Space(); if (!$result || empty($result)) { return null; } if (!isset($_PB_CACHE['membergroup'])) { require CACHE_PATH . "cache_membergroup.php"; } if (!isset($_PB_CACHE['manage_type'])) { require CACHE_PATH . "cache_typeoption.php"; } $count = count($result); for ($i = 0; $i < $count; $i++) { $result[$i]['gradeimg'] = 'images/group/' . $_PB_CACHE['membergroup'][$result[$i]['cache_membergroupid']]['avatar']; if (!empty($result[$i]['manage_type'])) { $result[$i]['managetype'] = $_PB_CACHE['manage_type'][$result[$i]['manage_type']]; } if (!empty($result[$i]['membergroup_id'])) { $result[$i]['gradename'] = $_PB_CACHE['membergroup'][$result[$i]['membergroup_id']]['name']; } if (isset($result[$i]['space_name'])) { $result[$i]['url'] = $space_controller->rewrite($result[$i]['space_name'], $result[$i]['id']); } else { $result[$i]['url'] = "javascript:;"; } if (isset($result[$i]['picture'])) { $result[$i]['logo'] = pb_get_attachmenturl($result[$i]['picture'], '', 'small'); $result[$i]['logosrc'] = '<img alt="' . $result[$i]['name'] . '" src="' . pb_get_attachmenturl($result[$i]['picture'], '', 'small') . '" />'; } } return $result; }
/** * [PHPB2B] Copyright (C) 2007-2099, Ualink Inc. All Rights Reserved. * The contents of this file are subject to the License; you may not use this file except in compliance with the License. * * @version $Revision: 2115 $ */ function smarty_block_company($params, $content, &$smarty, &$repeat) { global $_PB_CACHE; $conditions = array(); $param_count = count($smarty->_tag_stack); if (empty($params['name'])) { $params['name'] = "company"; } require CACHE_PATH . "cache_area.php"; require CACHE_PATH . "cache_membergroup.php"; if (class_exists("Companies")) { $company = new Companies(); $company_controller = new Company(); } else { uses("company"); $company = new Companies(); $company_controller = new Company(); } if (class_exists("Spaces")) { $space_controller = new Space(); } else { uses("space"); $space_controller = new Space(); } $conditions[] = "c.status=1"; if (isset($params['type'])) { $type = explode(",", $params['type']); $type = array_unique($type); foreach ($type as $val) { switch ($val) { case 'image': $conditions[] = "c.picture!=''"; break; case 'commend': $conditions[] = "c.if_commend>0"; break; case 'hot': break; default: break; } } } if (isset($params['typeid'])) { $conditions[] = "c.type_id=" . $params['typeid']; } if (isset($params['id'])) { $conditions[] = "c.id=" . $params['id']; } if (isset($params['industryid'])) { if (strpos($params['industryid'], ",")) { $conditions['industry'] = "c.industry_id IN (" . $params['industryid'] . ")"; } else { $industry_id = intval($params['industryid']); if ($industry_id) { $conditions['industry'] = "c.industry_id=" . $industry_id; } } } if (isset($params['areaid'])) { if (strpos($params['areaid'], ",")) { $conditions['area'] = "c.area_id IN (" . $params['areaid'] . ")"; } else { $area_id = intval($params['areaid']); if ($area_id) { $conditions['area'] = "c.area_id=" . $area_id; } } } if (!empty($_GET['industryid'])) { $conditions['industry'] = "c.industry_id=" . intval($_GET['industryid']); } if (!empty($_GET['areaid'])) { $conditions['area'] = "c.area_id=" . intval($_GET['areaid']); } if (isset($params['groupid'])) { $conditions[] = "c.cache_membergroupid=" . $params['groupid']; } $limit = $offset = 0; if (isset($params['row'])) { $limit = $params['row']; } if (isset($params['start'])) { $offset = $params['start']; } $orderby = null; if (isset($params['orderby'])) { if ($params['orderby'] == "rand" || $params['orderby'] == "rand()") { $sql = "SELECT max(id) AS max_id,min(id) AS min_id FROM " . $company->table_prefix . "companies"; $result = $company->GetRow($sql); for ($i = 0; $i <= $limit; $i++) { $ids[] = mt_rand($result['min_id'], $result['max_id']); } $conditions[] = "id IN (" . implode(",", $ids) . ")"; } else { $orderby = " ORDER BY " . trim($params['orderby']) . " "; } } else { $orderby = " ORDER BY id DESC "; } $company->setCondition($conditions); $company->setLimitOffset($offset, $limit); $mysql_limit = $company->getLimitOffset(); if (isset($params['limit'])) { $mysql_limit = " " . trim($params['limit']); } $sql = "SELECT c.id as companyid,c.name as companyname,c.name as title,cache_spacename as userid,c.* FROM {$company->table_prefix}companies c " . $company->getCondition() . "{$orderby}" . $mysql_limit . ""; if (empty($smarty->blockvars[$param_count])) { $smarty->blockvars[$param_count] = $company->GetArray($sql); if (!$smarty->blockvars[$param_count]) { return $repeat = false; } } if (!function_exists("smarty_function_the_url")) { require "function.the_url.php"; } if (list($key, $item) = each($smarty->blockvars[$param_count])) { $repeat = true; $item['rownum'] = $key; $item['iteration'] = ++$key; if (!empty($item['userid']) && $item['member_id'] > 0) { $url = $space_controller->rewrite($item['userid']); } else { $url = smarty_function_the_url(array("id" => $item['id'], "module" => "company")); } $item['url'] = $url; if (isset($params['titlelen'])) { $item['companyname'] = mb_substr($item['name'], 0, $params['titlelen']); } if (!empty($item['cache_membergroupid'])) { $item['avatar'] = $item['groupavatar'] = "images/group/" . $_PB_CACHE['membergroup'][$item['cache_membergroupid']]['avatar']; } if (!empty($item['picture'])) { $item['logo'] = pb_get_attachmenturl($item['picture'], '', 'small'); } $item['areaid'] = $item['area_id']; $areas = $company_controller->array_multi2single($_PB_CACHE['area']); if (!empty($areas[$item['area_id']])) { $item['areaname'] = $areas[$item['area_id']]; } if (!empty($_PB_CACHE['membergroup'][$item['cache_membergroupid']]['name'])) { $item['groupname'] = $_PB_CACHE['membergroup'][$item['cache_membergroupid']]['name']; } $item['link'] = '<a title="' . $item['name'] . '" href="' . $url . '">' . $item['companyname'] . '</a>'; $item['thumb'] = $item['src'] = $item['logo']; $smarty->assign($params['name'], $item); } else { $repeat = false; reset($smarty->blockvars[$param_count]); } if (!is_null($content)) { print $content; } if (!$repeat) { $smarty->blockvars[$param_count] = array(); } }
/** * [PHPB2B] Copyright (C) 2007-2099, Ualink Inc. All Rights Reserved. * The contents of this file are subject to the License; you may not use this file except in compliance with the License. * * @version $Revision: 2075 $ */ function smarty_block_job($params, $content, &$smarty, &$repeat) { $conditions = array(); $param_count = count($smarty->_tag_stack); if (empty($params['name'])) { $params['name'] = "job"; } if (class_exists("Jobs")) { $job = new Jobs(); } else { uses("job"); $job = new Jobs(); } if (!class_exists('Space')) { uses("space"); } $space_controller = new Space(); if (isset($params['companyid'])) { $conditions[] = "company_id=" . $params['companyid']; } if (isset($params['status'])) { $conditions[] = "j.status='" . $params['status'] . "'"; } if (isset($params['memberid'])) { $conditions[] = "member_id=" . $params['memberid']; } if (isset($params['id'])) { $conditions[] = "j.id=" . $params['id']; } $orderby = null; if (isset($params['orderby'])) { $orderby = " ORDER BY " . trim($params['orderby']) . " "; } else { $orderby = " ORDER BY id DESC"; } $job->setCondition($conditions); $limit = $offset = 0; if (isset($params['row'])) { $limit = $params['row']; } if (isset($params['start'])) { $offset = $params['start']; } $job->setLimitOffset($offset, $limit); $sql = "SELECT j.id,j.content,j.name,j.name as title,c.name AS companyname,c.cache_spacename AS userid FROM {$job->table_prefix}jobs j LEFT JOIN {$job->table_prefix}companies c ON c.id=j.company_id " . $job->getCondition() . "{$orderby}" . $job->getLimitOffset(); if (empty($smarty->blockvars[$param_count])) { $smarty->blockvars[$param_count] = $job->GetArray($sql); if (!$smarty->blockvars[$param_count]) { return $repeat = false; } } if (list($key, $item) = each($smarty->blockvars[$param_count])) { $repeat = true; $space_controller->setBaseUrlByUserId($item['userid'], "job"); $url = $space_controller->rewriteDetail("job", $item['id']); $item['url'] = $url; $item['space_url'] = $space_controller->rewrite($item['userid'], $item['company_id']); $item['content'] = strip_tags($item['content']); if (isset($params['titlelen'])) { $item['title'] = mb_substr(strip_tags($item['title']), 0, $params['titlelen']); } $item['link'] = '<a title="' . strip_tags($item['name']) . '" href="' . $url . '">' . $item['title'] . '</a>'; if (isset($params['infolen'])) { if (isset($item['content'])) { $item['content'] = mb_substr(pb_strip_spaces($item['content']), 0, $params['infolen']); } } $smarty->assign($params['name'], $item); } else { $repeat = false; reset($smarty->blockvars[$param_count]); } if (!is_null($content)) { print $content; } if (!$repeat) { $smarty->blockvars[$param_count] = array(); } }
/** * [PHPB2B] Copyright (C) 2007-2099, Ualink Inc. All Rights Reserved. * The contents of this file are subject to the License; you may not use this file except in compliance with the License. * * @version $Revision: 2181 $ */ function smarty_function_the_url($params) { $do = null; extract($params); global $subdomain_support, $topleveldomain_support, $rewrite_able, $rewrite_compatible; $return = "##"; if (!empty($module)) { switch ($module) { case "producttype": if ($rewrite_able) { $return = URL . "space/" . $userid . "/product/list-" . $typeid . "-" . intval($page) . ".html"; } else { $return = URL . "space/?userid=" . $userid . "&do=product&typeid=" . $typeid . "&page=" . $page; } break; case "space": if (!class_exists('Space')) { uses("space"); } $space_controller = new Space(); $return = $space_controller->rewrite($userid, $id, $do); break; case "offer": if (!class_exists('Trade')) { uses("trade"); } $trade_controller = new Trade(); if ($rewrite_able) { $return = "offer/" . $trade_controller->getModulenameById($typeid) . "/detail/" . $id . ".html"; } else { $return = "offer/detail.php?id=" . $id; } break; case "list": $extra_param = array(); if (!empty($extra)) { if (strpos($extra, "|") > 0) { $tmp = explode("|", $extra); foreach ($tmp as $k => $v) { $tmp_p = explode(",", $v); $extra_param[$tmp_p[0]] = $tmp_p[1]; } } else { $tmp = explode(",", $extra); $extra_param[$tmp[0]] = $tmp[1]; } } $param = http_build_query($extra_param + $_GET); $return = $GLOBALS['php_self'] . "?" . $param; break; case "special": if ($rewrite_able) { if ($type == "topic") { //name first alias_name $return = "topic/" . $name . "/"; } else { $return = "topic/" . $type . "/" . $id . "/?do=" . $do; } } else { if ($type == "topic") { //name first alias_name $return = "special/?type=" . $type . "&name=" . $name; } else { $return = "special/?type=" . $type . "&do=" . $do . "&id=" . $id; } } break; case "page": if ($rewrite_able) { $return = "page/" . urlencode($title) . "/"; } else { $return = "page.php?title=" . urlencode($title); } break; case "search": if ($rewrite_able) { if (!isset($pos)) { $pos = 0; } if (!isset($params['pos']) && !isset($params['typeid'])) { $return = empty($do) ? "search/" : "search/" . $do . "/"; } else { $return = $do . "-list-" . $pos . "-" . intval($typeid) . "-" . intval($areaid) . "-" . intval($industryid) . ".html"; } } else { $return = "search/?do=" . $do . "&pos=" . $pos; if (!empty($q)) { $return .= "&q=" . $q; } if (!empty($typeid)) { $return .= "&typeid=" . intval($typeid); } if (!empty($areaid)) { $return .= "&areaid=" . $areaid; } if (!empty($industryid)) { $return .= "&industryid=" . $industryid; } if (!empty($type)) { $return .= "&type=" . $type; } } break; case "wap": if ($do) { if ($rewrite_able) { $return = "wap-" . $do . "/"; } else { $return = "?do=" . $do; } } else { $return = URL . "wap/"; } break; case "tag": if ($rewrite_able) { $return = "tag/" . $do . "-" . $q . "/"; } else { $return = smarty_function_the_url(array("do" => $do, "q" => $q, "module" => "search")); } break; default: if (!empty($id)) { if ($rewrite_able) { $return = URL . $module . "/detail/" . $id . ".html"; } else { $return = URL . $module . "/detail.php?id=" . $id; } } break; } } return $return; }