/source/include/thread/thread_activity.php

https://github.com/sichen/hrmmdiscuz · PHP · 95 lines · 81 code · 8 blank · 6 comment · 19 complexity · b6d715b0bb33d591d493f9f6820f0bf0 MD5 · raw file

  1. <?php
  2. /**
  3. * [Discuz!] (C)2001-2099 Comsenz Inc.
  4. * This is NOT a freeware, use is subject to license terms
  5. *
  6. * $Id: thread_activity.php 20005 2011-01-27 10:10:01Z zhangguosheng $
  7. */
  8. if(!defined('IN_DISCUZ')) {
  9. exit('Access Denied');
  10. }
  11. $isverified = $applied = 0;
  12. $ufielddata = $applyinfo = '';
  13. if($_G['uid']) {
  14. $query = DB::query("SELECT message, verified, ufielddata FROM ".DB::table('forum_activityapply')." WHERE tid='$_G[tid]' AND uid='$_G[uid]'");
  15. if(DB::num_rows($query)) {
  16. $applyinfo = DB::fetch($query);
  17. $isverified = $applyinfo['verified'];
  18. if($applyinfo['ufielddata']) {
  19. $ufielddata = unserialize($applyinfo['ufielddata']);
  20. }
  21. $applied = 1;
  22. }
  23. }
  24. $applylist = array();
  25. $activity = DB::fetch_first("SELECT * FROM ".DB::table('forum_activity')." WHERE tid='$_G[tid]'");
  26. $activityclose = $activity['expiration'] ? ($activity['expiration'] > TIMESTAMP ? 0 : 1) : 0;
  27. $activity['starttimefrom'] = dgmdate($activity['starttimefrom'], 'u');
  28. $activity['starttimeto'] = $activity['starttimeto'] ? dgmdate($activity['starttimeto']) : 0;
  29. $activity['expiration'] = $activity['expiration'] ? dgmdate($activity['expiration']) : 0;
  30. $activity['attachurl'] = $activity['thumb'] = '';
  31. if($activity['ufield']) {
  32. $activity['ufield'] = unserialize($activity['ufield']);
  33. if($activity['ufield']['userfield']) {
  34. $htmls = $settings = array();
  35. require_once libfile('function/profile');
  36. foreach($activity['ufield']['userfield'] as $fieldid) {
  37. if(empty($ufielddata['userfield'])) {
  38. $query = DB::query("SELECT ".implode(',', $activity['ufield']['userfield'])." FROM ".DB::table('common_member_profile')." WHERE uid='$_G[uid]'");
  39. $ufielddata['userfield'] = DB::fetch($query);
  40. }
  41. $html = profile_setting($fieldid, $ufielddata['userfield'], false, true);
  42. if($html) {
  43. $settings[$fieldid] = $_G['cache']['profilesetting'][$fieldid];
  44. $htmls[$fieldid] = $html;
  45. }
  46. }
  47. }
  48. } else {
  49. $activity['ufield'] = '';
  50. }
  51. if($activity['aid']) {
  52. $attach = DB::fetch_first("SELECT * FROM ".DB::table(getattachtablebytid($_G['tid']))." WHERE aid='$activity[aid]'");
  53. if($attach['isimage']) {
  54. $activity['attachurl'] = ($attach['remote'] ? $_G['setting']['ftp']['attachurl'] : $_G['setting']['attachurl']).'forum/'.$attach['attachment'];
  55. $activity['thumb'] = $attach['thumb'] ? getimgthumbname($activity['attachurl']) : $activity['attachurl'];
  56. $activity['width'] = $attach['thumb'] && $_G['setting']['thumbwidth'] < $attach['width'] ? $_G['setting']['thumbwidth'] : $attach['width'];
  57. }
  58. $skipaids[] = $activity['aid'];
  59. }
  60. $applylistverified = array();
  61. $noverifiednum = 0;
  62. $query = DB::query("SELECT aa.username, aa.uid, aa.verified, aa.dateline, aa.message, aa.payment, aa.ufielddata, m.groupid FROM ".DB::table('forum_activityapply')." aa
  63. LEFT JOIN ".DB::table('common_member')." m USING(uid)
  64. LEFT JOIN ".DB::table('common_member_field_forum')." mf USING(uid)
  65. WHERE aa.tid='$_G[tid]' ORDER BY aa.dateline DESC");
  66. while($activityapplies = DB::fetch($query)) {
  67. $activityapplies['dateline'] = dgmdate($activityapplies['dateline'], 'u');
  68. if($activityapplies['verified'] == 1) {
  69. $activityapplies['ufielddata'] = unserialize($activityapplies['ufielddata']);
  70. if(count($applylist) < $_G['setting']['activitypp']) {
  71. $activityapplies['message'] = preg_replace("/(".lang('forum/misc', 'contact').".*)/", '', $activityapplies['message']);
  72. $applylist[] = $activityapplies;
  73. }
  74. } else {
  75. if(count($applylistverified) < 8) {
  76. $applylistverified[] = $activityapplies;
  77. }
  78. $noverifiednum++;
  79. }
  80. }
  81. $applynumbers = $activity['applynumber'];
  82. $aboutmembers = $activity['number'] >= $applynumbers ? $activity['number'] - $applynumbers : 0;
  83. $allapplynum = $applynumbers + $noverifiednum;
  84. if($_G['forum']['status'] == 3) {
  85. $isgroupuser = groupperm($_G['forum'], $_G['uid']);
  86. }
  87. ?>