亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > CMS > PhpCMS > 正文

【phpcms-v9】content_output.class.php文件分析-前臺內容詳情頁顯示

2024-09-10 07:15:44
字體:
來源:轉載
供稿:網友

【phpcms-v9】content_output.class.php文件分析-前臺內容詳情頁顯示數據的過濾

  1. <?php   
  2. //路徑:caches/caches_model/caches_data/content_output.class.php   
  3. //在phpcms/modules/content/index.php控制器中的show()方法中會調用content_output類的實例,show()方法主要用來完成前臺內容詳情頁內容的顯示   
  4. class content_output {   
  5.     var $fields;   
  6.     var $data;   
  7.    
  8.     function __construct($modelid,$catid = 0,$categorys = array()) {   
  9.         $this->modelid = $modelid;                                   //模型id   
  10.         $this->catid = $catid;                                       //欄目id   
  11.         $this->categorys = $categorys;                               //當前站點下所有欄目的詳細配置信息   
  12.         $this->fields = getcache('model_field_'.$modelid,'model');   //當前模型id下所有模型字段詳細配置信息   
  13.     }   
  14.     function get($data) {                                           //參數:從數據庫中查詢到某條記錄   
  15.         $this->data = $data;   
  16.         $this->id = $data['id'];                                 //記錄id   
  17.         $info = array();   
  18.         foreach($this->fields as $field=>$v) {   
  19.             if(!isset($data[$field])) continue;                     //如果不存在,則跳出本次循環   
  20.             $func = $v['formtype'];                                 //方法名:通過表單類型來獲取,作用:主要是對當前表單數據進行過濾等   
  21.             $value = $data[$field];                                 //表單值   
  22.             //如果方法存在,執行方法并返回數據   
  23.             $result = method_exists($this$func) ? $this->$func($field$data[$field]) : $data[$field];   
  24.             if($result !== false) $info[$field] = $result;   
  25.         }   
  26.         return $info;   
  27.     }   
  28.     function editor($field$value) {   
  29.         $setting = string2array($this->fields[$field]['setting']);   
  30.         if($setting['enablekeylink']) {   
  31.             $value = $this->_keylinks($value$setting['replacenum'],$setting['link_mode']);   
  32.         }   
  33.         return $value;   
  34.     }   
  35.     function _base64_encode($t,$str) {   
  36.         return $t."/"".base64_encode($str)."/"";   
  37.     }   
  38.     function _base64_decode($t,$str) {   
  39.         return $t."/"".base64_decode($str)."/"";   
  40.     }   
  41.     function _keylinks($txt$replacenum = '',$link_mode = 1) {   
  42.         $search = "/(alt/s*=/s*|title/s*=/s*)[/"|/'](.+?)[/"|/']/ise";   
  43.         $replace = "/$this->_base64_encode('//1','//2')";   
  44.         $replace1 = "/$this->_base64_decode('//1','//2')";   
  45.         $txt = preg_replace($search$replace$txt);   
  46.         $keywords = $this->data['keywords'];   
  47.         if($keywords$keywords = strpos(',',$keywords) === false ? explode(' ',$keywords) : explode(',',$keywords);   
  48.         if($link_mode && !emptyempty($keywords)) {   
  49.             foreach($keywords as $keyword) {   
  50.                 $linkdatas[] = $keyword;   
  51.             }   
  52.         } else {   
  53.             $linkdatas = getcache('keylink','commons');   
  54.         }   
  55.         if($linkdatas) {   
  56.             $word = $replacement = array();   
  57.             foreach($linkdatas as $v) {   
  58.                 if($link_mode && $keywords) {   
  59.                     $word1[] = '/(?!(<a.*?))' . preg_quote($v'/') . '(?!.*<//a>)/s';   
  60.                     $word2[] = $v;   
  61.                     $replacement[] = '<a href="javascript:;" onclick="show_ajax(this)" class="keylink">'.$v.'</a>';   
  62.                 } else {   
  63.                     $word1[] = '/(?!(<a.*?))' . preg_quote($v[0], '/') . '(?!.*<//a>)/s';   
  64.                     $word2[] = $v[0];                      
  65.                     $replacement[] = '<a href="'.$v[1].'" target="_blank" class="keylink">'.$v[0].'</a>';   
  66.                 }   
  67.             }   
  68.             if($replacenum != '') {   
  69.                 $txt = preg_replace($word1$replacement$txt$replacenum);   
  70.             } else {   
  71.                 $txt = str_replace($word2$replacement$txt);   
  72.             }   
  73.         }   
  74.         $txt = preg_replace($search$replace1$txt);   
  75.         return $txt;   
  76.     }   
  77.         //對title進行過濾   
  78.         function title($field$value) {   
  79.         $value = htmlspecialchars($value);   
  80.         return $value;   
  81.     }   
  82.     function box($field$value) {   
  83.         extract(string2array($this->fields[$field]['setting']));   
  84.         if($outputtype) {   
  85.             return $value;   
  86.         } else {   
  87.             $options = explode("/n",$this->fields[$field]['options']);   
  88.             foreach($options as $_k) {   
  89.                 $v = explode("|",$_k);   
  90.                 $k = trim($v[1]);   
  91.                 $option[$k] = $v[0];   
  92.             }   
  93.             $string = '';   
  94.             switch($this->fields[$field]['boxtype']) {   
  95.                 case 'radio':   
  96.                     $string = $option[$value];   
  97.                 break;   
  98.    
  99.                 case 'checkbox':   
  100.                     $value_arr = explode(',',$value);   
  101.                     foreach($value_arr as $_v) {   
  102.                         if($_v$string .= $option[$_v].' 、';   
  103.                     }   
  104.                 break;   
  105.    
  106.                 case 'select':   
  107.                     $string = $option[$value];   
  108.                 break;   
  109.    
  110.                 case 'multiple':   
  111.                     $value_arr = explode(',',$value);   
  112.                     foreach($value_arr as $_v) {   
  113.                         if($_v$string .= $option[$_v].' 、';   
  114.                     }   
  115.                 break;   
  116.             }   
  117.             return $string;   
  118.         }   
  119.     }   
  120.     function images($field$value) {   
  121.         return string2array($value);   
  122.     }   
  123.     function datetime($field$value) {   
  124.         $setting = string2array($this->fields[$field]['setting']);   
  125.         extract($setting);   
  126.         if($fieldtype=='date' || $fieldtype=='datetime') {   
  127.             return $value;   
  128.         } else {   
  129.             $format_txt = $format;   
  130.         }   
  131.         if(strlen($format_txt)<6) {   
  132.             $isdatetime = 0;   
  133.         } else {   
  134.             $isdatetime = 1;   
  135.         }   
  136.         if(!$value$value = SYS_TIME;   
  137.         $value = date($format_txt,$value);   
  138.         return $value;   
  139.     }   
  140.     function keyword($field$value) {   
  141.         if($value == ''return '';   
  142.         $v = '';   
  143.         if(strpos($value',')===false) {   
  144.             $tags = explode(' '$value);   
  145.         } else {   
  146.             $tags = explode(','$value);   
  147.         }   
  148.         return $tags;   
  149.     }   
  150.     function copyfrom($field$value) {   
  151.         static $copyfrom_array;   
  152.         if(!$copyform_array$copyfrom_array = getcache('copyfrom','admin');   
  153.         if($value && strpos($value,'|')!==false) {   
  154.             $arr = explode('|',$value);   
  155.             $value = $arr[0];   
  156.             $value_data = $arr[1];   
  157.         }   
  158.         if($value_data) {   
  159.             $copyfrom_link = $copyfrom_array[$value_data];   
  160.             if(!emptyempty($copyfrom_array)) {   
  161.                 $imgstr = '';   
  162.                 if($value==''$value = $copyfrom_link['siteurl'];   
  163.                 if($copyfrom_link['thumb']) $imgstr = "<a href='{$copyfrom_link[siteurl]}' target='_blank'><img src='{$copyfrom_link[thumb]}' height='15'></a> ";   
  164.                 return $imgstr."<a href='$value' target='_blank' style='color:#AAA'>{$copyfrom_link[sitename]}</a>";   
  165.             }   
  166.         } else {   
  167.             return $value;   
  168.         }   
  169.     }   
  170.     function groupid($field$value) {   
  171.         if($value$value = explode(',',$value);   
  172.         return $value;   
  173.     }   
  174.     function linkage($field$value) {   
  175.         $setting = string2array($this->fields[$field]['setting']);   
  176.         $datas = getcache($setting['linkageid'],'linkage');   
  177.         $infos = $datas['data'];   
  178.         if($setting['showtype']==1 || $setting['showtype']==3) {   
  179.             $result = get_linkage($value$setting['linkageid'], $setting['space'], $setting['showtype']);   
  180.         } elseif($setting['showtype']==2) {   
  181.             $result = $value;   
  182.         } else {   
  183.             $result = get_linkage($value$setting['linkageid'], $setting['space'], 2);   
  184.         }   
  185.         return $result;   
  186.     }   
  187.    
  188.     function downfile($field$value) {   
  189.         extract(string2array($this->fields[$field]['setting']));   
  190.         $list_str = array();   
  191.         if($value){   
  192.             $value_arr = explode('|',$value);   
  193.             $fileurl = $value_arr['0'];   
  194.             if($fileurl) {   
  195.                 $sel_server = $value_arr['1'] ? explode(',',$value_arr['1']) : '';   
  196.                 $server_list = getcache('downservers','commons');   
  197.                 if(is_array($server_list)) {   
  198.                     foreach($server_list as $_k=>$_v) {   
  199.                         if($value && is_array($sel_server) && in_array($_k,$sel_server)) {   
  200.                             $downloadurl = $_v[siteurl].$fileurl;   
  201.                             if($downloadlink) {   
  202.                                 $a_k = urlencode(sys_auth("i=$this->id&s=$_v[siteurl]&m=1&f=$fileurl&d=$downloadtype&modelid=$this->modelid&catid=$this->catid"'ENCODE', pc_base::load_config('system','auth_key')));   
  203.                                 $list_str[] = "<a href='".APP_PATH."index.php?m=content&c=down&a_k={$a_k}' target='_blank'>{$_v[sitename]}</a>";   
  204.                             } else {   
  205.                                 $list_str[] = "<a href='{$downloadurl}' target='_blank'>{$_v[sitename]}</a>";   
  206.                             }   
  207.                         }   
  208.                     }   
  209.                 }      
  210.                 return $list_str;   
  211.             }   
  212.         }    
  213.     }   
  214.     function downfiles($field$value) {   
  215.         extract(string2array($this->fields[$field]['setting']));   
  216.         $list_str = array();   
  217.         $file_list = string2array($value);   
  218.         if(is_array($file_list)) {   
  219.             foreach($file_list as $_k=>$_v) {       
  220.                 if($_v[fileurl]){   
  221.                     $filename = $_v[filename] ? $_v[filename] : L('click_to_down');   
  222.                     if($downloadlink) {   
  223.                         $a_k = urlencode(sys_auth("i=$this->id&s=&m=1&f=$_v[fileurl]&d=$downloadtype&modelid=$this->modelid&catid=$this->catid"'ENCODE', pc_base::load_config('system','auth_key')));   
  224.                         $list_str[] = "<a href='".APP_PATH."index.php?m=content&c=down&a_k={$a_k}' target='_blank'>{$filename}</a>";   
  225.                     } else {   
  226.                         $list_str[] = "<a href='{$_v[fileurl]}' target='_blank'>{$filename}</a>";   
  227.                     }   
  228.                 }   
  229.             }   
  230.         }   
  231.         return $list_str;          
  232.     }   
  233.     function map($field$value) {   
  234.         $str = '';   
  235.         $setting = string2array($this->fields[$field]['setting']);   
  236.         $setting[width] = $setting[width] ? $setting[width] : '600';   
  237.         $setting[height] = $setting[height] ? $setting[height] : '400';   
  238.         list($lngX$latY,$zoom) = explode('|'$value);   
  239.         if($setting['maptype']==1) {   
  240.             $str = "<script src='http://app.mapabc.com/apis?&t=flashmap&v=2.4&key=$setting[api_key]&hl=zh-CN' type='text/javascript'></script>";   
  241.         } elseif($setting['maptype']==2) {   
  242.             $str = "<script type='text/javascript' src='http://api.map.baidu.com/api?v=1.2&key=$setting[api_key]'></script>";   
  243.         }   
  244.         $str .= '<div id="mapObj" class="view" style="width: '.$setting[width].'px; height:'.$setting[height].'px"></div>';   
  245.         $str .='<script type="text/javascript">';   
  246.         if($setting['maptype']==1) {   
  247.         $str .='   
  248.         var mapObj=null;   
  249.         lngX = "'.$lngX.'";   
  250.         latY = "'.$latY.'";   
  251.         zoom = "'.$zoom.'";   
  252.         var mapOptions = new MMapOptions();   
  253.         mapOptions.toolbar = MConstants.MINI;   
  254.         mapOptions.scale = new MPoint(20,20);     
  255.         mapOptions.zoom = zoom;   
  256.         mapOptions.mapComButton = MConstants.SHOW_NO   
  257.         mapOptions.center = new MLngLat(lngX,latY);   
  258.         var mapObj = new MMap("mapObj", mapOptions);   
  259.         var  maptools = new MMapTools(mapObj);   
  260.         drawPoints();   //Vevb.com 
  261.         ';   
  262.         $str .='   
  263.         function drawPoints(){   
  264.             var markerOption = new MMarkerOptions();   
  265.             var tipOption=new MTipOptions();//添加信息窗口    
  266.             var address = "'.$address.'";   
  267.             tipOption.tipType = MConstants.HTML_BUBBLE_TIP;//信息窗口標題     
  268.             tipOption.title = address;//信息窗口標題     
  269.             tipOption.content = address;//信息窗口內容        
  270.             var markerOption = new MMarkerOptions();           
  271.             markerOption.imageUrl="'.IMG_PATH.'icon/mak.png";          
  272.             markerOption.picAgent=false;      
  273.             markerOption.imageAlign=MConstants.BOTTOM_CENTER;         
  274.             markerOption.tipOption = tipOption;              
  275.             markerOption.canShowTip= address ? true : false;           
  276.             markerOption.dimorphicColor="0x00A0FF";                            
  277.             Mmarker = new MMarker(new MLngLat(lngX,latY),markerOption);   
  278.             Mmarker.id="mark101";   
  279.             mapObj.addOverlay(Mmarker,true)    
  280.         }';   
  281.         } elseif($setting['maptype']==2) {   
  282.             $str .='   
  283.             var mapObj=null;   
  284.             lngX = "'.$lngX.'";   
  285.             latY = "'.$latY.'";   
  286.             zoom = "'.$zoom.'";        
  287.             var mapObj = new BMap.Map("mapObj");   
  288.             var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});   
  289.             mapObj.addControl(ctrl_nav);   
  290.             mapObj.enableDragging();   
  291.             mapObj.enableScrollWheelZoom();   
  292.             mapObj.enableDoubleClickZoom();   
  293.             mapObj.centerAndZoom(new BMap.Point(lngX,latY),zoom);   
  294.             drawPoints();   
  295.             ';   
  296.             $str .='   
  297.             function drawPoints(){   
  298.                 var myIcon = new BMap.Icon("'.IMG_PATH.'icon/mak.png"new BMap.Size(27, 45));   
  299.                 var center = mapObj.getCenter();   
  300.                 var point = new BMap.Point(lngX,latY);   
  301.                 var marker = new BMap.Marker(point, {icon: myIcon});   
  302.                 mapObj.addOverlay(marker);   
  303.             }';    
  304.         }   
  305.         $str .='</script>';   
  306.         return $str;   
  307.     }   
  308.    
  309.  }    
  310. ?>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲第一国产精品| 欧美性开放视频| 日韩女优人人人人射在线视频| 欧美成人第一页| 日韩在线视频国产| 伊人伊人伊人久久| 久久国产精品久久久| 欧美一级淫片videoshd| 亚洲欧美在线看| 亚洲男人天堂九九视频| 亚洲欧美综合精品久久成人| 久久久久久久久久婷婷| 欧美一级视频在线观看| 欧美大学生性色视频| 国产精品久久久亚洲| 69av视频在线播放| 久久久免费在线观看| 国产一区二区日韩| 欧美日韩国产一中文字不卡| 成人国产精品久久久| 米奇精品一区二区三区在线观看| 亚洲欧洲日韩国产| 国产在线精品自拍| 国产91色在线|| 性欧美暴力猛交69hd| xvideos成人免费中文版| 亚洲欧美一区二区激情| 亚洲一区第一页| 中国人与牲禽动交精品| 日韩欧美在线视频免费观看| 亚洲黄一区二区| 永久免费精品影视网站| 国产精品高潮呻吟久久av黑人| 久久国产精品影片| 色综合久久88色综合天天看泰| 欧美一级片免费在线| 亚洲第一区在线| 亚洲精品视频中文字幕| 欧洲日本亚洲国产区| 欧美中文字幕在线观看| 国内成人精品视频| 日韩大片免费观看视频播放| 国产国语videosex另类| 亚洲男人的天堂网站| 亚洲美腿欧美激情另类| 欧美网站在线观看| 日韩中文字幕国产精品| 亚洲丝袜av一区| 午夜精品久久久久久久久久久久| 中文字幕精品www乱入免费视频| 欧洲一区二区视频| 欧美资源在线观看| 欧美小视频在线观看| 中文字幕亚洲综合| 一夜七次郎国产精品亚洲| 亚洲精品久久久久久久久久久久| 2019亚洲日韩新视频| 亚洲专区国产精品| 国产噜噜噜噜噜久久久久久久久| 91在线|亚洲| 九九热这里只有在线精品视| 国产精品一久久香蕉国产线看观看| 精品福利在线看| 欧美乱大交做爰xxxⅹ性3| 亚洲国产女人aaa毛片在线| 亚洲一区二区久久久久久久| 国产精品美女www爽爽爽视频| 神马久久桃色视频| 国产欧美精品日韩| 岛国视频午夜一区免费在线观看| 国产成人啪精品视频免费网| 性金发美女69hd大尺寸| 欧洲永久精品大片ww免费漫画| 亚洲色图美腿丝袜| 欧美精品福利在线| 亚洲最大的网站| 欧美成人精品在线观看| 精品二区三区线观看| 国产精品久久久久av| 国产精品久久激情| 欧美黑人xxx| 国内精品伊人久久| www亚洲精品| 国产精品一区二区av影院萌芽| 亚洲综合色av| 国产成人一区二区三区电影| 51ⅴ精品国产91久久久久久| 日韩av网站电影| 亚洲精品www久久久| 欧美极品在线播放| 欧美成人高清视频| 亚洲第一精品电影| 国产亚洲成精品久久| 日韩在线观看免费av| 一区二区三区www| 国产成人黄色av| 国产精品日韩av| 亚洲欧美中文日韩v在线观看| 亚洲有声小说3d| 日韩av免费在线| 欧美亚洲在线视频| 欧美成人黄色小视频| 亚洲福利影片在线| 色综合91久久精品中文字幕| 一区二区三区视频观看| 亚洲精品黄网在线观看| 日韩美女福利视频| 91精品久久久久久综合乱菊| 欧美区二区三区| 日韩hd视频在线观看| 欧美一区二区三区图| 国产精品香蕉在线观看| 国产精品久久综合av爱欲tv| 国产精品视频导航| 亚洲国产精品va在线看黑人| 欧美一区二区三区免费视| 久久激情五月丁香伊人| 国产精品一区二区三区成人| 欧美成人午夜激情| 人人爽久久涩噜噜噜网站| 日本高清+成人网在线观看| 97成人精品区在线播放| 国产日韩欧美视频在线| 久久香蕉国产线看观看网| 国产欧美在线观看| 自拍偷拍亚洲欧美| 国产欧美一区二区白浆黑人| 欧美福利视频在线观看| 国产日韩av在线| 在线免费观看羞羞视频一区二区| 中文字幕欧美专区| 国产97在线|日韩| 国产精品入口尤物| 欧美成人免费在线视频| 日韩欧美在线视频免费观看| 久久在线免费观看视频| 国内精品视频在线| 91免费看片网站| 国产精品高清免费在线观看| 欧美高清视频在线观看| 欧美成人免费全部观看天天性色| 亚洲免费av网址| 亚洲女人被黑人巨大进入al| 欧美极品少妇xxxxⅹ裸体艺术| 成人黄色av网站| 日韩成人性视频| 国产欧美日韩中文字幕在线| 欧美一区三区三区高中清蜜桃| 亚洲欧美精品在线| www.亚洲一二| 日韩成人在线观看| 欧美成人精品一区二区| 亚洲亚裔videos黑人hd| 欧美日韩亚洲一区二区三区| 国产精品国内视频| 成人精品视频99在线观看免费| 26uuu国产精品视频| 日韩动漫免费观看电视剧高清| 日日噜噜噜夜夜爽亚洲精品| 日韩精品免费一线在线观看| 欧美激情喷水视频| 国产精品96久久久久久又黄又硬| 欧美色道久久88综合亚洲精品| 成人午夜一级二级三级|