国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.6KB

  1. <?php
  2. if (!defined('DEDEINC')) exit ('dedebiz');
  3. /**
  4. * 评论标签
  5. *
  6. * @version $id:feedback.lib.php 9:29 2010年7月6日 tianya $
  7. * @package DedeBIZ.Taglib
  8. * @copyright Copyright (c) 2022 DedeBIZ.COM
  9. * @license GNU GPL v2 (https://www.dedebiz.com/license)
  10. * @link https://www.dedebiz.com
  11. */
  12. function lib_feedback(&$ctag, &$refObj)
  13. {
  14. global $dsql;
  15. <<<<<<< Updated upstream
  16. $attlist = "row|10,titlelen|30,infolen|160,orderby|";
  17. =======
  18. $attlist = "row|10,titlelen|30,infolen|150,orderby|";
  19. >>>>>>> Stashed changes
  20. FillAttsDefault($ctag->CAttribute->Items, $attlist);
  21. extract($ctag->CAttribute->Items, EXTR_SKIP);
  22. $innertext = trim($ctag->GetInnerText());
  23. $totalrow = $row;
  24. $revalue = '';
  25. if (empty($innertext)) {
  26. $innertext = GetSysTemplets('tag_feedback.htm');
  27. }
  28. $order = " ORDER BY id DESC";
  29. if (!empty($orderby)) {
  30. switch ($orderby) {
  31. case 'good':
  32. $order = " ORDER BY good DESC";
  33. break;
  34. case 'time':
  35. $order = " ORDER BY dtime DESC";
  36. break;
  37. default:
  38. $order = " ORDER BY id DESC";
  39. break;
  40. }
  41. }
  42. $wsql = " WHERE fb.ischeck=1 AND fb.fid=0 ";
  43. if (get_class($refObj) === "Archives" && isset($refObj->Fields["id"])) {
  44. $wsql .= " AND fb.aid='{$refObj->Fields["id"]}'";
  45. }
  46. $equery = "SELECT fb.*,mb.userid,mb.face as mface,mb.spacesta,mb.scores,mb.sex FROM `#@__feedback` fb LEFT JOIN `#@__member` mb on mb.mid = fb.mid $wsql $order LIMIT 0 , $totalrow";
  47. $ctp = new DedeTagParse();
  48. $ctp->SetNameSpace('field', '[', ']');
  49. $ctp->LoadSource($innertext);
  50. $dsql->Execute('fb', $equery);
  51. while ($arr = $dsql->GetArray('fb')) {
  52. $arr['face'] = empty($arr['mface']) ? '/static/web/img/admin.png' : $arr['mface'];
  53. $arr['userurl'] = $GLOBALS['cfg_memberurl'].'/index.php?uid='.$arr['userid'];
  54. $arr['title'] = cn_substr($arr['arctitle'], $titlelen);
  55. $arr['msg'] = jsTrim(Html2Text($arr['msg']), $infolen);
  56. foreach ($ctp->CTags as $tagid => $ctag) {
  57. $ctp->Assign($tagid, $arr[$ctag->GetName()]);
  58. }
  59. $revalue .= $ctp->GetResult();
  60. }
  61. return $revalue;
  62. }
  63. function jsTrim($str, $len)
  64. {
  65. $str = preg_replace("/{quote}(.*){\/quote}/is", '', $str);
  66. $str = str_replace('&lt;br/&gt;', ' ', $str);
  67. $str = cn_substr($str, $len);
  68. $str = preg_replace("#['\"\r\n]#", "", $str);
  69. return $str;
  70. }
  71. ?>