Cheetah
ChSpyModule.php
Go to the documentation of this file.
1 <?php
2 
8  ch_import('ChWsbModuleDb');
9  ch_import('ChWsbModule');
10  ch_import('ChWsbPageView');
11 
12  require_once('ChSpyResponseContent.php');
13  require_once('ChSpyResponseProfiles.php');
14  require_once('ChSpySearch.php');
15 
66  class ChSpyModule extends ChWsbModule
67  {
68  // contain some module information ;
70 
71  // contain path for current module;
73 
74  // contain link on created search object;
75  var $oSearch;
76 
77  var $sSpyMode;
78 
79  // logged member's Id;
81 
82  var $sEventsWrapper = 'spy_events';
83 
84  var $iPage = 1;
85  var $iPerPage;
86 
101  {
102  parent::__construct($aModule);
103 
104  // prepare the location link ;
105  $this -> sPathToModule = CH_WSB_URL_ROOT . $this -> _oConfig -> getBaseUri();
106  $this -> aModuleInfo = $aModule;
107 
108  $this -> oSearch = new ChSpySearch($this);
109 
110  // define current page's mode;
111  $this -> sSpyMode = isset($_GET['mode']) ? $_GET['mode'] : 'global';
112 
113  $this -> iMemberId = getLoggedId();
114 
115  $this -> iPage = ( isset($_GET['page']) )
116  ? (int) $_GET['page']
117  : 1;
118 
119  $this -> iPerPage = ( isset($_GET['per_page']) )
120  ? (int) $_GET['per_page']
121  : $this -> _oConfig -> iPerPage;
122  }
123 
130  {
131  $GLOBALS['iAdminPage'] = 1;
132 
133  if( !isAdmin() ) {
134  header('location: ' . CH_WSB_URL_ROOT);
135  }
136 
137  ch_import('ChWsbAdminSettings');
138 
139  $aLanguageKeys = array(
140  'premoderation' => _t('_ch_spy_admin'),
141  );
142 
143  //-- define page's action --//
144  $sAction = ( isset($_GET['action']) ) ? $_GET['action'] : null;
145  $aMenu = array();
146 
147  switch ($sAction) {
148  default:
149  $aMenu['ch_spy_main']['active'] = 1;
150 
151  $iCategoryId = $this-> _oDb -> getSettingsCategory('ch_spy_keep_rows_days');
152  if(!$iCategoryId) {
153  $sContent = MsgBox( _t('_Empty') );
154  } else {
155  $mixedResult = '';
156  if(isset($_POST['save']) && isset($_POST['cat'])) {
157  $oSettings = new ChWsbAdminSettings($iCategoryId);
158  $mixedResult = $oSettings -> saveChanges($_POST);
159  }
160 
161  $oSettings = new ChWsbAdminSettings($iCategoryId);
162  $sResult = $oSettings->getForm();
163 
164  if($mixedResult !== true && !empty($mixedResult))
165  $sResult = $mixedResult . $sResult;
166 
167  $sContent = $GLOBALS['oAdmTemplate']
168  -> parseHtmlByName( 'design_box_content.html', array('content' => $sResult) );
169 
170  }
171  }
172 
173  $this -> _oTemplate-> pageCodeAdminStart();
174  echo $this -> _oTemplate -> adminBlock ($sContent, $aLanguageKeys['premoderation']);
175  $this -> _oTemplate->pageCodeAdmin( _t('_ch_spy_module') );
176  }
177 
183  function actionSetAsRead()
184  {
185  $this -> _oDb -> setViewedProfileActivity($this -> iMemberId);
186  }
187 
196  function actionCheckUpdates($sMode = 'global', $iLastActivityId = 0, $sType = '', $iProfileId = 0)
197  {
198  $sPageUrl = $this -> sPathToModule;
199  $iLastActivityId = (int) $iLastActivityId;
200  $iProfileId = (int) $iProfileId;
201 
202  // set filter;
203  if($sType && $sType != 'all') {
204  $this -> oSearch -> aCurrent['restriction']['type']['value'] = process_db_input($sType, CH_TAGS_STRIP);
205  }
206 
207  if($iProfileId) {
208  // get only profile's activity;
209  $this -> oSearch -> aCurrent['restriction']['only_me']['value'] = $iProfileId;
210  }
211 
212  switch($sMode) {
213  case 'friends_events' :
214  //-- if member not logged function will draw login form --//;
215  if(!$this -> iMemberId ) {
216  exit( member_auth(0) );
217  }
218 
219  $this -> oSearch -> aCurrent['join'][] = array(
220  'type' => 'INNER',
221  'table' => $this -> _oDb -> sTablePrefix . 'friends_data',
222  'mainField' => 'id',
223  'onField' => 'event_id',
224  'joinFields' => array(),
225  );
226 
227  $this -> oSearch -> aCurrent['restriction']['friends']['value'] = $this -> iMemberId;
228  $this -> oSearch -> aCurrent['restriction']['no_my']['value'] = $this -> iMemberId;
229  $this -> oSearch -> aCurrent['restriction']['over_id']['value'] = $iLastActivityId;
230 
231  $sPageUrl .= '&mode=' . $this -> sSpyMode;
232  break;
233 
234  default :
235  $this -> oSearch -> aCurrent['restriction']['id'] = array(
236  'field' => 'id',
237  'operator' => '>',
238  'value' => $iLastActivityId,
239  );
240  }
241 
242  // get data;
243  $aActivites = $this -> oSearch -> getSearchData();
244  $aProccesedActivites = $this -> _proccesActivites($aActivites, ' style="display:none" ', true);
245 
246  $aRet = array(
247  'events' => $aProccesedActivites,
248  'last_event_id' => $this -> _oDb -> getLastActivityId($sType),
249  );
250 
251  // draw builded data;
252  echo json_encode($aRet);
253  }
254 
263  {
264  $this -> serviceGetMemberSpyBlock(true, $sActivityType);
265  }
266 
273  function getActivityPage($iProfile = 0, $sType = '')
274  {
275  $sPageUrl = $this -> sPathToModule;
276  if(!empty($this->sSpyMode))
277  $sPageUrl .= '&mode=' . $this->sSpyMode;
278 
279  $aParams = array(
280  'active' => true,
281  'page_ajax' => false,
282  'page_url' => $this->_oConfig->getBaseUri(),
283  'profile' => $iProfile
284  );
285 
286  if($sType) {
287  $aParams['type'] = $sType;
288  $sPageUrl .= '&spy_type=' . $sType;
289  }
290 
291  $aCode = $this->_getSpyBlock($aParams);
292 
293  $sOutputCode = $aCode[0];
294  if(isset($aCode[2]))
295  $sOutputCode .= $aCode[2];
296 
297  return $sOutputCode;
298  }
299 
307  function getInitPart($sType = '', $iProfileId = 0, $bActive = true)
308  {
309  $this -> _oTemplate -> addJs('spy.js');
310 
311  // define some parameters;
312  $iProfileId = (int)$iProfileId;
313  if($sType)
314  $sType = ch_js_string( strip_tags($sType));
315 
316  if($this -> sSpyMode == 'friends_events' && $iProfileId) {
317  $iLastActivityId = $this -> _oDb -> getLastFriendsActivityId($iProfileId, $sType);
318  $iActivityCount = $this -> _oDb -> getFriendsActivityCount($iProfileId, $sType);
319  } else {
320  $iLastActivityId = $this -> _oDb -> getLastActivityId($sType);
321  $iActivityCount = $this -> _oDb -> getActivityCount($sType);
322  }
323 
324  $sActive = $bActive ? 'true' : 'false';
325 
326  $sOutputCode = <<<JS
327  <script type="text/javascript">
328  $(document).ready(function () {
329  oSpy = new ChSpy();
330  oSpy.sPageReceiver = '{$this -> sPathToModule}';
331  oSpy.iUpdateTime = {$this -> _oConfig -> iUpdateTime};
332  oSpy.sEventsContainer = '{$this -> sEventsWrapper}';
333  oSpy.sPageMode = '{$this -> sSpyMode}';
334  oSpy.iLastEventId = {$iLastActivityId};
335  oSpy.iEventsCount = {$iActivityCount};
336  oSpy.iPerPage = {$this -> iPerPage};
337  oSpy.iSlideDown = {$this -> _oConfig -> iSpeedToggleDown};
338  oSpy.iSlideUp = {$this -> _oConfig -> iSpeedToggleUp};
339  oSpy.sActivityType = '{$sType}';
340  oSpy.iProfileId = {$iProfileId};
341  oSpy.bUpdateAllowed = {$sActive};
342 
343  oSpy.PageUpdate();
344  });
345  </script>
346 JS;
347 
348  return $sOutputCode;
349  }
350 
357  function getActivityTypesToggles($sPageUrl = '')
358  {
359  //-- Generate the page toggle ellements -- //;
360  $aToggleItems = array (
361  'all' => _t( '_ch_spy_all_activity' ),
362  'content_activity' => _t( '_ch_spy_content_updates' ),
363  'profiles_activity' => _t( '_ch_spy_profiles_updates' ),
364  );
365 
366  // define page's mode;
367  $sExtraParam = null;
368  if( isset($_GET['mode']) ) {
369  $sExtraParam = '&mode=' . $_GET['mode'];
370  }
371 
372  //$sExtraParam = '?' . substr($sExtraParam,1);
373 
374  // define page's Url;
375  $sRequest = (!$sPageUrl) ? $this -> sPathToModule . $sExtraParam : $sPageUrl . $sExtraParam ;
376 
377  foreach( $aToggleItems AS $sKey => $sValue ) {
378  $aTopToggleEllements[$sValue] = array
379  (
380  'href' => $sRequest . '&spy_type=' . $sKey,
381  'dynamic' => false,
382  'active' => ( (isset($_GET['spy_type']) && $_GET['spy_type'] == $sKey)
383  || !isset($_GET['spy_type']) && $sKey == 'all' ) ? true : false,
384  );
385  }
386 
387  return ChWsbPageView::getBlockCaptionItemCode(time(), $aTopToggleEllements );
388  }
389 
397  {
398  $oResponse = new ChSpyResponseContent($this);
399  $oResponse -> response($oAlert);
400  }
401 
403  {
404  $oResponse = new ChSpyResponseProfiles($this);
405  $oResponse -> response($oAlert);
406  }
407 
408  function serviceUpdateHandlers($sModuleUri = 'all', $bInstall = true)
409  {
410  $aModules = $sModuleUri == 'all' ? $this -> _oDb -> getModules() : array($this->_oDb->getModuleByUri($sModuleUri));
411 
412  foreach($aModules as $aModule) {
413  if(!ChWsbRequest::serviceExists($aModule, 'get_spy_data'))
414  continue;
415 
416  $aData = ChWsbService::call($aModule['uri'], 'get_spy_data');
417  if($bInstall)
418  $this -> _oDb -> insertData($aData);
419  else
420  $this -> _oDb -> deleteData($aData);
421  }
422 
424  }
425 
433  function serviceGetSpyBlock($sPage = 'index.php', $iProfileId = 0)
434  {
435  //-- process external vars --//
436  return $this -> _getSpyBlock(array(
437  'page_url' => rawurlencode($sPage),
438  'profile' => (int)$iProfileId
439  ));
440  }
441 
443  {
444  $this->sSpyMode = 'friends_events';
445 
446  $sPageUrl = 'viewFriends.php?iUser=' . $iProfileId;
447  return $this -> _getSpyBlock(array(
448  'page_url' => $sPageUrl,
449  'profile' => (int)$iProfileId
450  ));
451  }
452 
459  {
460  $sOutputCode = null;
461  // define member's Id;
462  $iProfileId = $this -> getUserId();
463 
464  if(!$iProfileId) {
465  return;
466  }
467 
468  // get only member's activity;
469  $this -> oSearch -> aCurrent['restriction']['only_me']['value'] = $iProfileId;
470  $this -> oSearch -> aCurrent['paginate']['limit'] = $this -> _oConfig -> iMemberMenuNotifyCount;
471 
472  // get data;
473  $aActivites = $this -> oSearch -> getSearchData();
474 
475  // proccess recived data;
476  if($aActivites) {
477  // procces all activites;
478  $sOutputCode = $this -> _proccesActivites($aActivites, '', false, false, 'spy_events_wrapper_menu_member');
479  $sOutputCode .= $this->_oTemplate->parseHtmlByName('member_menu_link.html', array(
480  'link' => $this->_oConfig->getBaseUri(),
481  'caption' => _t('_ch_spy_view_all'),
482  ));
483  } else {
484  $sOutputCode = MsgBox( _t('_Empty') );
485  }
486 
487  echo $this -> _oTemplate -> addCss('spy.css', true);
488  echo $sOutputCode;
489  }
490 
499  function serviceGetMemberMenuBubblesData($iOldCount)
500  {
502 
503  $iOldCount = (int) $iOldCount;
504  $iNewNotifyCount = 0;
505  $aNotifyMessages = array();
506 
507  // define member's Id;
508  $iProfileId = $this -> getUserId();
509 
510  if($iProfileId) {
511  // get all profile's notifications;
512  $this -> oSearch -> aCurrent['restriction']['only_me']['value'] = $iProfileId;
513  $this -> oSearch -> aCurrent['restriction']['type']['value'] = '';
514  // get all unviewed data;
515  $this -> oSearch -> aCurrent['restriction']['viewed']['value'] = array(0);
516  $this -> oSearch -> aCurrent['paginate']['unlimit'] = true;
517 
518  // get data;
519  $aActivites = $this -> oSearch -> getSearchData();
520 
521  if($aActivites) {
522  $aActivites = array_reverse($aActivites);
523  $iNewNotifyCount = count($aActivites);
524 
525  // if have some difference;
526  if ($iNewNotifyCount > $iOldCount) {
527  // generate notify messages;
528  for( $i = $iOldCount; $i < $iNewNotifyCount; $i++) {
529  $aTemp[] = $aActivites[$i];
530  $sMessage = $this -> _proccesActivites($aTemp);
531  unset($aTemp);
532  $aNotifyMessages[] = array(
533  'message' => $oSysTemplate -> parseHtmlByName('member_menu_notify_window.html', array('message' => $sMessage))
534  );
535  }
536  }
537  }
538  }
539 
540  $sCode = 'var _sRandom = Math.random(); $.get("' . $this -> sPathToModule . 'set_as_read&_random=" + _sRandom);';
541  $aRetEval = array(
542  'count' => $iNewNotifyCount,
543  'messages' => $aNotifyMessages,
544  'onlclick_script' => $aActivites ? $sCode : '',
545  );
546 
547  return $aRetEval;
548  }
549 
557  function _parseParameters($sKey, &$aParameters)
558  {
559  if( $aParameters and is_array($aParameters) ) {
560  foreach($aParameters as $sArrayKey => $aItems) {
561  $sKey = str_replace('{' . $sArrayKey . '}', $aParameters[$sArrayKey], $sKey);
562  }
563  }
564 
565  return $sKey;
566  }
567 
579  {
580  if(!isset($aVars['active']))
581  $aVars['active'] = false;
582  if(!isset($aVars['dynamic']))
583  $aVars['dynamic'] = ch_get('dynamic') !== false;
584  if(!isset($aVars['type']))
585  $aVars['type'] = ch_get('type') !== false ? ch_get('type') : 'all';
586  if(!isset($aVars['page_ajax']))
587  $aVars['page_ajax'] = true;
588  if(!isset($aVars['page']))
589  $aVars['page'] = ch_get('page') !== false ? (int) ch_get('page') : 1;
590  $aVars['page']= $aVars['page'] > 0 ? $aVars['page'] : 1;
591 
592  //-- set search filter --//
593  $this -> oSearch -> aCurrent['restriction']['viewed']['value'] = '';
594  if($aVars['type'] != 'all')
595  $this -> oSearch -> aCurrent['restriction']['type']['value'] = process_db_input($aVars['type'], CH_TAGS_STRIP);
596 
597  switch($this->sSpyMode) {
598  case 'friends_events':
599  $this -> oSearch -> aCurrent['join']['friends_data'] = array(
600  'type' => 'INNER',
601  'table' => $this -> _oDb -> sTablePrefix . 'friends_data',
602  'mainField' => 'id',
603  'onField' => 'event_id',
604  'joinFields' => array(),
605  );
606 
607  $this -> oSearch -> aCurrent['restriction']['friends']['value'] = $aVars['profile'];
608  $this -> oSearch -> aCurrent['restriction']['no_my']['value'] = $aVars['profile'];
609  break;
610 
611  default:
612  //--- get only member's activity ---//
613  if($aVars['profile'])
614  $this -> oSearch -> aCurrent['restriction']['only_me']['value'] = $aVars['profile'];
615  }
616 
617  //-- get data --//
618  $aActivites = $this -> oSearch -> getSearchData();
619  $sActivites = $this -> _proccesActivites($aActivites);
620 
621  $sOutputCode = $this->_oTemplate->getWrapper($this -> sEventsWrapper, $aActivites ? $sActivites : MsgBox(_t('_Empty')));
622 
623  //-- process pagination URL --//
624  $sPaginate = '';
625  if($this -> oSearch -> aCurrent['paginate']['totalNum'] > $this -> _oConfig -> iPerPage) {
626  $aVars['page_url'] .= (strpos($aVars['page_url'], '?') === false ? '?' : '&amp;') . 'type=' . $aVars['type'] . '&page={page}&per_page={per_page}';
627 
628  $sOnClick = '';
629  if($aVars['page_ajax'])
630  $sOnClick = 'return !loadDynamicBlock({id}, \'' . $aVars['page_url'] . '\')';
631 
632  $oPaginate = new ChWsbPaginate(array(
633  'page_url' => $aVars['page_url'],
634  'count' => $this -> oSearch -> aCurrent['paginate']['totalNum'],
635  'per_page' => $this -> _oConfig -> iPerPage,
636  'page' => $aVars['page'],
637  'on_change_page' => $sOnClick,
638  ));
639 
640  $sPaginate = $oPaginate -> getSimplePaginate(null, -1, -1, false);
641  }
642 
643  if($aVars['dynamic'])
644  header('Content-Type: text/html; charset=utf-8');
645  else
646  $this ->_oTemplate->addCss('spy.css');
647 
648  //-- check init part --//
649  if($aVars['page'] == 1)
650  $sOutputCode = $this -> getInitPart($aVars['type'], $aVars['profile'], $aVars['active']) . $sOutputCode;
651  return array($sOutputCode, array(), $sPaginate, true);
652  }
653 
662  function _proccesActivites($aActivites, $sExtraStyles = '', $inArray = false, $bSetViewed = false, $sExtraCssClass = null)
663  {
664  $sOutputCode = null;
665  $aProcessedActivites = array();
666 
667  if( is_array($aActivites) ) {
668  foreach($aActivites as $iKey => $aItems) {
669  $aParams = unserialize($aItems['params']);
670 
671  if($bSetViewed) {
672  $this -> _oDb -> setViewed($aItems['id']);
673  }
674 
675  // procces activity text;
676  $sActivity = $this -> _parseParameters( _t($aItems['lang_key']), $aParams );
677 
678  // define activity's sender;
679  if($aItems['sender_id']) {
680  $aTemplateKeys = array(
681  'sender_thumb' => get_member_icon($aItems['sender_id'], 'none'),
682  'event_caption' => $sActivity,
683  'extra_styles' => $sExtraStyles,
684  'extra_css_class' => $sExtraCssClass,
685  'date_add' => getLocaleDate( strtotime($aItems['date']), CH_WSB_LOCALE_DATE),
686  );
687 
688  $sTemplateName = 'activity.html';
689  } else {
690  $aTemplateKeys = array(
691  'event_caption' => $sActivity,
692  'extra_styles' => $sExtraStyles,
693  'extra_css_class' => $sExtraCssClass,
694  'date_add' => getLocaleDate( strtotime($aItems['date']), CH_WSB_LOCALE_DATE),
695  );
696 
697  $sTemplateName = 'non_member_activity.html';
698  }
699 
700  // build data;
701  if(!$inArray) {
702  $sOutputCode .= $this -> _oTemplate -> parseHtmlByName($sTemplateName, $aTemplateKeys);
703  } else {
704  $aProcessedActivites[] = array(
705  'event' => $this -> _oTemplate -> parseHtmlByName($sTemplateName, $aTemplateKeys),
706  );
707  }
708  }
709  }
710 
711  return (!$inArray) ? $sOutputCode : $aProcessedActivites;
712  }
713  }
ChSpyModule\_proccesActivites
_proccesActivites($aActivites, $sExtraStyles='', $inArray=false, $bSetViewed=false, $sExtraCssClass=null)
Definition: ChSpyModule.php:662
process_db_input
process_db_input($sText, $iStripTags=0)
Definition: utils.inc.php:256
header
</code > Be careful enabling this directive if you have a redirector script that does not use the< code > Location</code > HTTP header
Definition: URI.MungeResources.txt:10
ChSpyResponseContent
Definition: ChSpyResponseContent.php:11
CH_WSB_LOCALE_DATE
const CH_WSB_LOCALE_DATE
Definition: utils.inc.php:16
$oSettings
$oSettings
Definition: advanced_settings.php:20
ChWsbPageView\getBlockCaptionItemCode
static getBlockCaptionItemCode( $iBlockID, $aLinks)
Definition: ChWsbPageView.php:502
document
Output SortAttr HTML Purifier will sort attributes by name before writing them back to the document
Definition: Output.SortAttr.txt:8
$sMessage
$sMessage
Definition: actions.inc.php:17
ChSpyModule\_getSpyBlock
_getSpyBlock($aVars)
Definition: ChSpyModule.php:578
$sMode
else $sMode
Definition: antispam.php:362
MsgBox
MsgBox($sText, $iTimer=0)
Definition: design.inc.php:175
ChWsbRequest\serviceExists
static serviceExists($mixedModule, $sMethod, $sClass="Module")
Definition: ChWsbRequest.php:70
ch_js_string
ch_js_string($mixedInput, $iQuoteType=CH_ESCAPE_STR_AUTO)
Definition: utils.inc.php:1294
get_member_icon
get_member_icon($ID, $float='none', $bGenProfLink=false)
Definition: design.inc.php:170
$sCode
$sCode
Definition: explanation.php:19
$sResult
$sResult
Definition: advanced_settings.php:26
ChWsbModule\getUserId
getUserId()
Definition: ChWsbModule.php:122
$aModule
$aModule
Definition: classifieds.php:21
ChSpyModule\$iPage
$iPage
Definition: ChSpyModule.php:84
ch_import
ch_import($sClassName, $aModule=array())
Definition: utils.inc.php:1218
ChSpyModule\$aModuleInfo
$aModuleInfo
Definition: ChSpyModule.php:69
ch_get
ch_get($sName)
Definition: utils.inc.php:1664
$oAlert
$oAlert
Definition: embed.php:15
ChSpyModule\actionSetAsRead
actionSetAsRead()
Definition: ChSpyModule.php:183
php
ChSpyModule\$oSearch
$oSearch
Definition: ChSpyModule.php:75
ChSpyModule\$sEventsWrapper
$sEventsWrapper
Definition: ChSpyModule.php:82
isAdmin
isAdmin()
Definition: index.php:649
ChSpyModule\serviceGetMemberMenuBubblesData
serviceGetMemberMenuBubblesData($iOldCount)
Definition: ChSpyModule.php:499
ChSpyModule\__construct
__construct(&$aModule)
Definition: ChSpyModule.php:100
ChSpyModule\serviceUpdateHandlers
serviceUpdateHandlers($sModuleUri='all', $bInstall=true)
Definition: ChSpyModule.php:408
ChSpyModule\actionGetMemberBlock
actionGetMemberBlock($sActivityType='')
Definition: ChSpyModule.php:262
exit
exit
Definition: cart.php:21
$sType
$sType
Definition: actions.inc.php:11
$_GET
$_GET['debug']
Definition: index.php:67
and
and
Definition: license.txt:18
ChSpyModule\getActivityTypesToggles
getActivityTypesToggles($sPageUrl='')
Definition: ChSpyModule.php:357
getLoggedId
getLoggedId()
Definition: profiles.inc.php:32
ChSpySearch
Definition: ChSpySearch.php:13
ChSpyModule\serviceResponseContent
serviceResponseContent($oAlert)
Definition: ChSpyModule.php:396
ChSpyModule
Definition: ChSpyModule.php:67
charset
charset
Definition: Filter.ExtractStyleBlocks.txt:19
ChSpyModule\getInitPart
getInitPart($sType='', $iProfileId=0, $bActive=true)
Definition: ChSpyModule.php:307
ChSpyModule\_parseParameters
_parseParameters($sKey, &$aParameters)
Definition: ChSpyModule.php:557
type
if(!defined("USER_STATUS_TYPE")) define("USER_STATUS_TYPE" type
Definition: constants.inc.php:13
ChSpyModule\$iPerPage
$iPerPage
Definition: ChSpyModule.php:85
global
if(!defined("GLOBAL_MODULE")) define("GLOBAL_MODULE" global
Definition: header.inc.php:25
ChWsbModule
Definition: ChWsbModule.php:41
$sContent
$sContent
Definition: bottom_menu_compose.php:169
_t
_t($key, $arg0="", $arg1="", $arg2="")
Definition: languages.inc.php:509
time
that in the case of a Adaptation or at a minimum such credit will if a credit for all contributing authors of the Adaptation or Collection then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors For the avoidance of You may only use the credit required by this Section for the purpose of attribution in the manner set out above by exercising Your rights under this You may not implicitly or explicitly assert or imply any connection sponsorship or endorsement by the Original Licensor and or Attribution as of You or Your use of the without the express prior written permission of the Original Licensor and or Attribution Parties Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable if You Distribute or Publicly Perform the Work either by itself or as part of any Adaptations or You must not modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author s honor or reputation Licensor agrees that in those in which any exercise of the right granted in modification or other derogatory action prejudicial to the Original Author s honor and the Licensor will waive or not as this to the fullest extent permitted by the applicable national to enable You to reasonably exercise Your right under Warranties and Disclaimer UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN LICENSOR OFFERS THE WORK AS IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE STATUTORY OR WITHOUT WARRANTIES OF FITNESS FOR A PARTICULAR OR THE ABSENCE OF LATENT OR OTHER OR THE PRESENCE OF ABSENCE OF WHETHER OR NOT DISCOVERABLE SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED SO SUCH EXCLUSION MAY NOT APPLY TO YOU Limitation on Liability EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES Termination This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License Individuals or entities who have received Adaptations or Collections from You under this will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses and will survive any termination of this License Subject to the above terms and the license granted here is Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time
Definition: license.txt:56
member_auth
member_auth($member=0, $error_handle=true, $bAjx=false)
Definition: admin.inc.php:262
$aMenu
$aMenu
Definition: categories.php:257
ChWsbAdminSettings
Definition: ChWsbAdminSettings.php:35
ChSpyModule\$iMemberId
$iMemberId
Definition: ChSpyModule.php:80
CH_TAGS_STRIP
const CH_TAGS_STRIP
Definition: utils.inc.php:22
$aVars
$aVars
Definition: license.php:101
ChSpyModule\serviceResponseProfiles
serviceResponseProfiles($oAlert)
Definition: ChSpyModule.php:402
ChSpyModule\serviceGetSpyBlockFriends
serviceGetSpyBlockFriends($iProfileId=0)
Definition: ChSpyModule.php:442
$aModules
$aModules
Definition: constants.inc.php:29
ChSpyModule\$sSpyMode
$sSpyMode
Definition: ChSpyModule.php:77
ChWsbAlerts\cache
static cache()
Definition: ChWsbAlerts.php:106
ChSpyModule\actionAdministration
actionAdministration()
Definition: ChSpyModule.php:129
default
Attr AllowedFrameTargets _parent and _top Values should be as validation will be done in a case sensitive manner despite W3C s recommendation XHTML Strict does not permit the target attribute so this directive will have no effect in that doctype XHTML does not enable the Target module by default
Definition: Attr.AllowedFrameTargets.txt:10
ChSpyModule\serviceGetSpyBlock
serviceGetSpyBlock($sPage='index.php', $iProfileId=0)
Definition: ChSpyModule.php:433
ChSpyModule\$sPathToModule
$sPathToModule
Definition: ChSpyModule.php:72
$sActivityType
$sActivityType
Definition: index.php:19
ChSpyModule\actionCheckUpdates
actionCheckUpdates($sMode='global', $iLastActivityId=0, $sType='', $iProfileId=0)
Definition: ChSpyModule.php:196
ChSpyModule\getActivityPage
getActivityPage($iProfile=0, $sType='')
Definition: ChSpyModule.php:273
ChSpyResponseProfiles
Definition: ChSpyResponseProfiles.php:11
$sAction
$sAction
Definition: categories.php:274
$oSysTemplate
$oSysTemplate
Definition: params.inc.php:22
empty
Attr AllowedRel this is empty
Definition: Attr.AllowedRel.txt:7
ChWsbService\call
static call($mixed, $sMethod, $aParams=array(), $sClass='Module')
Definition: ChWsbService.php:32
getLocaleDate
getLocaleDate($sTimestamp='', $iCode=CH_WSB_LOCALE_DATE_SHORT)
Definition: utils.inc.php:70
as
as
Definition: Filter.ExtractStyleBlocks.Escaping.txt:10
$iProfileId
if( $sMembersList) $iProfileId
Definition: communicator.php:29
$aParameters
$aParameters
Definition: index.php:29
$GLOBALS
$GLOBALS['iAdminPage']
Definition: advanced_settings.php:10
ChSpyModule\serviceGetMemberMenuSpyData
serviceGetMemberMenuSpyData()
Definition: ChSpyModule.php:458