Cheetah
ChGroupsPageMy.php
Go to the documentation of this file.
1 <?php
2 
8 ch_import('ChWsbPageView');
9 
11 {
12  var $_oMain;
14  var $_oDb;
15  var $_oConfig;
17 
18  function __construct(&$oMain, &$aProfile)
19  {
20  $this->_oMain = &$oMain;
21  $this->_oTemplate = $oMain->_oTemplate;
22  $this->_oDb = $oMain->_oDb;
23  $this->_oConfig = $oMain->_oConfig;
24  $this->_aProfile = $aProfile;
25  parent::__construct('ch_groups_my');
26  }
27 
28  function getBlockCode_Owner()
29  {
30  if (!$this->_oMain->_iProfileId || !$this->_aProfile)
31  return '';
32 
33  $sContent = '';
34  switch (ch_get('ch_groups_filter')) {
35  case 'add_group':
36  $sContent = $this->getBlockCode_Add ();
37  break;
38  case 'manage_groups':
39  $sContent = $this->getBlockCode_My ();
40  break;
41  case 'pending_groups':
42  $sContent = $this->getBlockCode_Pending ();
43  break;
44  default:
45  $sContent = $this->getBlockCode_Main ();
46  }
47 
48  $sBaseUrl = CH_WSB_URL_ROOT . $this->_oConfig->getBaseUri() . "browse/my";
49  $aMenu = array(
50  _t('_ch_groups_block_submenu_main') => array('href' => $sBaseUrl, 'active' => !ch_get('ch_groups_filter')),
51  _t('_ch_groups_block_submenu_add_group') => array('href' => $sBaseUrl . '&ch_groups_filter=add_group', 'active' => 'add_group' == ch_get('ch_groups_filter')),
52  _t('_ch_groups_block_submenu_manage_groups') => array('href' => $sBaseUrl . '&ch_groups_filter=manage_groups', 'active' => 'manage_groups' == ch_get('ch_groups_filter')),
53  _t('_ch_groups_block_submenu_pending_groups') => array('href' => $sBaseUrl . '&ch_groups_filter=pending_groups', 'active' => 'pending_groups' == ch_get('ch_groups_filter')),
54  );
55  return array($sContent, $aMenu, '', '');
56  }
57 
59  {
60  ch_groups_import ('SearchResult');
61  $o = new ChGroupsSearchResult('user', process_db_input ($this->_aProfile['NickName'], CH_TAGS_NO_ACTION, CH_SLASHES_NO_ACTION));
62  $o->aCurrent['rss'] = 0;
63 
64  $o->sBrowseUrl = "browse/my";
65  $o->aCurrent['title'] = _t('_ch_groups_page_title_my_groups');
66 
67  if ($o->isError) {
68  return DesignBoxContent(_t('_ch_groups_block_users_groups'), MsgBox(_t('_Empty')), 1);
69  }
70 
71  if ($s = $o->processing()) {
72  $this->_oTemplate->addCss (array('unit.css', 'twig.css', 'main.css'));
73  return $s;
74  } else {
75  return DesignBoxContent(_t('_ch_groups_block_users_groups'), MsgBox(_t('_Empty')), 1);
76  }
77  }
78 
79  function getBlockCode_Main()
80  {
81  $iActive = $this->_oDb->getCountByAuthorAndStatus($this->_aProfile['ID'], 'approved');
82  $iPending = $this->_oDb->getCountByAuthorAndStatus($this->_aProfile['ID'], 'pending');
83  $sBaseUrl = CH_WSB_URL_ROOT . $this->_oConfig->getBaseUri() . "browse/my";
84  $aVars = array ('msg' => '');
85  if ($iPending)
86  $aVars['msg'] = sprintf(_t('_ch_groups_msg_you_have_pending_approval_groups'), $sBaseUrl . '&ch_groups_filter=pending_groups', $iPending);
87  elseif (!$iActive)
88  $aVars['msg'] = sprintf(_t('_ch_groups_msg_you_have_no_groups'), $sBaseUrl . '&ch_groups_filter=add_group');
89  else
90  $aVars['msg'] = sprintf(_t('_ch_groups_msg_you_have_some_groups'), $sBaseUrl . '&ch_groups_filter=manage_groups', $iActive, $sBaseUrl . '&ch_groups_filter=add_group');
91  return $this->_oTemplate->parseHtmlByName('my_groups_main', $aVars);
92  }
93 
94  function getBlockCode_Add()
95  {
96  if (!$this->_oMain->isAllowedAdd()) {
97  return MsgBox(_t('_Access denied'));
98  }
99  ob_start();
100  $this->_oMain->_addForm(CH_WSB_URL_ROOT . $this->_oConfig->getBaseUri() . 'browse/my');
101  $aVars = array ('form' => ob_get_clean(), 'id' => '');
102  $this->_oTemplate->addCss ('forms_extra.css');
103  return $this->_oTemplate->parseHtmlByName('my_groups_create_group', $aVars);
104  }
105 
107  {
108  $sForm = $this->_oMain->_manageEntries ('my_pending', '', false, 'ch_groups_pending_user_form', array(
109  'action_delete' => '_ch_groups_admin_delete',
110  ), 'ch_groups_my_pending', false, 7);
111  if (!$sForm)
112  return MsgBox(_t('_Empty'));
113  $aVars = array ('form' => $sForm, 'id' => 'ch_groups_my_pending');
114  return $this->_oTemplate->parseHtmlByName('my_groups_manage', $aVars);
115  }
116 
117  function getBlockCode_My()
118  {
119  $sForm = $this->_oMain->_manageEntries ('user', process_db_input ($this->_aProfile['NickName'], CH_TAGS_NO_ACTION, CH_SLASHES_NO_ACTION), false, 'ch_groups_user_form', array(
120  'action_delete' => '_ch_groups_admin_delete',
121  ), 'ch_groups_my_active', true, 7);
122  $aVars = array ('form' => $sForm, 'id' => 'ch_groups_my_active');
123  return $this->_oTemplate->parseHtmlByName('my_groups_manage', $aVars);
124  }
125 }
process_db_input
process_db_input($sText, $iStripTags=0)
Definition: utils.inc.php:256
MsgBox
MsgBox($sText, $iTimer=0)
Definition: design.inc.php:175
ChGroupsPageMy\$_oMain
$_oMain
Definition: ChGroupsPageMy.php:12
ChWsbPageView
Definition: ChWsbPageView.php:99
ChGroupsPageMy\getBlockCode_Add
getBlockCode_Add()
Definition: ChGroupsPageMy.php:94
ch_import
ch_import($sClassName, $aModule=array())
Definition: utils.inc.php:1218
ch_get
ch_get($sName)
Definition: utils.inc.php:1664
php
ch_groups_import
ch_groups_import($sClassPostfix, $aModuleOverwright=array())
Definition: ChGroupsModule.php:8
ChGroupsPageMy\$_aProfile
$_aProfile
Definition: ChGroupsPageMy.php:16
ChGroupsPageMy\$_oConfig
$_oConfig
Definition: ChGroupsPageMy.php:15
ChGroupsPageMy\getBlockCode_Browse
getBlockCode_Browse()
Definition: ChGroupsPageMy.php:58
CH_SLASHES_NO_ACTION
const CH_SLASHES_NO_ACTION
Definition: utils.inc.php:30
ChGroupsSearchResult
Definition: ChGroupsSearchResult.php:11
ChGroupsPageMy\getBlockCode_My
getBlockCode_My()
Definition: ChGroupsPageMy.php:117
$aProfile
$aProfile
Definition: flash.php:14
ChGroupsPageMy\__construct
__construct(&$oMain, &$aProfile)
Definition: ChGroupsPageMy.php:18
CH_TAGS_NO_ACTION
const CH_TAGS_NO_ACTION
Definition: utils.inc.php:21
ChGroupsPageMy
Definition: ChGroupsPageMy.php:11
ChGroupsPageMy\getBlockCode_Main
getBlockCode_Main()
Definition: ChGroupsPageMy.php:79
$sContent
$sContent
Definition: bottom_menu_compose.php:169
_t
_t($key, $arg0="", $arg1="", $arg2="")
Definition: languages.inc.php:509
$aMenu
$aMenu
Definition: categories.php:257
ChGroupsPageMy\$_oTemplate
$_oTemplate
Definition: ChGroupsPageMy.php:13
$aVars
$aVars
Definition: license.php:101
$s
$s
Definition: embed.php:13
ChGroupsPageMy\$_oDb
$_oDb
Definition: ChGroupsPageMy.php:14
ChGroupsPageMy\getBlockCode_Owner
getBlockCode_Owner()
Definition: ChGroupsPageMy.php:28
ChGroupsPageMy\getBlockCode_Pending
getBlockCode_Pending()
Definition: ChGroupsPageMy.php:106
$sForm
$sForm
Definition: forgot.php:118
DesignBoxContent
DesignBoxContent($title, $content, $db_num=0, $caption_item='', $bottom_item='')
Definition: design.inc.php:78
$o
$o
Definition: cmd.php:193