PageRenderTime 39ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/template/cr180_x/images/function.php

https://github.com/kuaileshike/upload
PHP | 96 lines | 80 code | 11 blank | 5 comment | 5 complexity | 39b3fc80e486d9584c8e8f3aa28b8fdc MD5 | raw file
  1. <?php
  2. /**
  3. * [Discuz!-cr180]
  4. *
  5. *
  6. */
  7. $mod = $_GET['mod'];
  8. if($mod =='forumlist'){
  9. define('APPTYPEID', 180);
  10. define('CURSCRIPT', 'cr180');
  11. require './../../../source/class/class_core.php';
  12. $discuz = & discuz_core::instance();
  13. $discuz->cachelist = $cachelist;
  14. $discuz->init();
  15. if(!isset($_G['cache']['forums'])) {
  16. loadcache('forums');
  17. }
  18. $forumcache = &$_G['cache']['forums'];
  19. foreach($forumcache as $key => $value){
  20. if(!$value['status']) unset($forumcache[$key]);
  21. }
  22. include template('common/cr180_forum_list');
  23. }elseif(!defined('IN_DISCUZ')) {
  24. exit('Access Deined');
  25. }
  26. function cr180fidthreaddata($fid){
  27. $fid = intval($fid);
  28. if($fid){
  29. $query = DB::query("SELECT * FROM ".DB::table('forum_thread')." WHERE fid='".$fid."' AND displayorder >=0 ORDER BY dateline DESC LIMIT 5");
  30. while($value = DB::fetch($query)){
  31. $data[$value['tid']] = $value;
  32. }
  33. }
  34. return $data;
  35. }
  36. function cr180forumdisplaydata($dt=array()){
  37. $data = $tids = array();
  38. foreach($dt as $value){
  39. $tids[] = intval($value['tid']);
  40. }
  41. require_once libfile('function/discuzcode');
  42. $query = DB::query("SELECT tid, message FROM ".DB::table('forum_post')." WHERE first=1 AND tid IN(".dimplode($tids).")");
  43. while($value = DB::fetch($query)){
  44. $data[$value['tid']] = cr180_messagegetstr($value['message'], 200);
  45. }
  46. return $data;
  47. }
  48. function cr180_messagegetstr($string, $length) {
  49. global $_G;
  50. $string = trim(strip_tags($string));
  51. $string = preg_replace(array(
  52. "/\[hide=?\d*\](.*?)\[\/hide\]/i",
  53. "/\[img]([\s\S]*?)\[\/img\]/ie",
  54. "/\[url]([\s\S]*?)\[\/url\]/i",
  55. "/\[attachimg]([\s\S]*?)\[\/attachimg\]/i",
  56. "/\[attach]([\s\S]*?)\[\/attach\]/i",
  57. ),'cr180_messagefilterstr("\\1")', $string);
  58. $string = dhtmlspecialchars($string);
  59. $string = preg_replace("/(\<[^\<]*\>|\r|\n|\s|\[.+?\])/is", ' ', $string);
  60. if($length) {
  61. $string = cutstr($string, $length);
  62. }
  63. return trim($string);
  64. }
  65. function cr180_messagefilterstr($string) {
  66. global $_G;
  67. $search = array(
  68. "/<script[^>]*?>.*?</script>/is",
  69. "/<[/!]*?[^<>]*?>/is",
  70. "/([rn])[s]+/",
  71. "/&(quot|#34);/i",
  72. "/&(amp|#38);/i",
  73. "/&(lt|#60);/i",
  74. "/&(gt|#62);/i",
  75. "/&(nbsp|#160);/i",
  76. "/&(iexcl|#161);/i",
  77. "/&(cent|#162);/i",
  78. "/&(pound|#163);/i",
  79. "/&(copy|#169);/i",
  80. );
  81. $replace = array ("", "", "1", "", "&", "<", ">", " ", chr(161), chr(162), chr(163), chr(169));
  82. $string = preg_replace($search, $replace, $string);
  83. return $string;
  84. }
  85. ?>