Cheetah
ChFdbTemplate.php
Go to the documentation of this file.
1 <?php
2 
8 ch_import('ChWsbTextTemplate');
9 
11 {
12  function __construct(&$oConfig, &$oDb)
13  {
14  parent::__construct($oConfig, $oDb);
15 
16  $this->sCssPrefix = 'feedback';
17  }
18  function displayAdminBlock($aParams)
19  {
20  $oSearchResult = $aParams['search_result_object'];
21  unset($aParams['search_result_object']);
22 
23  $sModuleUri = $this->_oConfig->getUri();
24  $aButtons = array(
25  $sModuleUri . '-approve' => _t('_' . $sModuleUri . '_lcaption_approve'),
26  $sModuleUri . '-reject' => _t('_' . $sModuleUri . '_lcaption_reject'),
27  $sModuleUri . '-delete' => _t('_' . $sModuleUri . '_lcaption_delete')
28  );
29 
30  $aResult = array(
31  'include_css' => $this->addCss(array('view.css', 'cmts.css'), true),
32  'include_js_content' => $this->getViewJs(),
33  'filter' => $oSearchResult->showAdminFilterPanel($this->_oDb->unescape($aParams['filter_value']), $sModuleUri . '-filter-txt', $sModuleUri . '-filter-chb', $sModuleUri . '-filter'),
34  'content' => $this->displayList($aParams),
35  'control' => $oSearchResult->showAdminActionsPanel($this->sCssPrefix . '-view-admin', $aButtons, $sModuleUri . '-ids')
36  );
37 
38  return $this->addJs(array('main.js'), true) . $this->parseHtmlByName('admin.html', $aResult);
39  }
40  function displayItem($aParams, &$aEntry)
41  {
43 
44  $sSampleType = $aParams['sample_type'];
45  $iViewerType = $aParams['viewer_type'];
46  $iViewerId = isset($aParams['viewer_id']) ? (int)$aParams['viewer_id'] : 0;
47  $bAdminPanel = $iViewerType == CH_TD_VIEWER_TYPE_ADMIN && ((isset($aParams['admin_panel']) && $aParams['admin_panel']) || $sSampleType == 'admin');
48  $bAuthorExists = !empty($aEntry['author_id']) && !empty($aEntry['author_username']);
49 
50  $sModuleUri = $this->_oConfig->getUri();
51  $sLKLinkEdit = _t('_' . $sModuleUri . '_lcaption_edit');
52 
53  $aTmplVars = array(
54  'id' => $this->_oConfig->getSystemPrefix() . $aEntry['id'],
55  'ch_if:author_icon' => array(
56  'condition' => $bAuthorExists,
57  'content' => array(
58  'author_icon' => get_member_icon($aEntry['author_id'], 'left'),
59  )
60  ),
61 
62  'ch_if:author_icon_empty' => array(
63  'condition' => !$bAuthorExists,
64  'content' => array(
65  'author_icon' => $oFunctions->getSexPic('', 'small')
66  )
67  ),
68  'ch_if:author_username_link' => array(
69  'condition' => $bAuthorExists,
70  'content' => array(
71  'author_url' => getProfileLink($aEntry['author_id']),
72  'author_username' => getNickName($aEntry['author_id'])
73  )
74  ),
75  'ch_if:author_username_text' => array(
76  'condition' => !$bAuthorExists,
77  'content' => array(
78  'author_username' => _t('_Anonymous')
79  )
80  ),
81  'caption' => str_replace("$", "&#36;", $aEntry['caption']),
82  'class' => !in_array($sSampleType, array('view')) ? ' ' . $this->sCssPrefix . '-text-snippet' : '',
83  'date' => defineTimeInterval($aEntry['date']),
84  'content' => str_replace("$", "&#36;", $aEntry['content']),
85  'link' => CH_WSB_URL_ROOT . $this->_oConfig->getBaseUri() . 'view/' . $aEntry['uri'],
86  'ch_if:checkbox' => array(
87  'condition' => $bAdminPanel,
88  'content' => array(
89  'id' => $aEntry['id']
90  ),
91  ),
92  'ch_if:status' => array(
93  'condition' => ($iViewerType == CH_TD_VIEWER_TYPE_MEMBER && $iViewerId == $aEntry['author_id']) || $iViewerType == CH_TD_VIEWER_TYPE_ADMIN,
94  'content' => array(
95  'status' => _t('_' . $sModuleUri . '_status_' . $aEntry['status'])
96  ),
97  ),
98  'ch_if:edit_link' => array (
99  'condition' => ($iViewerType == CH_TD_VIEWER_TYPE_MEMBER && $iViewerId == $aEntry['author_id']) || $iViewerType == CH_TD_VIEWER_TYPE_ADMIN,
100  'content' => array(
101  'edit_link_url' => CH_WSB_URL_ROOT . $this->_oConfig->getBaseUri() . 'post/' . $aEntry['uri'],
102  'edit_link_caption' => $sLKLinkEdit,
103  )
104  )
105  );
106 
107  return $this->parseHtmlByName('item.html', $aTmplVars);
108  }
109 
110  protected function _updatePaginate($aParams)
111  {
112  switch($aParams['sample_type']) {
113  case 'owner':
114  $this->oPaginate->setCount($this->_oDb->getCount($aParams));
115  $this->oPaginate->setOnChangePage($this->_oConfig->getJsObject() . '.changePage({start}, {per_page}, \'' . $aParams['sample_type'] . '\', \'' . urlencode(serialize($aParams['sample_params'])) . '\')');
116  break;
117 
118  default:
119  parent::_updatePaginate($aParams);
120  }
121  }
122 }
CH_TD_VIEWER_TYPE_MEMBER
const CH_TD_VIEWER_TYPE_MEMBER
Definition: ChWsbTextData.php:9
ChWsbTextTemplate\getViewJs
getViewJs($bWrap=false)
Definition: ChWsbTextTemplate.php:172
ChFdbTemplate\displayItem
displayItem($aParams, &$aEntry)
Definition: ChFdbTemplate.php:40
defineTimeInterval
defineTimeInterval($iTime, $bAutoDateConvert=true, $bShort=false)
Definition: utils.inc.php:831
get_member_icon
get_member_icon($ID, $float='none', $bGenProfLink=false)
Definition: design.inc.php:170
ChFdbTemplate\__construct
__construct(&$oConfig, &$oDb)
Definition: ChFdbTemplate.php:12
ch_import
ch_import($sClassName, $aModule=array())
Definition: utils.inc.php:1218
$aResult
$aResult
Definition: index.php:19
ChWsbTemplate\addCss
addCss($mixedFiles, $bDynamic=false)
Definition: ChWsbTemplate.php:1114
php
$oFunctions
$oFunctions
Definition: ChTemplFunctions.php:20
ChFdbTemplate\displayAdminBlock
displayAdminBlock($aParams)
Definition: ChFdbTemplate.php:18
getNickName
getNickName( $ID='')
Definition: profiles.inc.php:461
$oDb
global $oDb
Definition: db.inc.php:39
ChFdbTemplate\_updatePaginate
_updatePaginate($aParams)
Definition: ChFdbTemplate.php:110
global
if(!defined("GLOBAL_MODULE")) define("GLOBAL_MODULE" global
Definition: header.inc.php:25
_t
_t($key, $arg0="", $arg1="", $arg2="")
Definition: languages.inc.php:509
getProfileLink
getProfileLink( $iID, $sLinkAdd='')
Definition: profiles.inc.php:484
ChWsbTextTemplate
Definition: ChWsbTextTemplate.php:11
ChFdbTemplate
Definition: ChFdbTemplate.php:11
ChWsbTemplate\addJs
addJs($mixedFiles, $bDynamic=false)
Definition: ChWsbTemplate.php:999
empty
Attr AllowedRel this is empty
Definition: Attr.AllowedRel.txt:7
CH_TD_VIEWER_TYPE_ADMIN
const CH_TD_VIEWER_TYPE_ADMIN
Definition: ChWsbTextData.php:10
ChWsbTemplate\parseHtmlByName
parseHtmlByName($sName, $aVariables, $mixedKeyWrapperHtml=null, $sCheckIn=CH_WSB_TEMPLATE_CHECK_IN_BOTH)
Definition: ChWsbTemplate.php:660