function getNavs() { $sql = "SELECT id,name,description,url,target,display_order,highlight FROM {$this->table_prefix}navs WHERE status=1"; $result = $this->dbstuff->GetArray($sql); if (!empty($result)) { for ($i = 0; $i < count($result); $i++) { $result[$i]['style'] = parse_highlight($result[$i]['highlight']); } } 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: 2116 $ */ function smarty_block_offer($params, $content, &$smarty, &$repeat) { global $_PB_CACHE; $conditions[] = "t.status='1'"; $param_count = count($smarty->_tag_stack); if (empty($params['name'])) { $params['name'] = "offer"; } if (!class_exists("Trades")) { uses("trade"); $trade = new Trades(); $trade_controller = new Trade(); } else { $trade = new Trades(); $trade_controller = new Trade(); } if ($_PB_CACHE['setting']['offer_expire_method']) { switch ($_PB_CACHE['setting']['offer_expire_method']) { case "2": $conditions[] = "t.expire_time>" . $trade->timestamp; break; case "3": $conditions[] = "t.expire_time>" . $trade->timestamp; break; default: break; } } if (isset($params['type'])) { $type = explode(",", $params['type']); $type = array_unique($type); foreach ($type as $val) { switch ($val) { case 'image': $conditions[] = "t.picture!=''"; break; case 'urgent': $conditions[] = "t.if_urgent='1'"; break; case 'company': $conditions[] = "t.company_id>0"; break; case 'commend': $conditions[] = "t.if_commend>0"; break; default: break; } } } if (isset($params['industryid'])) { if (isset($params['depth'])) { $depth = intval($params['depth']); if ($depth) { if (class_exists("Industries")) { $industry = new Industries(); $industry_controller = new Industry(); } else { uses("industry"); $industry = new Industries(); $industry_controller = new Industry(); } $ids_s = $industry->getConditionIds($params['industryid']); if (is_array($ids_s)) { $ids_s = array_filter($ids_s); $conditions['industry'] = "t.industry_id IN (" . implode(",", $ids_s) . ")"; } else { $conditions['industry'] = "t.industry_id='" . $ids_s . "'"; } } } else { $conditions[] = "t.industry_id = '" . $params['industryid'] . "'"; } } if (isset($params['areaid'])) { if (isset($params['depth'])) { $depth = intval($params['depth']); if ($depth) { global $industry; $ids_s = $industry->getConditionIds($params['areaid']); if (is_array($ids_s)) { $ids_s = array_filter($ids_s); $conditions['area'] = "t.area_id IN (" . implode(",", $ids_s) . ")"; } else { $conditions['area'] = "t.area_id='" . $ids_s . "'"; } } } else { $conditions['area'] = "t.area_id = '" . $params['areaid'] . "'"; } } if (!empty($_GET['industryid'])) { $conditions['industry'] = "t.industry_id=" . intval($_GET['industryid']); } if (!empty($_GET['areaid'])) { $conditions['area'] = "t.area_id=" . intval($_GET['areaid']); } if (isset($params['exclude'])) { $conditions[] = $trade->getExcludeIds($params['exclude']); } if (isset($params['include'])) { $conditions[] = $trade->getIncludeIds($params['include']); } if (isset($params['country_id'])) { $conditions[] = "t.country_id='" . $params['country_id'] . "'"; } if (isset($params['expday'])) { $conditions[] = "t.expire_time<'" . ($params['expday'] * 86400 + $trade->timestamp) . "'"; } if (isset($params['subday'])) { $conditions[] = "t.submit_time>'" . ($trade->timestamp - $params['expireday'] * 86400) . "'"; } if (isset($params['typeid'])) { if (!empty($params['typeid'])) { if (strpos($params['typeid'], ",") > 0) { $tmp_ids = explode(",", $params['typeid']); $conditions[] = "t.type_id in ('" . implode("','", $tmp_ids) . "')"; } else { $conditions[] = "t.type_id='" . $params['typeid'] . "'"; } } } if (isset($params['urgent'])) { $conditions[] = "t.if_urgent='1'"; } if (!empty($params['memberid'])) { $conditions[] = "t.member_id='" . $params['memberid'] . "'"; } if (!empty($params['companyid'])) { $conditions[] = "t.company_id='" . $params['companyid'] . "'"; } if (isset($params['cash'])) { $conditions[] = "t.require_point>0"; } $trade->setCondition($conditions); $orderby = null; $orderby = isset($params['orderby']) ? " ORDER BY " . trim($params['orderby']) . " " : " ORDER BY modified DESC"; $limit = $offset = 0; if (isset($params['row'])) { $limit = $params['row']; } if (isset($params['start'])) { $offset = $params['start']; } if (isset($_GET['pos'])) { $offset = intval($_GET['pos']); } $trade->setLimitOffset($offset, $limit); $mysql_limit = $trade->getLimitOffset(); if (isset($params['limit'])) { $mysql_limit = " " . trim($params['limit']); } if (!$params['recursive']) { $sql = "SELECT *,title as name,title as fulltitle,content as fullcontent FROM {$trade->table_prefix}trades t " . $trade->getCondition() . "{$orderby}" . $mysql_limit; } else { $sql = "SELECT *,content as fullcontent FROM {$trade->table_prefix}trades t " . $trade->getCondition() . " ORDER BY t.display_order ASC,t.id DESC" . $mysql_limit; } $offer_typenames = $trade_controller->getTradeTypes(); if (empty($smarty->blockvars[$param_count])) { $smarty->blockvars[$param_count] = $trade->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; $url = smarty_function_the_url(array("id" => $item['id'], "typeid" => $item['type_id'], "module" => "offer")); $item['url'] = $url; $item['title'] = strip_tags($item['title']); $item['content'] = strip_tags($item['content']); if (isset($params['titlelen'])) { $item['title'] = mb_substr($item['title'], 0, $params['titlelen']); } if (isset($params['infolen'])) { $item['content'] = mb_substr($item['content'], 0, $params['infolen']); } if (isset($params['titlestart'])) { $item['title'] = $params['titlestart'] . $item['title']; } $item['pubdate'] = df($item['submit_time']); $item['typeid'] = $item['type_id']; $item['typename'] = $offer_typenames[$item['type_id']]; $item['src'] = $item['thumb'] = URL . "attachment/" . $item['picture'] . ".small.jpg"; $item['link'] = '<a title="' . $item['fulltitle'] . '" href="' . $url . '">' . $item['title'] . '</a>'; $item['style'] = parse_highlight($item['highlight']); $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_getdata($params, $content, Smarty_Internal_Template $sTemplate, &$repeat) { $conditions = $orderbys = array(); $mysql_limit = $mysql_orderby = $image_col = $_seperate = ''; $target = "_blank"; extract($params); if (!isset($params['assign'])) { $assign = 'row'; } if (!empty($params['name'])) { $assign = trim($params['name']); } $C = new PbController(); $M = new PbModel(); $M->condition = ''; //Initial any last conditions $_table = $params['module']; switch ($params['module']) { case "offer": case "trade": $_table = "trade"; break; case "fair": case "expo": $_table = "expo"; break; case "announce": $_table = "announcement"; break; case "ads": $_table = "adses"; break; case "adword": $_table = "spread"; break; case "price": $_table = "productprice"; break; case "adses": break; default: break; } if (method_exists($sTemplate, 'get_template_vars')) { $_bindex = $sTemplate->getTemplateVars('_bindex'); } else { $_bindex = $sTemplate->getVariable('_bindex')->value; } if (!$_bindex) { $_bindex = array(); } if (isset($params['name'])) { if (!isset($_bindex[$params['name']])) { $_bindex[$params['name']] = 1; } else { $_bindex[$params['name']]++; } } $sTemplate->assign('_bindex', $_bindex); if (!isset($sTemplate->block_data)) { $sTemplate->block_data = array(); } $iTags = count($sTemplate->_tag_stack); /** * set condition */ $limit = $offset = 0; if (isset($params['row'])) { $limit = $params['row']; } if (isset($params['start'])) { $offset = $params['start']; } if (isset($_GET['pos'])) { $_pos = intval($_GET['pos']); $offset = ceil($_pos / $limit) * $row; } if (!empty($params['flag'])) { $conditions[] = "flag='" . $params['flag'] . "'"; } if ($_table == "industry" or $_table == "area") { if (isset($params['parentid'])) { if (!empty($params['parentid'])) { $conditions['parentid'] = "parent_id='" . intval($params['parentid']) . "' OR id=" . intval($params['parentid']); } else { $conditions['parentid'] = "parent_id=0"; } } else { $conditions['parentid'] = "parent_id=0"; } } if (!empty($params['level'])) { if ($_table == "newstype") { $conditions[] = "level_id='" . $params['level'] . "'"; } else { $conditions[] = "level='" . $params['level'] . "'"; } } if (isset($params['type'])) { $type = explode(",", $params['type']); $type = array_unique($type); foreach ($type as $val) { switch ($val) { case 'image': if ($module == "friendlink") { $image_col = "logo"; } else { $image_col = "picture"; } $conditions[] = "{$image_col}!=''"; break; case 'hot': $orderbys[] = "hits DESC"; break; case 'commend': $conditions[] = "if_commend='1'"; break; default: break; } } } if (isset($params['exclude'])) { $conditions[] = $M->getExcludeIds($params['exclude']); } if (isset($params['include'])) { $conditions[] = $M->getIncludeIds($params['include']); } if (isset($params['orderby'])) { $orderbys[] = trim($params['orderby']); } if (!empty($row) && $row != 'all' && $row != -1) { $M->setLimitOffset($offset, $limit); $mysql_limit = $M->getLimitOffset(); } if (!empty($params['limit'])) { $mysql_limit = " " . trim($params['limit']); } if (!empty($_GET['producttypeid'])) { $conditions[] = "type_id=" . intval($_GET['producttypeid']); } if (!empty($params['companyid'])) { $conditions[] = "company_id=" . intval($params['companyid']); } if (!empty($params['industryid'])) { $conditions[] = "industry_id=" . intval($params['industryid']); } if (!empty($params['typeid'])) { if ($_table == 'adses') { $conditions[] = "adzone_id=" . intval($params['typeid']); } else { $conditions[] = "type_id=" . intval($params['typeid']); } } if (empty($sTemplate->block_data[$iTags])) { # ************************************************************************ # Main content $M->setCondition($conditions); $M->setOrderby($orderbys); $sql = sprintf("SELECT * FROM %s%s %s %s %s", $M->table_prefix, $C->pluralize($_table), $M->getCondition(), $M->getOrderby(), $mysql_limit); $sTemplate->block_data[$iTags] = $M->GetArray($sql); //如果没有数据,那就不用再执行了(repeat) if (!$sTemplate->block_data[$iTags]) { return $repeat = false; } if (isset($stat)) { $_total_count = $M->dbstuff->GetOne(sprintf("SELECT count(*) FROM %s%s %s", $M->table_prefix, $C->pluralize($_table), $M->getCondition())); $sTemplate->assign('total_count', $_total_count); $sTemplate->assign("paging", array('total' => $_total_count)); } # End main content # ************************************************************************ } if (!$sTemplate->block_data[$iTags]) { $repeat = false; return ''; } if (!function_exists("smarty_function_the_url")) { require "function.the_url.php"; } $counts = count($sTemplate->block_data[$iTags]); if (list($key, $item) = each($sTemplate->block_data[$iTags])) { $_title = $_title_full = $_content = $_content_full = ''; $item['rownum'] = $key; $item['iteration'] = ++$key; if (!empty($item['url'])) { $url = $item['url']; } else { $url = smarty_function_the_url(array("do" => $module, "id" => $item['id'], "action" => 'detail')); } if ($module == "company") { $url = smarty_function_the_url(array("id" => $item['id'], "do" => "company", "userid" => $item['cache_spacename'])); } elseif ($module == "tag") { $url = smarty_function_the_url(array("do" => "product", "action" => 'lists', "q" => $item['name'])); } $item['url'] = $url; if (isset($item['title'])) { $_title = $item['name'] = $item['title']; } elseif (isset($item['name'])) { $_title = $item['title'] = $item['name']; } elseif (isset($item['subject'])) { $_title = $item['title'] = $item['subject']; } elseif (isset($item['word'])) { $_title = $item['title'] = $item['word']; } $_title_full = $_title; $item['title'] = $_title = strip_tags(pb_lang_split($_title)); $_title_full = strip_tags(pb_lang_split($_title_full)); if (!empty($titlelen)) { $_title = mb_substr($_title, 0, $titlelen); } if (isset($item['description'])) { $_content = $item['description']; } elseif (isset($item['content'])) { $_content = $item['content']; } if (isset($item['clicked'])) { $item['hits'] = $item['clicked']; } $_content_full = $_content; if (!empty($_content) && isset($infolen)) { $_content = mb_substr($_content, 0, $infolen); } if (isset($item['created'])) { $item['pubdate'] = df($item['created'], "m-d"); } elseif (isset($item['submit_time'])) { $item['pubdate'] = df($item['submit_time']); } if (!empty($params['sep'])) { $_seperate = $params['sep']; } $item['content'] = $_content = strip_tags(pb_lang_split($_content)); // if($seperate) $_title = ($key==$counts-1)?$_title:$_title.$seperate; $item['link'] = '<a title="' . $_title_full . '" href="' . $url . '" target="' . $target . '">' . $_title . '</a>' . $_seperate; $media_url = ''; if (!empty($item['picture'])) { $media_url = $item['picture']; if (!empty($media_url)) { $item['thumb'] = $item['src'] = pb_get_attachmenturl($media_url, '', 'small'); } } if (!empty($item['source_url'])) { $media_url = $item['source_url']; if (!empty($media_url)) { $item['thumb'] = $item['src'] = $media_url; } } if (isset($item['highlight'])) { $item['style'] = parse_highlight($item['highlight']); } $sTemplate->assign($assign, $item); $repeat = true; } else { $repeat = false; reset($sTemplate->block_data[$iTags]); if (isset($params['name'])) { unset($_bindex[$params['name']]); $sTemplate->assign('_bindex', $_bindex); } } if (!is_null($content)) { print $content; } if (!$repeat) { $sTemplate->block_data[$iTags] = array(); } }
if (isset($_GET['level'])) { $conditions[] = "level=" . intval($_GET['level']); } if (isset($_GET['typeid'])) { $conditions[] = "areatype_id=" . intval($_GET['typeid']); } } if ($do == "edit") { setvar("CacheItems", $area->getTypeOptions()); foreach ($viewhelper->colorarray as $color) { $colors[] = '"' . substr($color, 1) . '"'; } setvar("colors", implode(",", $colors)); if (!empty($id)) { $res = $pdb->GetRow("SELECT * FROM {$tb_prefix}areas WHERE id=" . $id); $highlight_style = parse_highlight($res['highlight'], true); setvar("hl", $highlight_style); setvar("item", $res); } $tpl_file = "area.edit"; template($tpl_file); exit; } if ($do == "clear") { $tpl_file = "area.clear"; template($tpl_file); exit; } if ($do == "country") { $tpl_file = "area.country"; $result = $country->findAll(null, null, null, "display_order ASC");
/** * [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: 2193 $ */ function smarty_block_area($params, $content, &$smarty, &$repeat) { $conditions = array(); $param_count = count($smarty->_tag_stack); if (empty($params['name'])) { $params['name'] = "area"; } if (class_exists("Areas")) { $area = new Areas(); $area_controller = new Area(); } else { uses("area"); $area = new Areas(); $area_controller = new Area(); } $conditions[] = "available=1"; if (isset($params['typeid'])) { $conditions[] = "areatype_id=" . $params['typeid']; } if (isset($params['depth'])) { //depth if ($params['depth'] == -1) { if (!empty($_GET['level'])) { if (isset($_GET['areaid'])) { $next_level = $area->dbstuff->GetOne("SELECT level FROM " . $area->table_prefix . "areas WHERE id=" . intval($_GET['areaid'])); $next_level += 1; $conditions['level'] = "level=" . $next_level; $conditions['parentid'] = "parent_id=" . intval($_GET['areaid']) . " OR id=" . intval($_GET['areaid']); } elseif (!isset($_GET['industryid'])) { $conditions['level'] = "level=" . intval($_GET['level']); } else { $conditions['level'] = "level=1"; } } else { $conditions['level'] = "level=1"; } } } if (!empty($params['typeid'])) { $conditions[] = "areatype_id=" . $params['typeid']; } if (!empty($params['id'])) { $conditions[] = "id=" . $params['id']; } if (!empty($params['topid'])) { $conditions[] = "top_parentid='" . $params['topid'] . "'"; } if (!empty($params['level'])) { $conditions['level'] = "level=" . $params['level']; } if (!empty($params['parentid'])) { $conditions['parentid'] = "parent_id='" . $params['parentid'] . "' OR id=" . $params['parentid']; } if (!empty($params['exclude'])) { $conditions[] = "id NOT IN (" . $params['exclude'] . ")"; } if (!empty($params['include'])) { $conditions[] = "id IN (" . $params['include'] . ")"; } $area->setCondition($conditions); $orderby = null; if (isset($params['orderby'])) { $orderby = " ORDER BY " . trim($params['orderby']) . " "; } else { $orderby = " ORDER BY display_order ASC,id DESC"; } $limit = $offset = 0; if (isset($params['row'])) { $limit = $params['row']; } if (isset($params['start'])) { $offset = $params['start']; } if (!empty($limit)) { $area->setLimitOffset($offset, $limit); } else { $area->limit_offset = 0; } $sql = "SELECT id,name,level,name as title,alias_name,highlight,url,parent_id FROM {$area->table_prefix}areas a " . $area->getCondition() . "{$orderby}" . $area->getLimitOffset() . ";"; $area->dbstuff->setFetchMode(ADODB_FETCH_ASSOC); if (empty($smarty->blockvars[$param_count])) { $smarty->blockvars[$param_count] = $area->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['url'])) { $url = $item['url']; } else { $url = smarty_function_the_url(array("module" => "special", "type" => "area", "id" => $item['id'], "do" => $smarty->_tpl_vars['do'])); } $item['url'] = $url; $item['style'] = parse_highlight($item['highlight']); if (isset($params['titlelen'])) { $item['title'] = mb_substr(strip_tags($item['title']), 0, $params['titlelen']); } $item['link'] = '<a title="' . $item['name'] . '" href="' . $url . '">' . $item['title'] . '</a>'; if (isset($_GET['areaid'])) { $id = intval($_GET['areaid']); if ($id > 0 && $id == $item['id']) { $item['child'] = $area->GetArray("SELECT *,name AS title FROM {$area->table_prefix}areas WHERE parent_id=" . $id . " AND available=1 ORDER BY display_order ASC;"); } } $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(); } }
function getCacheArray($cachename = '', $script = '') { global $pdb, $tb_prefix; $conditions = $curdata = ''; $data = array(); if (empty($cachename) && !empty($this->cache_name)) { $cachename = $this->cache_name; } switch ($cachename) { case 'nav': $navs = $pdb->GetArray("SELECT id,name,description,url,target,display_order,highlight FROM {$tb_prefix}navs WHERE status=1 ORDER BY display_order ASC"); $navmns = array(); if (!empty($navs)) { foreach ($navs as $nav => $nav_val) { $navmns[$nav_val['id']]['link'] = '<a href="' . $nav_val['url'] . '" title="' . $nav_val['name'] . '"' . parse_highlight($nav_val['highlight']) . '"><span>' . $nav_val['name'] . '</span></a>'; $navmns[$nav_val['id']]['id'] = $nav_val['id']; $navmns[$nav_val['id']]['name'] = $nav_val['name']; $navmns[$nav_val['id']]['url'] = $nav_val['url']; $navmns[$nav_val['id']]['level'] = $nav_val['display_order']; } $data['navs'] = $navmns; } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'trusttype': $pdb->setFetchMode(ADODB_FETCH_ASSOC); $conditions = ""; $sql = "SELECT * FROM {$tb_prefix}trusttypes ORDER BY display_order ASC,id DESC"; $result = $pdb->GetArray($sql); foreach ($result as $key => $val) { $result[$key]['avatar'] = $val['image']; unset($result[$key]['description'], $result[$key]['display_order'], $result[$key]['status'], $result[$key]['image']); $data[$val['id']] = $result[$key]; } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'country': $pdb->setFetchMode(ADODB_FETCH_ASSOC); $conditions = ""; $sql = "SELECT * FROM {$tb_prefix}countries ORDER BY display_order ASC,id ASC"; $result = $pdb->GetArray($sql); foreach ($result as $key => $val) { $result[$key]['image'] = $val['picture']; unset($result[$key]['display_order']); $data[$val['id']] = $result[$key]; } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'setting': $tmp_mail = array(); $table = 'setting'; $conditions = ""; $sql = "SELECT * FROM {$tb_prefix}settings WHERE type_id IN (0,1)"; $setting = $pdb->GetArray($sql); foreach ($setting as $key => $val) { $data[$val['variable']] = $val['valued']; } //set sendmail $tmp_mail['send_mail'] = $data['send_mail']; $tmp_mail['auth_protocol'] = $data['auth_protocol']; $tmp_mail['smtp_server'] = $data['smtp_server']; $tmp_mail['smtp_port'] = $data['smtp_port']; $tmp_mail['smtp_auth'] = $data['smtp_auth']; $tmp_mail['mail_from'] = $data['mail_from']; $tmp_mail['mail_fromwho'] = $data['mail_fromwho']; $tmp_mail['auth_username'] = $data['auth_username']; $tmp_mail['auth_password'] = $data['auth_password']; $tmp_mail['mail_delimiter'] = $data['mail_delimiter']; $tmp_mail['sendmail_silent'] = $data['sendmail_silent']; $data['mail'] = serialize($tmp_mail); unset($tmp_mail, $data['send_mail'], $data['smtp_server'], $data['smtp_port'], $data['smtp_auth'], $data['mail_from'], $data['mail_fromwho'], $data['auth_username'], $data['auth_password'], $data['mail_delimiter'], $data['sendmail_silent']); $data['capt_auth'] = bindec($data['capt_logging'] . $data['capt_register'] . $data['capt_post_free'] . $data['capt_add_market'] . $data['capt_login_admin'] . $data['capt_apply_friendlink'] . $data['capt_service']); unset($data['capt_logging'], $data['capt_register'], $data['capt_post_free'], $data['capt_add_market'], $data['capt_login_admin'], $data['capt_apply_friendlink'], $data['capt_service']); $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'area': $sql = "select name,id from {$tb_prefix}areas a where a.parent_id=0 ORDER by display_order asc"; $top_areas = $sec_areas = $third_areas = $areas = $total_areas = array(); $area1 = $pdb->GetArray($sql); $op = "<!--// Created " . date("M j, Y, G:i") . " -->\n"; $op .= "var data_area = { \n"; foreach ($area1 as $key => $val) { $top_areas[$val['id']] = $total_areas[1][$val['id']] = $val['name']; $sql = "select id,name,parent_id ,top_parentid from {$tb_prefix}areas a where level=2 AND parent_id=" . $val['id'] . " ORDER by display_order asc"; $sec_areas = $pdb->GetArray($sql); foreach ($sec_areas as $key2 => $val2) { $third_areas = $pdb->GetArray("select id,name,parent_id,top_parentid from {$tb_prefix}areas a where level=3 AND parent_id=" . $val2['id'] . " ORDER by display_order asc"); $areas[$val['id']]['sub'][$val2['id']] = $val2['name']; $total_areas[2][$val2['id']] = $val2['name']; foreach ($third_areas as $key3 => $val3) { $areas[$val2['id']]['sub'][$val3['id']] = $total_areas[3][$val3['id']] = $val3['name']; } } } $top_areas = $this->convert2utf8($top_areas); $areas = $this->convert2utf8($areas); $op .= "'0':" . json_encode($top_areas); $tmp_op = array(); foreach ($top_areas as $js_key => $js_val) { if (isset($areas[$js_key])) { foreach ($areas[$js_key] as $js_key1 => $js_val1) { $tmp_op[] = "'0,{$js_key}':" . json_encode($areas[$js_key]['sub']); foreach ($areas[$js_key]['sub'] as $js_key2 => $js_val2) { if (!empty($areas[$js_key2]['sub'])) { $tmp_op[] = "'0,{$js_key},{$js_key2}':" . json_encode($areas[$js_key2]['sub']); } } } } } if (!empty($tmp_op)) { $op .= ",\n"; $tmp_op = implode(",\n", $tmp_op); $op .= $tmp_op . "\n}"; } else { $op .= "\n}"; } $fp = file_put_contents($this->cache_path . "area.js", $op); ksort($total_areas); $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($total_areas) . ";\n\n"; break; case 'industry': if (!function_exists("smarty_function_the_url")) { require PHPB2B_ROOT . "app/slug/function.the_url.php"; } $sql = "SELECT name,id,name AS title FROM {$tb_prefix}industries i WHERE i.parent_id=0 and available=1 ORDER BY display_order ASC"; $top_levels = $sec_levels = $third_levels = $datas = $total_datas = array(); $level1 = $pdb->GetArray($sql); $op = "<!--// Created " . date("M j, Y, G:i") . " -->\n"; $op .= "var data_industry = { \n"; foreach ($level1 as $key => $val) { $top_levels[$val['id']] = $total_datas[1][$val['id']] = $val['name']; $sql = "SELECT id,name,parent_id,top_parentid,name AS title FROM {$tb_prefix}industries t WHERE available=1 AND level=2 AND parent_id=" . $val['id'] . " ORDER BY display_order ASC"; $sec_levels = $pdb->GetArray($sql); foreach ($sec_levels as $key2 => $val2) { $third_levels = $pdb->GetArray("SELECT id,name,parent_id,top_parentid,name AS title FROM {$tb_prefix}industries t WHERE available=1 AND level=3 AND parent_id=" . $val2['id'] . " ORDER BY display_order ASC"); $datas[$val['id']]['sub'][$val2['id']] = $val2['name']; $total_datas[2][$val2['id']] = $val2['name']; foreach ($third_levels as $key3 => $val3) { $datas[$val2['id']]['sub'][$val3['id']] = $total_datas[3][$val3['id']] = $val3['name']; } } } $top_levels = $this->convert2utf8($top_levels); $datas = $this->convert2utf8($datas); $op .= "'0':" . json_encode($top_levels); $tmp_op = array(); foreach ($top_levels as $js_key => $js_val) { if (isset($datas[$js_key])) { foreach ($datas[$js_key] as $js_key1 => $js_val1) { $tmp_op[] = "'0,{$js_key}':" . json_encode($datas[$js_key]['sub']); foreach ($datas[$js_key]['sub'] as $js_key2 => $js_val2) { if (!empty($datas[$js_key2]['sub'])) { $tmp_op[] = "'0,{$js_key},{$js_key2}':" . json_encode($datas[$js_key2]['sub']); } } } } } if (!empty($tmp_op)) { $op .= ",\n"; $tmp_op = implode(",\n", $tmp_op); $op .= $tmp_op . "\n}"; } else { $op .= "\n}"; } $fp = file_put_contents($this->cache_path . "industry.js", $op); unset($op); ksort($total_datas); $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($total_datas) . ";\n\n"; unset($top_levels, $sec_levels, $third_levels, $datas, $total_datas, $op); //db cache. $data = array(); $op = "<?php\n"; $op .= "return "; $tmp_level_top = $pdb->GetArray("SELECT id,name FROM " . $tb_prefix . "industries WHERE parent_id=0 and available=1 ORDER BY display_order ASC"); if (!empty($tmp_level_top)) { foreach ($tmp_level_top as $tmp_val) { $level_top[$tmp_val['id']] = $tmp_val['name']; } } foreach ($level_top as $key1 => $val1) { $data[$key1]['id'] = $key1; $data[$key1]['name'] = $val1; $data[$key1]['parent_id'] = 0; $data[$key1]['level'] = 1; $url = $pdb->GetOne("SELECT url FROM " . $tb_prefix . "industries WHERE id={$key1} ORDER BY display_order ASC"); if ($url) { $data[$key1]['url'] = $url; } else { $data[$key1]['url'] = smarty_function_the_url(array("module" => "special", "type" => "industry", "id" => $key1)); } $tmp_result1 = $pdb->GetArray("SELECT * FROM " . $tb_prefix . "industries WHERE level=2 AND parent_id=" . $key1 . " AND available=1 ORDER BY display_order ASC"); if (!empty($tmp_result1)) { foreach ($tmp_result1 as $key2 => $val2) { $data[$key1]['sub'][$key2]['id'] = $val2['id']; $data[$key1]['sub'][$key2]['name'] = $val2['name']; $data[$key1]['sub'][$key2]['available'] = $val2['available']; $data[$key1]['sub'][$key2]['parent_id'] = $val2['parent_id']; $data[$key1]['sub'][$key2]['level'] = $val2['level']; $url = $pdb->GetRow("SELECT * FROM " . $tb_prefix . "industries WHERE id={$val2['id']}"); if (!empty($url['url'])) { $data[$key1]['sub'][$key2]['url'] = $url['url']; } else { $data[$key1]['sub'][$key2]['url'] = smarty_function_the_url(array("module" => "special", "type" => "industry", "id" => $val2['id'])); } $tmp_result2 = $pdb->GetArray("SELECT * FROM " . $tb_prefix . "industries WHERE level=3 AND parent_id=" . $val2['id'] . " AND available=1 ORDER BY display_order ASC"); if (!empty($tmp_result2)) { foreach ($tmp_result2 as $key3 => $val3) { $data[$key1]['sub'][$key2]['sub'][$key3]['id'] = $val3['id']; $data[$key1]['sub'][$key2]['sub'][$key3]['name'] = $val3['name']; $data[$key1]['sub'][$key2]['sub'][$key3]['available'] = $val3['available']; $data[$key1]['sub'][$key2]['sub'][$key3]['parent_id'] = $val3['parent_id']; $data[$key1]['sub'][$key2]['sub'][$key3]['level'] = $val3['level']; $url = $pdb->GetRow("SELECT * FROM " . $tb_prefix . "industries WHERE id={$val3['id']}"); if (!empty($url['url'])) { $data[$key1]['sub'][$key2]['sub'][$key3]['url'] = $url['url']; } else { $data[$key1]['sub'][$key2]['sub'][$key3]['url'] = smarty_function_the_url(array("module" => "special", "type" => "industry", "id" => $val3['id'])); } } } } } } $op .= $this->evalArray($data); unset($data); $op .= "\n"; $op .= "?>"; $fp = file_put_contents($this->cache_path . "industry.php", $op); break; case 'userpage': $sql = "SELECT id,name,title,url,digest FROM {$tb_prefix}userpages ORDER BY display_order ASC,id ASC"; $result = $pdb->GetArray($sql); if (!empty($result)) { $i = 0; foreach ($result as $key => $val) { $data[$i]['id'] = $val['id']; $data[$i]['title'] = $val['title']; $data[$i]['name'] = $val['name']; $data[$i]['digest'] = $val['digest']; if (!empty($val['url'])) { $data[$i]['url'] = $val['url']; } else { $data[$i]['url'] = ""; } $i++; } } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'form': $form_result = $pdb->GetArray("SELECT * FROM {$tb_prefix}forms ORDER BY id ASC"); if (!empty($form_result)) { foreach ($form_result as $val) { $item_result = $pdb->GetArray("SELECT * FROM {$tb_prefix}formitems WHERE id IN (" . $val['items'] . ") ORDER BY id ASC"); if (!empty($item_result)) { foreach ($item_result as $val1) { $data[$val['id']][$val1['id']]['id'] = $val1['identifier']; $data[$val['id']][$val1['id']]['label'] = $val1['title']; } } } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; } break; case 'membergroup': $sql = "SELECT * FROM {$tb_prefix}membergroups mg ORDER BY mg.id DESC"; $membergroup_result = $pdb->GetArray($sql); if (!empty($membergroup_result)) { foreach ($membergroup_result as $key => $val) { $data[$val['id']]['name'] = $val['name']; $data[$val['id']]['max_offer'] = $val['max_offer']; $data[$val['id']]['type_id'] = $val['membertype_id']; $data[$val['id']]['max_product'] = $val['max_product']; $data[$val['id']]['max_job'] = $val['max_job']; $data[$val['id']]['max_companynews'] = $val['max_companynews']; $data[$val['id']]['max_market'] = $val['max_companynews']; $data[$val['id']]['max_album'] = $val['max_companynews']; $data[$val['id']]['max_producttype'] = $val['max_producttype']; $data[$val['id']]['max_attach_size'] = $val['max_attach_size']; $data[$val['id']]['max_size_perday'] = $val['max_size_perday']; $data[$val['id']]['max_favorite'] = $val['max_favorite']; $data[$val['id']]['type'] = $val['type']; $data[$val['id']]['avatar'] = $val['picture']; $data[$val['id']]['allow_space'] = $val['allow_space']; $tmp_allow = sprintf("%02b", $val['allow_offer']); $data[$val['id']]['offer_allow'] = intval($tmp_allow[0]); $data[$val['id']]['offer_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_market']); $data[$val['id']]['market_allow'] = intval($tmp_allow[0]); $data[$val['id']]['market_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_company']); $data[$val['id']]['company_allow'] = intval($tmp_allow[0]); $data[$val['id']]['company_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_product']); $data[$val['id']]['product_allow'] = intval($tmp_allow[0]); $data[$val['id']]['product_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_job']); $data[$val['id']]['job_allow'] = intval($tmp_allow[0]); $data[$val['id']]['job_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_companynews']); $data[$val['id']]['companynews_allow'] = intval($tmp_allow[0]); $data[$val['id']]['companynews_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_album']); $data[$val['id']]['album_allow'] = intval($tmp_allow[0]); $data[$val['id']]['album_check'] = intval($tmp_allow[1]); $data[$val['id']]['auth_level'] = intval($val['exempt']); } } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; default: break; } return $curdata; }
//seo info $meta->save('trade', $id, $_POST['data']['meta']); if (!$updated) { flash(); } else { if ($G['setting']['keyword_bidding']) { $keyword->setIds($vals['title'] . $vals['content'], 'trades', true, $id); } flash("success", "offer.php?do=search&page=" . $_REQUEST['page'] . "&type_id=" . $vals['type_id']); } } $amount = $trade->findCount(null, $conditions, "Trade.id"); $page->setPagenav($amount); $fields = "Trade.member_id,m.username,Trade.company_id,Trade.adwords,Trade.highlight,Trade.type_id,Trade.status,Trade.id,Trade.title,Trade.clicked,Trade.if_urgent,Trade.submit_time AS pubdate,Trade.submit_time,Trade.modified,Trade.expire_time AS expdate,Trade.expire_time,Trade.picture as TradePicture,require_point,require_membertype,ip_addr as IP,Trade.if_commend"; $joins[] = "LEFT JOIN {$tb_prefix}members m ON m.id=Trade.member_id"; $result = $trade->findAll($fields, $joins, $conditions, "Trade.id DESC", $page->firstcount, $page->displaypg); if (!empty($result)) { for ($i = 0; $i < count($result); $i++) { $result[$i]['pubdate'] = df($result[$i]['pubdate']); $result[$i]['moddate'] = df($result[$i]['submit_time'], "Y-m-d H:i"); $result[$i]['expdate'] = df($result[$i]['expdate']); $result[$i]['style'] = parse_highlight($result[$i]['highlight']); if ($result[$i]['expire_time'] < $time_stamp) { $result[$i]['if_expire'] = L("has_expired", "tpl"); } } setvar("Items", $result); } setvar("ByPages", $page->getPagenav()); setvar("TradeNames", $trade_controller->getTradeTypeNames()); template($tpl_file);
function getCacheArray($cachename = '', $script = '') { $conditions = $curdata = ''; $data = array(); if (empty($cachename) && !empty($this->cache_name)) { $cachename = $this->cache_name; } switch ($cachename) { case 'nav': $this->lang_dirname = ''; $navs = $this->dbstuff->GetArray("SELECT id,name,description,url,target,display_order,highlight FROM {$this->table_prefix}navs WHERE status=1 ORDER BY display_order ASC"); $navmns = $_nlink = array(); if (!empty($navs)) { foreach ($navs as $nav => $nav_val) { $lang_title = $nav_val['name']; $_tmp = pb_lang_split($lang_title, true); foreach ($_tmp as $_nk => $_nv) { $_nlink[$_nk] = '<a href="' . $nav_val['url'] . '" title="' . $_nv . '" ' . parse_highlight($nav_val['highlight']) . '><span>' . $_nv . '</span></a>'; } $navmns[$nav_val['id']]['link'] = pb_lang_merge($_nlink); $navmns[$nav_val['id']]['id'] = $nav_val['id']; $navmns[$nav_val['id']]['name'] = $lang_title; $navmns[$nav_val['id']]['url'] = $nav_val['url']; $navmns[$nav_val['id']]['level'] = $nav_val['display_order']; } $data['navs'] = $navmns; } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'trusttype': $this->lang_dirname = ''; $this->dbstuff->setFetchMode(ADODB_FETCH_ASSOC); $conditions = ""; $sql = "SELECT * FROM {$this->table_prefix}trusttypes ORDER BY display_order ASC,id DESC"; $result = $this->dbstuff->GetArray($sql); foreach ($result as $key => $val) { $result[$key]['avatar'] = $val['image']; unset($result[$key]['description'], $result[$key]['display_order'], $result[$key]['status'], $result[$key]['image']); $data[$val['id']] = $result[$key]; } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'country': $this->lang_dirname = ''; $this->dbstuff->setFetchMode(ADODB_FETCH_ASSOC); $conditions = ""; $sql = "SELECT * FROM {$this->table_prefix}countries ORDER BY display_order ASC,id ASC"; $result = $this->dbstuff->GetArray($sql); foreach ($result as $key => $val) { $result[$key]['image'] = $val['picture']; unset($result[$key]['display_order']); $data[$val['id']] = $result[$key]; } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray(pb_lang_split_recursive($data)) . ";\n\n"; break; case 'setting': $this->lang_dirname = ''; $tmp_mail = array(); $table = 'setting'; $conditions = ""; $sql = "SELECT * FROM {$this->table_prefix}settings WHERE type_id IN (0,1)"; $setting = $this->dbstuff->GetArray($sql); foreach ($setting as $key => $val) { //For multi $s_title = $val['valued']; $data[$val['variable']] = $s_title; } //set sendmail $tmp_mail['send_mail'] = $data['send_mail']; $tmp_mail['auth_protocol'] = $data['auth_protocol']; $tmp_mail['smtp_server'] = $data['smtp_server']; $tmp_mail['smtp_port'] = $data['smtp_port']; $tmp_mail['smtp_auth'] = $data['smtp_auth']; $tmp_mail['mail_from'] = $data['mail_from']; $tmp_mail['mail_fromwho'] = $data['mail_fromwho']; $tmp_mail['auth_username'] = $data['auth_username']; $tmp_mail['auth_password'] = $data['auth_password']; $tmp_mail['mail_delimiter'] = $data['mail_delimiter']; $tmp_mail['sendmail_silent'] = $data['sendmail_silent']; $data['mail'] = serialize($tmp_mail); unset($tmp_mail, $data['send_mail'], $data['smtp_server'], $data['smtp_port'], $data['smtp_auth'], $data['mail_from'], $data['mail_fromwho'], $data['auth_username'], $data['auth_password'], $data['mail_delimiter'], $data['sendmail_silent']); $data['capt_auth'] = bindec($data['capt_logging'] . $data['capt_register'] . $data['capt_post_free'] . $data['capt_add_market'] . $data['capt_login_admin'] . $data['capt_apply_friendlink'] . $data['capt_service']); unset($data['capt_logging'], $data['capt_register'], $data['capt_post_free'], $data['capt_add_market'], $data['capt_login_admin'], $data['capt_apply_friendlink'], $data['capt_service']); $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'area': $this->lang_dirname = ''; $sql = "select * from {$this->table_prefix}areas a where a.parent_id=0 ORDER by display_order asc"; $top_areas = $sec_areas = $third_areas = $areas = $total_areas = array(); $area1 = $this->dbstuff->GetArray($sql); $op = "<!--// Created " . date("M j, Y, G:i") . " -->\n"; $op .= "var data_area = { \n"; foreach ($area1 as $key => $val) { //For multi $i_title = $val['name']; // $tmp = unserialize($val['description']); // if(!empty($tmp[$this->lang_dirname])) $i_title = $tmp[$this->lang_dirname]; $top_areas[$val['id']] = $total_areas[1][$val['id']] = $i_title; $sql = "select * from {$this->table_prefix}areas a where level=2 AND parent_id=" . $val['id'] . " ORDER by display_order asc"; $sec_areas = $this->dbstuff->GetArray($sql); foreach ($sec_areas as $key2 => $val2) { //For multi $i_title = $val2['name']; // $tmp = unserialize($val2['description']); // if(!empty($tmp[$this->lang_dirname])) $i_title = $tmp[$this->lang_dirname]; $third_areas = $this->dbstuff->GetArray("select id,name,parent_id,top_parentid from {$this->table_prefix}areas a where level=3 AND parent_id=" . $val2['id'] . " ORDER by display_order asc"); $areas[$val['id']]['sub'][$val2['id']] = $i_title; $total_areas[2][$val2['id']] = $i_title; foreach ($third_areas as $key3 => $val3) { //For multi $i_title = $val3['name']; // $tmp = unserialize($val3['description']); // if(!empty($tmp[$this->lang_dirname])) $i_title = $tmp[$this->lang_dirname]; $areas[$val2['id']]['sub'][$val3['id']] = $total_areas[3][$val3['id']] = $i_title; } } } $top_areas = pb_lang_split_recursive($this->convert2utf8($top_areas)); $areas = pb_lang_split_recursive($this->convert2utf8($areas)); $op .= "'0':" . json_encode($top_areas); $tmp_op = array(); foreach ($top_areas as $js_key => $js_val) { if (isset($areas[$js_key])) { foreach ($areas[$js_key] as $js_key1 => $js_val1) { $tmp_op[] = "'0,{$js_key}':" . json_encode($areas[$js_key]['sub']); foreach ($areas[$js_key]['sub'] as $js_key2 => $js_val2) { if (!empty($areas[$js_key2]['sub'])) { $tmp_op[] = "'0,{$js_key},{$js_key2}':" . json_encode($areas[$js_key2]['sub']); } } } } } if (!empty($tmp_op)) { $op .= ",\n"; $tmp_op = implode(",\n", $tmp_op); $op .= $tmp_op . "\n}"; } else { $op .= "\n}"; } $fp = file_put_contents($this->cache_path . "area.js", $op); ksort($total_areas); $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($total_areas) . ";\n\n"; //db cache. $data = array(); $op = "<?php\n"; $op .= "return "; $tmp_level_top = $this->dbstuff->GetArray("SELECT id,name,parent_id,level,url FROM " . $this->table_prefix . "areas WHERE available=1 ORDER BY display_order ASC"); $data = pb_format_tree($tmp_level_top, 0); $op .= $this->evalArray($data); unset($data); $op .= "\n"; $op .= "?>"; $fp = file_put_contents(CACHE_COMMON_PATH . "area.php", $op); break; case 'industry': $this->lang_dirname = ''; if (!function_exists("smarty_function_the_url")) { require SLUGIN_PATH . "function.the_url.php"; } $sql = "SELECT name,id,name AS title,description FROM {$this->table_prefix}industries i WHERE i.parent_id=0 and available=1 ORDER BY display_order ASC"; $top_levels = $sec_levels = $third_levels = $datas = $total_datas = array(); $level1 = $this->dbstuff->GetArray($sql); $op = "<!--// Created " . date("M j, Y, G:i") . " -->\n"; $op .= "var data_industry = { \n"; foreach ($level1 as $key => $val) { //For multi $i_title = $val['name']; // $tmp = unserialize($val['description']); // if(!empty($tmp[$this->lang_dirname])) $i_title = $tmp[$this->lang_dirname]; $top_levels[$val['id']] = $total_datas[1][$val['id']] = $i_title; $sql = "SELECT id,name,parent_id,top_parentid,name AS title,description FROM {$this->table_prefix}industries t WHERE available=1 AND level=2 AND parent_id=" . $val['id'] . " ORDER BY display_order ASC"; $sec_levels = $this->dbstuff->GetArray($sql); foreach ($sec_levels as $key2 => $val2) { //For multi $i_title = $val2['name']; // $tmp = unserialize($val2['description']); // if(!empty($tmp[$this->lang_dirname])) $i_title = $tmp[$this->lang_dirname]; $third_levels = $this->dbstuff->GetArray("SELECT id,name,parent_id,top_parentid,name AS title,description FROM {$this->table_prefix}industries t WHERE available=1 AND level=3 AND parent_id=" . $val2['id'] . " ORDER BY display_order ASC"); $datas[$val['id']]['sub'][$val2['id']] = $i_title; $total_datas[2][$val2['id']] = $i_title; foreach ($third_levels as $key3 => $val3) { //For multi $i_title = $val3['name']; // $tmp = unserialize($val3['description']); // if(!empty($tmp[$this->lang_dirname])) $i_title = $tmp[$this->lang_dirname]; $datas[$val2['id']]['sub'][$val3['id']] = $total_datas[3][$val3['id']] = $i_title; } } } $top_levels = pb_lang_split_recursive($this->convert2utf8($top_levels)); $datas = pb_lang_split_recursive($this->convert2utf8($datas)); $op .= "'0':" . json_encode($top_levels); $tmp_op = array(); foreach ($top_levels as $js_key => $js_val) { if (isset($datas[$js_key])) { foreach ($datas[$js_key] as $js_key1 => $js_val1) { $tmp_op[] = "'0,{$js_key}':" . json_encode($datas[$js_key]['sub']); foreach ($datas[$js_key]['sub'] as $js_key2 => $js_val2) { if (!empty($datas[$js_key2]['sub'])) { $tmp_op[] = "'0,{$js_key},{$js_key2}':" . json_encode($datas[$js_key2]['sub']); } } } } } if (!empty($tmp_op)) { $op .= ",\n"; $tmp_op = implode(",\n", $tmp_op); $op .= $tmp_op . "\n}"; } else { $op .= "\n}"; } $fp = file_put_contents($this->cache_path . "industry.js", $op); unset($op); ksort($total_datas); $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($total_datas) . ";\n\n"; unset($top_levels, $sec_levels, $third_levels, $datas, $total_datas, $op); //db cache. $data = array(); $op = "<?php\n"; $op .= "return "; $tmp_level_top = $this->dbstuff->GetArray("SELECT id,name,parent_id,level,url FROM " . $this->table_prefix . "industries WHERE available=1 ORDER BY display_order ASC"); $data = pb_format_tree($tmp_level_top, 0); $op .= $this->evalArray($data); unset($data); $op .= "\n"; $op .= "?>"; $fp = file_put_contents(CACHE_COMMON_PATH . "industry.php", $op); break; case 'userpage': $this->lang_dirname = ''; $sql = "SELECT id,name,title,url,digest FROM {$this->table_prefix}userpages ORDER BY display_order ASC,id ASC"; $result = $this->dbstuff->GetArray($sql); if (!empty($result)) { $i = 0; foreach ($result as $key => $val) { $data[$i]['id'] = $val['id']; $data[$i]['title'] = $val['title']; $data[$i]['name'] = $val['name']; $data[$i]['digest'] = $val['digest']; if (!empty($val['url'])) { $data[$i]['url'] = $val['url']; } else { $data[$i]['url'] = ""; } $i++; } } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case 'form': $this->lang_dirname = ''; $form_result = $this->dbstuff->GetArray("SELECT * FROM {$this->table_prefix}forms ORDER BY id ASC"); if (!empty($form_result)) { foreach ($form_result as $val) { $item_result = $this->dbstuff->GetArray("SELECT * FROM {$this->table_prefix}formitems WHERE id IN (" . $val['items'] . ") ORDER BY id ASC"); if (!empty($item_result)) { foreach ($item_result as $val1) { $data[$val['id']][$val1['id']]['id'] = $val1['identifier']; $data[$val['id']][$val1['id']]['label'] = $val1['title']; } } } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; } break; case 'membergroup': $this->lang_dirname = ''; $sql = "SELECT * FROM {$this->table_prefix}membergroups mg ORDER BY mg.id DESC"; $membergroup_result = $this->dbstuff->GetArray($sql); if (!empty($membergroup_result)) { foreach ($membergroup_result as $key => $val) { $data[$val['id']]['name'] = $val['name']; $data[$val['id']]['max_offer'] = $val['max_offer']; $data[$val['id']]['type_id'] = $val['membertype_id']; $data[$val['id']]['max_product'] = $val['max_product']; $data[$val['id']]['max_job'] = $val['max_job']; $data[$val['id']]['max_companynews'] = $val['max_companynews']; $data[$val['id']]['max_market'] = $val['max_companynews']; $data[$val['id']]['max_album'] = $val['max_companynews']; $data[$val['id']]['max_producttype'] = $val['max_producttype']; $data[$val['id']]['max_attach_size'] = $val['max_attach_size']; $data[$val['id']]['max_size_perday'] = $val['max_size_perday']; $data[$val['id']]['max_favorite'] = $val['max_favorite']; $data[$val['id']]['type'] = $val['type']; $data[$val['id']]['avatar'] = $val['picture']; $data[$val['id']]['allow_space'] = $val['allow_space']; $tmp_allow = sprintf("%02b", $val['allow_offer']); $data[$val['id']]['offer_allow'] = intval($tmp_allow[0]); $data[$val['id']]['offer_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_market']); $data[$val['id']]['market_allow'] = intval($tmp_allow[0]); $data[$val['id']]['market_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_company']); $data[$val['id']]['company_allow'] = intval($tmp_allow[0]); $data[$val['id']]['company_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_product']); $data[$val['id']]['product_allow'] = intval($tmp_allow[0]); $data[$val['id']]['product_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_job']); $data[$val['id']]['job_allow'] = intval($tmp_allow[0]); $data[$val['id']]['job_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_companynews']); $data[$val['id']]['companynews_allow'] = intval($tmp_allow[0]); $data[$val['id']]['companynews_check'] = intval($tmp_allow[1]); $tmp_allow = sprintf("%02b", $val['allow_album']); $data[$val['id']]['album_allow'] = intval($tmp_allow[0]); $data[$val['id']]['album_check'] = intval($tmp_allow[1]); $data[$val['id']]['auth_level'] = intval($val['exempt']); } } $curdata = "\$_PB_CACHE['{$cachename}'] = " . $this->evalArray($data) . ";\n\n"; break; case "javascript": $this->view->clearConfig(); $this->view->configLoad("default.conf", "javascript"); $js_vars = $this->view->getConfigVars(); //arrTemplate is the language pack $op = "<!--// Created " . date("M j, Y, G:i") . " -->\n"; $op .= "var pb_lang = { \n"; if (!empty($js_vars)) { foreach ($js_vars as $key => $val) { $val = str_replace("\"", "", $val); $op .= "\t" . strtoupper(trim($key, '_')) . ' : "' . $val . '",'; $op .= "\n"; } } $op .= "\tEND : ''\n};"; $fp = file_put_contents($this->cache_path . "locale.js", $op); unset($op); break; default: break; } return $curdata; }
/** * [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_help($params, $content, &$smarty, &$repeat) { $conditions = array(); $param_count = count($smarty->_tag_stack); if (empty($params['name'])) { $params['name'] = "help"; } if (class_exists("Helps")) { $help = new Helps(); $help_controller = new Help(); } else { uses("help"); $help_controller = new Help(); $help = new Helps(); } if (!empty($params['typeid'])) { $conditions[] = "helptype_id=" . $params['typeid']; } if (!empty($params['id'])) { $conditions[] = "id=" . $params['id']; } if (isset($params['orderby'])) { $orderby = " ORDER BY " . trim($params['orderby']) . " "; } else { $orderby = " ORDER BY id DESC"; } $help->setCondition($conditions); $orderby = null; $limit = $offset = 0; if (isset($params['row'])) { $limit = $params['row']; } if (isset($params['start'])) { $offset = $params['start']; } $help->setLimitOffset($offset, $limit); $sql = "SELECT id,title,title as fulltitle,highlight FROM {$help->table_prefix}helps " . $help->getCondition() . "{$orderby}" . $help->getLimitOffset() . ""; if (empty($smarty->blockvars[$param_count])) { $smarty->blockvars[$param_count] = $help->GetArray($sql); if (!$smarty->blockvars[$param_count]) { return $repeat = false; } } if (list($key, $item) = each($smarty->blockvars[$param_count])) { $repeat = true; $item['iteration'] = ++$key; $url = $help->getPermaLink($item['id']); $item['url'] = $url; if (isset($params['titlelen'])) { $item['title'] = mb_substr(strip_tags($item['title']), 0, $params['titlelen']); } $item['style'] = parse_highlight($item['highlight']); $item['link'] = '<a title="' . strip_tags($item['name']) . '" href="' . $url . '" target="_blank">' . $item['title'] . '</a>'; if (isset($params['infolen'])) { $item['content'] = strip_tags($item['content']); 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(); } }
} $cache->writeCache("nav", "nav"); // foreach ($_POST['data']['lang'] as $key=>$val) { // $cache->lang_dirname = $key; // $cache->writeCache("nav", "nav"); // } } if (isset($_GET['do'])) { $do = trim($_GET['do']); if (!empty($_GET['id'])) { $id = intval($_GET['id']); } if ($do == "edit") { if (!empty($id)) { $res = $nav->read("*", $id); $res['langs'] = unserialize($res['description']); setvar("item", $res); } $tpl_file = "nav.edit"; template($tpl_file); exit; } } $result = $nav->findAll("*", null, $conditions, "display_order ASC,id ASC"); if (!empty($result)) { for ($i = 0; $i < count($result); $i++) { $result[$i]['title'] = "<a" . parse_highlight($result[$i]['highlight']) . ">" . $result[$i]['name'] . "</a>"; } } setvar("Items", $result); template($tpl_file);