Cheetah
ChH5avModule.php
Go to the documentation of this file.
1 <?php
2 
8 ch_import('ChWsbModule');
9 
10 define('CH_H5AV_FALLBACK', true);
11 
12 define('CH_H5AV_VIDEO_EMBED_HEIGHT', 315);
13 define('CH_H5AV_VIDEO_EMBED_WIDTH', 560);
14 
15 define('CH_H5AV_AUDIO_EMBED_HEIGHT', 54);
16 define('CH_H5AV_AUDIO_EMBED_WIDTH', 560);
17 
19 {
20 
21  function __construct(&$aModule)
22  {
23  parent::__construct($aModule);
24  }
25 
26  function actionVideoEmbed ($iFileId = 0)
27  {
28  list($sPlayer, $sMessage) = $this->getVideoPlayer ($iFileId, false, false, 'height:' . CH_H5AV_VIDEO_EMBED_HEIGHT . 'px;');
29  echo $this->_oTemplate->parseHtmlByName('embed.html', array(
30  'body' => $sPlayer,
31  'ch_if:message' => array(
32  'condition' => !(bool)$sPlayer,
33  'content' => array('message' => $sMessage),
34  )
35  ));
36  }
37 
38  function actionAudioEmbed ($iFileId = 0)
39  {
40  list($sPlayer, $sMessage) = $this->getAudioPlayer ($iFileId, false, 'height:' . CH_H5AV_AUDIO_EMBED_HEIGHT . 'px;');
41  echo $this->_oTemplate->parseHtmlByName('embed.html', array(
42  'body' => $sPlayer,
43  'ch_if:message' => array(
44  'condition' => !(bool)$sPlayer,
45  'content' => array('message' => $sMessage),
46  )
47  ));
48  }
49 
54  {
55  if (!($iFileId = (int)$oAlert->iObject))
56  return false;
57 
58  $oAlert->aExtras['override'] = '<iframe width="' . CH_H5AV_AUDIO_EMBED_WIDTH . '" height="' . CH_H5AV_AUDIO_EMBED_HEIGHT . '" src="' . CH_WSB_URL_ROOT . $this->_oConfig->getBaseUri() . 'audio_embed/' . $iFileId . '" frameborder="0" allowfullscreen></iframe>';
59 
60  return true;
61  }
62 
67  {
68  if (!($iFileId = (int)$oAlert->iObject))
69  return false;
70 
71  if (!($aFile = $this->_oDb->getRow("SELECT * FROM `RayVideoFiles` WHERE `ID` = ?", [$iFileId])))
72  return false;
73 
74  if ("" == $aFile['Source']) {
75  $oAlert->aExtras['override'] = '<iframe width="' . CH_H5AV_VIDEO_EMBED_WIDTH . '" height="' . CH_H5AV_VIDEO_EMBED_HEIGHT . '" src="' . CH_WSB_URL_ROOT . $this->_oConfig->getBaseUri() . 'video_embed/' . $iFileId . '" frameborder="0" allowfullscreen></iframe>';
76  }
77 
78  return true;
79  }
80 
85  {
86  if(!empty($oAlert->aExtras['extra']['ext']))
87  return true;
88 
89  if (!($iFileId = (int)$oAlert->iObject))
90  return false;
91 
92  list($sPlayer, $sMessage) = $this->getVideoPlayer ($iFileId);
93 
94  if ($sPlayer || $sMessage)
95  $oAlert->aExtras['override'] = ($sPlayer ? $sPlayer : $this->_oTemplate->addCss(array('default.css', 'common.css', 'general.css'), true) . MsgBox($sMessage));
96 
97  return true;
98  }
99 
100  function getVideoPlayer ($iFileId, $bEnableAutoplay = true, $bSetMaxHeight = true, $sCustomStyles = '')
101  {
102  if (!($aFile = $this->_oDb->getRow("SELECT * FROM `RayVideoFiles` WHERE `ID` = ?", [$iFileId])))
103  return array(false, _t('_sys_media_not_found'));
104 
109  global $oDb;
111 
112  require_once($sIncPath . 'db.inc.php');
113 
114  $sModule = "video";
115  $sModulePath = $sModulesPath . $sModule . '/inc/';
116 
117  require_once($sModulesPath . $sModule . '/inc/header.inc.php');
118  require_once($sModulesPath . $sModule . '/inc/constants.inc.php');
119  require_once($sModulesPath . $sModule . '/inc/functions.inc.php');
120  require_once($sModulesPath . $sModule . '/inc/customFunctions.inc.php');
121 
122  $aRet = array(false, false);
123  switch($aFile['Status']) {
124  case STATUS_PENDING:
125  case STATUS_PROCESSING:
126  $aRet = array(false, _t('_sys_media_processing'));
127  break;
128  case STATUS_DISAPPROVED:
129  if (!isAdmin()) {
130  $aRet = array(false, _t('_sys_media_disapproved'));
131  break;
132  }
133  case STATUS_APPROVED:
134  if (file_exists($sFilesPath . $iFileId . M4V_EXTENSION)) {
135 
137 
138  if (file_exists($sFilesPath . $iFileId . '.webm'))
139  $sSourceWebm = '<source type=\'video/webm; codecs="vp8, vorbis"\' src="' . CH_WSB_URL_ROOT . "flash/modules/video/get_file.php?id=" . $iFileId . "&ext=webm&token=" . $sToken . '" />';
140 
141  $sFlash = getApplicationContent('video','player',array('id' => $iFileId, 'user' => getLoggedId(), 'password' => clear_xss($_COOKIE['memberPassword'])),true);
142  $sId = 'ch-media-' . genRndPwd(8, false);
143  $sJs = $sSourceWebm ? // if no .webm video available - we need nice fallback in firefox and other browsers with no mp4 support
144  '' : '
145  var eMedia = document.createElement("video");
146  if (eMedia.canPlayType && !eMedia.canPlayType("video/x-m4v")) {
147  var sReplace = "' . ch_js_string(CH_H5AV_FALLBACK ? $sFlash : '<b>Your browser doesn\'t support this media playback.</b>', CH_ESCAPE_STR_QUOTE) . '";
148  $("#' . $sId . '").replaceWith(sReplace);
149  }';
150  $sJs .= $aFile['Time'] ? // if length is not set
151  '' : '
152  eFile.on("canplay", function (e) {
153  $.post("' . CH_WSB_URL_ROOT . 'flash/XML.php", {
154  module: "video",
155  action: "updateFileTime",
156  id: ' . $iFileId . ',
157  time: parseInt(this.duration * 1000)
158  });
159  });';
160 
161  $sAutoPlay = $bEnableAutoplay && TRUE_VAL == getSettingValue('video', 'autoPlay') && class_exists('ChVideosPageView') ? 'autoplay' : '';
162 
163  $sFilePoster = 'flash/modules/video/files/' . $iFileId . '.jpg';
164  $sPoster = file_exists(CH_DIRECTORY_PATH_ROOT . $sFilePoster) ? ' poster="' . CH_WSB_URL_ROOT . $sFilePoster . '" ' : '';
165 
166  $sStyleMaxHeight = $bSetMaxHeight ? 'max-height:' . getSettingValue('video', 'player_height') . 'px;' : '';
167 
168  $sPlayer = '
169  <video controls preload="metadata" autobuffer ' . $sAutoPlay . $sPoster . ' style="width:100%;' . $sStyleMaxHeight . $sCustomStyles . '" id="' . $sId . '">
170  ' . $sSourceWebm . '
171  <source src="' . CH_WSB_URL_ROOT . "flash/modules/video/get_file.php?id=" . $iFileId . "&ext=m4v&token=" . $sToken . '" />
172  ' . (CH_H5AV_FALLBACK ? $sFlash : '<b>Can not playback media - your browser doesn\'t support HTML5 audio/video tag.</b>') . '
173  </video>
174  <script>
175  var eFile = $("#' . $sId . '");
176  eFile.on("play", function () {
177  var ePlaying = this;
178  $("video").each(function () {
179  if (this != ePlaying)
180  this.pause();
181  });
182  });
183  ' . $sJs . '
184  </script>';
185  $aRet = array($sPlayer, '');
186  break;
187  }
188  case STATUS_FAILED:
189  default:
190  if (!CH_H5AV_FALLBACK || !file_exists($sFilesPath . $iFileId . FLV_EXTENSION))
191  $aRet = array(false, _t('_sys_media_not_found'));
192  break;
193  }
194 
195  return $aRet;
196  }
197 
202  {
203 
204  if (!($iFileId = (int)$oAlert->iObject))
205  return false;
206 
207  if (!$oAlert->aExtras['result'])
208  return true;
209 
210  $sFfmpegPath = $oAlert->aExtras['ffmpeg'];
211  $sTempFile = $oAlert->aExtras['tmp_file'];
212  $iBitrate = $oAlert->aExtras['bitrate'];
213  $sSize = $oAlert->aExtras['size'];
214  $sPlayFile = $sTempFile . '.webm';
215 
216  if (!file_exists($sTempFile))
217  $sTempFile .= '.flv';
218 
219  $sCommand = $sFfmpegPath . " -y -i " . $sTempFile . " -acodec libvorbis -b:a 128k -ar 44100 -b:v {$iBitrate}k -s {$sSize} " . $sPlayFile;
220  popen($sCommand, "r");
221 
222  return true;
223  }
224 
229  {
230  if (!($iFileId = (int)$oAlert->iObject))
231  return false;
232 
233  $oMain = ChWsbModule::getInstance('ChVideosModule');
234 
235  @unlink($oMain->_oConfig->getFilesPath() . $iFileId . '.webm');
236 
237  return true;
238  }
239 
244  {
245  if (!($iFileId = (int)$oAlert->iObject))
246  return false;
247 
248  list($sPlayer, $sMessage) = $this->getAudioPlayer ($iFileId);
249 
250  if ($sPlayer || $sMessage)
251  $oAlert->aExtras['override'] = ($sPlayer ? $sPlayer : $this->_oTemplate->addCss(array('default.css', 'common.css', 'general.css'), true) . MsgBox($sMessage));
252 
253  return true;
254  }
255 
256  function getAudioPlayer ($iFileId, $bEnableAutoplay = true, $sCustomStyles = '')
257  {
258  if (!($aFile = $this->_oDb->getRow("SELECT * FROM `RayMp3Files` WHERE `ID` = ?", [$iFileId])))
259  return array(false, _t('_sys_media_not_found'));
260 
266  global $oDb;
268 
269  require_once($sIncPath . 'db.inc.php');
270 
271  $sModule = "mp3";
272  $sModulePath = $sModulesPath . $sModule . '/inc/';
273 
274  require_once($sModulesPath . $sModule . '/inc/header.inc.php');
275  require_once($sModulesPath . $sModule . '/inc/constants.inc.php');
276  require_once($sModulesPath . $sModule . '/inc/functions.inc.php');
277  require_once($sModulesPath . $sModule . '/inc/customFunctions.inc.php');
278 
279  $aRet = array(false, false);
280  switch($aFile['Status']) {
281  case STATUS_PENDING:
282  case STATUS_PROCESSING:
283  $aRet = array(false, _t('_sys_media_processing'));
284  break;
285  case STATUS_DISAPPROVED:
286  if (!isAdmin()) {
287  $aRet = array(false, _t('_sys_media_disapproved'));
288  break;
289  }
290  case STATUS_APPROVED:
291  if (file_exists($GLOBALS['sFilesPathMp3'] . $iFileId . MP3_EXTENSION)) {
292 
294 
295  if (file_exists($GLOBALS['sFilesPathMp3'] . $iFileId . '.ogg'))
296  $sSourceOgg = '<source type=\'audio/ogg; codecs="vorbis"\' src="' . CH_WSB_URL_ROOT . "flash/modules/mp3/get_file.php?id=" . $iFileId . "&token=" . $sToken . '&ext=ogg" />';
297 
298  $sFlash = getApplicationContent('mp3', 'player', array('id' => $iFileId, 'user' => getLoggedId(), 'password' => clear_xss($_COOKIE['memberPassword'])), true);
299  $sId = 'ch-media-' . genRndPwd(8, false);
300  $sJs = $sSourceOgg ? // if no .ogg audio available - we need nice fallback in firefox and other browsers with no mp3 support
301  '' : '
302  var eMedia = document.createElement("audio");
303  if (eMedia.canPlayType && !eMedia.canPlayType("audio/mpeg")) {
304  var sReplace = "' . ch_js_string(CH_H5AV_FALLBACK ? $sFlash : '<b>Your browser doesn\'t support this media playback.</b>', CH_ESCAPE_STR_QUOTE) . '";
305  $("#' . $sId . '").replaceWith(sReplace);
306  }';
307  $sJs .= $aFile['Time'] ? // if length is not set
308  '' : '
309  eFile.on("canplay", function (e) {
310  $.post("' . CH_WSB_URL_ROOT . 'flash/XML.php", {
311  module: "mp3",
312  action: "updateFileTime",
313  id: ' . $iFileId . ',
314  time: parseInt(this.duration * 1000)
315  });
316  });';
317  $sAutoPlay = $bEnableAutoplay && TRUE_VAL == getSettingValue('mp3', 'autoPlay') && class_exists('ChSoundsPageView') ? 'autoplay' : '';
318  $sPlayer = '
319  <audio controls ' . $sAutoPlay . ' preload="metadata" autobuffer style="width:100%; ' . $sCustomStyles . '" id="' . $sId . '">
320  <source type=\'audio/mpeg; codecs="mp3"\' src="' . CH_WSB_URL_ROOT . "flash/modules/mp3/get_file.php?id=" . $iFileId . "&token=" . $sToken . '" />
321  ' . $sSourceOgg . '
322  ' . (CH_H5AV_FALLBACK ? $sFlash : '<b>Can not playback media - your browser doesn\'t support HTML5 audio/video tag.</b>') . '
323  </audio>
324  <script>
325  var eFile = $("#' . $sId . '");
326  eFile.on("play", function () {
327  var ePlaying = this;
328  $("audio").each(function () {
329  if (this != ePlaying)
330  this.pause();
331  });
332  });
333  ' . $sJs . '
334  </script>';
335  $aRet = array($sPlayer, '');
336  break;
337  }
338  case STATUS_FAILED:
339  default:
340  $aRet = array(false, _t('_sys_media_not_found'));
341  break;
342  }
343 
344  return $aRet;
345  }
346 
351  {
352  if (!($iFileId = (int)$oAlert->iObject))
353  return false;
354 
355  if (!$oAlert->aExtras['result'])
356  return true;
357 
358  $sFfmpegPath = $oAlert->aExtras['ffmpeg'];
359  $sTempFile = $oAlert->aExtras['tmp_file'];
360  $iBitrate = $oAlert->aExtras['bitrate'];
361  $sPlayFile = $sTempFile . '.ogg';
362 
363  $sCommand = $sFfmpegPath . " -y -i " . $sTempFile . MP3_EXTENSION . " -vn -b:a " . $iBitrate . "k -acodec libvorbis " . $sPlayFile;
364  popen($sCommand, "r");
365 
366  return true;
367  }
368 
373  {
374  if (!($iFileId = (int)$oAlert->iObject))
375  return false;
376 
377  $oMain = ChWsbModule::getInstance('ChSoundsModule');
378 
379  @unlink($oMain->_oConfig->getFilesPath() . $iFileId . '.ogg');
380 
381  return true;
382  }
383 
388  {
389  if (!($iFileId = (int)$oAlert->iObject))
390  return false;
391 
392  if (!($aFile = $this->_oDb->getRow("SELECT * FROM `RayVideo_commentsFiles` WHERE `ID` = ?", [$iFileId])))
393  return false;
394 
399  global $oDb;
400 
401  require_once($sIncPath . 'db.inc.php');
402 
403  $sModule = "video_comments";
404  $sModulePath = $sModulesPath . $sModule . '/inc/';
405 
406  require_once($sModulesPath . $sModule . '/inc/header.inc.php');
407  require_once($sModulesPath . $sModule . '/inc/constants.inc.php');
408  require_once($sModulesPath . $sModule . '/inc/functions.inc.php');
409  require_once($sModulesPath . $sModule . '/inc/customFunctions.inc.php');
410 
411  $sOverride = false;
412  switch($aFile['Status']) {
413  case VC_STATUS_DISAPPROVED:
414  $sOverride = $this->_oTemplate->addCss(array('default.css', 'common.css', 'general.css'), true) . MsgBox(_t('_sys_media_disapproved'));
415  break;
416  case VC_STATUS_PENDING:
417  case VC_STATUS_PROCESSING:
418  $sOverride = $this->_oTemplate->addCss(array('default.css', 'common.css', 'general.css'), true) . MsgBox(_t('_sys_media_processing'));
419  break;
420  case VC_STATUS_APPROVED:
421  if (file_exists($sFilesPath . $iFileId . VC_M4V_EXTENSION)) {
422 
424 
425  if (file_exists($sFilesPath . $iFileId . '.webm'))
426  $sSourceWebm = '<source type=\'video/webm; codecs="vp8, vorbis"\' src="' . CH_WSB_URL_ROOT . "flash/modules/video_comments/get_file.php?id=" . $iFileId . "&ext=webm&token=" . $sToken . '" />';
427 
428  $sFlash = $oAlert->aExtras['data'];
429  $sId = 'ch-media-' . genRndPwd(8, false);
430  $sOverride = '
431  <video controls preload="metadata" autobuffer id="' . $sId . '">
432  ' . $sSourceWebm . '
433  <source src="' . CH_WSB_URL_ROOT . "flash/modules/video_comments/get_file.php?id=" . $iFileId . "&ext=m4v&token=" . $sToken . '" />
434  ' . (CH_H5AV_FALLBACK ? $sFlash : '<b>Can not playback media - your browser doesn\'t support HTML5 audio/video tag.</b>') . '
435  </video>' .
436  ($sSourceWebm ? // if no .webm video available - we need nice fallback in firefox and other browsers with no mp4 support
437  '' :
438  '<script>
439  var eMedia = document.createElement("video");
440  if (eMedia.canPlayType && !eMedia.canPlayType("video/x-m4v")) {
441  var sReplace = "' . ch_js_string(CH_H5AV_FALLBACK ? $sFlash : '<b>Your browser doesn\'t support this media playback.</b>', CH_ESCAPE_STR_QUOTE) . '";
442  $("#' . $sId . '").replaceWith(sReplace);
443  }
444  </script>');
445  break;
446  }
447  case VC_STATUS_FAILED:
448  default:
449  if (!CH_H5AV_FALLBACK || !file_exists($sFilesPath . $iFileId . FLV_EXTENSION))
450  $sOverride = $this->_oTemplate->addCss(array('default.css', 'common.css', 'general.css'), true) . MsgBox(_t('_sys_media_not_found'));
451  break;
452  }
453 
454  if ($sOverride)
455  $oAlert->aExtras['data'] = $sOverride;
456 
457  return true;
458  }
459 
464  {
465 
466  if (!($iFileId = (int)$oAlert->iObject))
467  return false;
468 
469  if (!$oAlert->aExtras['result'])
470  return true;
471 
472  $sFfmpegPath = $oAlert->aExtras['ffmpeg'];
473  $sTempFile = $oAlert->aExtras['tmp_file'];
474  $iBitrate = $oAlert->aExtras['bitrate'];
475  $sSize = $oAlert->aExtras['size'];
476  $sPlayFile = $sTempFile . '.webm';
477 
478  $sCommand = $sFfmpegPath . " -y -i " . $sTempFile . " -acodec libvorbis -b:a 128k -ar 44100 -b:v {$iBitrate}k -s {$sSize} " . $sPlayFile;
479  popen($sCommand, "r");
480 
481  return true;
482  }
483 
488  {
489  if (!($iFileId = (int)$oAlert->iObject))
490  return false;
491 
492  @unlink($oAlert->aExtras['files_path'] . $iFileId . '.webm');
493 
494  return true;
495  }
496 }
$sFilesPathMp3
global $sFilesPathMp3
Definition: ChWsbCronMp3.php:19
$sMessage
$sMessage
Definition: actions.inc.php:17
$sToken
$sToken
Definition: get_file.php:13
CH_H5AV_VIDEO_EMBED_HEIGHT
const CH_H5AV_VIDEO_EMBED_HEIGHT
Definition: ChH5avModule.php:12
CH_H5AV_AUDIO_EMBED_WIDTH
const CH_H5AV_AUDIO_EMBED_WIDTH
Definition: ChH5avModule.php:16
ChH5avModule\actionAudioEmbed
actionAudioEmbed($iFileId=0)
Definition: ChH5avModule.php:38
$sModulePath
$sModulePath
Definition: ChSoundsUploader.php:21
MsgBox
MsgBox($sText, $iTimer=0)
Definition: design.inc.php:175
ChWsbModule\getInstance
static getInstance($sClassName)
Definition: ChWsbModule.php:89
ch_js_string
ch_js_string($mixedInput, $iQuoteType=CH_ESCAPE_STR_AUTO)
Definition: utils.inc.php:1294
$sIncPath
$sIncPath
Definition: header.inc.php:64
$aModule
$aModule
Definition: classifieds.php:21
ChH5avModule\serviceResponseCmtsPlayer
serviceResponseCmtsPlayer($oAlert)
Definition: ChH5avModule.php:387
$sFilesUrl
$sFilesUrl
Definition: header.inc.php:11
ChH5avModule\serviceResponseVideoConvert
serviceResponseVideoConvert($oAlert)
Definition: ChH5avModule.php:201
ch_import
ch_import($sClassName, $aModule=array())
Definition: utils.inc.php:1218
ChH5avModule\serviceResponseVideoDelete
serviceResponseVideoDelete($oAlert)
Definition: ChH5avModule.php:228
$oAlert
$oAlert
Definition: embed.php:15
php
$sModule
if(!file_exists($sRayHeaderPath)) $sModule
Definition: index.php:14
_getToken
_getToken($sId)
Definition: functions.inc.php:264
ChH5avModule\serviceResponseAudioPlayer
serviceResponseAudioPlayer($oAlert)
Definition: ChH5avModule.php:243
$sModulesPath
$sModulesPath
Definition: header.inc.php:53
isAdmin
isAdmin()
Definition: index.php:649
ChH5avModule\actionVideoEmbed
actionVideoEmbed($iFileId=0)
Definition: ChH5avModule.php:26
ChH5avModule
Definition: ChH5avModule.php:19
ChH5avModule\serviceResponseCmtsConvert
serviceResponseCmtsConvert($oAlert)
Definition: ChH5avModule.php:463
ChH5avModule\serviceResponseAudioEmbed
serviceResponseAudioEmbed($oAlert)
Definition: ChH5avModule.php:53
ChH5avModule\serviceResponseAudioConvert
serviceResponseAudioConvert($oAlert)
Definition: ChH5avModule.php:350
getLoggedId
getLoggedId()
Definition: profiles.inc.php:32
CH_H5AV_FALLBACK
const CH_H5AV_FALLBACK
Definition: ChH5avModule.php:10
CH_ESCAPE_STR_QUOTE
const CH_ESCAPE_STR_QUOTE
escape quotes only, for js strings enclosed in quotes, for use in
Definition: utils.inc.php:34
$oDb
global $oDb
Definition: db.inc.php:39
getMp3Token
getMp3Token($sId)
Definition: functions.inc.php:211
genRndPwd
genRndPwd($iLength=8, $bSpecialCharacters=true)
Definition: utils.inc.php:1618
global
if(!defined("GLOBAL_MODULE")) define("GLOBAL_MODULE" global
Definition: header.inc.php:25
ChWsbModule
Definition: ChWsbModule.php:41
_t
_t($key, $arg0="", $arg1="", $arg2="")
Definition: languages.inc.php:509
getApplicationContent
getApplicationContent($sModule, $sApp, $aParamValues=array(), $bInline=false, $bEmbedCode=false, $sHtmlId="")
Definition: content.inc.php:166
ChH5avModule\getAudioPlayer
getAudioPlayer($iFileId, $bEnableAutoplay=true, $sCustomStyles='')
Definition: ChH5avModule.php:256
$sFfmpegPath
$sFfmpegPath
Definition: header.inc.php:60
$sId
$sId
Definition: actions.inc.php:8
ChH5avModule\getVideoPlayer
getVideoPlayer($iFileId, $bEnableAutoplay=true, $bSetMaxHeight=true, $sCustomStyles='')
Definition: ChH5avModule.php:100
$iFileId
$iFileId
Definition: embed.php:12
ChH5avModule\serviceResponseCmtsDelete
serviceResponseCmtsDelete($oAlert)
Definition: ChH5avModule.php:487
ChH5avModule\serviceResponseVideoEmbed
serviceResponseVideoEmbed($oAlert)
Definition: ChH5avModule.php:66
getSettingValue
getSettingValue($sWidget, $sSettingKey, $sFile="config", $bFullReturn=false, $sFolder="xml")
Definition: apiFunctions.inc.php:82
CH_H5AV_AUDIO_EMBED_HEIGHT
const CH_H5AV_AUDIO_EMBED_HEIGHT
Definition: ChH5avModule.php:15
$sFilesPath
$sFilesPath
Definition: header.inc.php:10
ChH5avModule\__construct
__construct(&$aModule)
Definition: ChH5avModule.php:21
getToken
getToken($sId)
Definition: functions.inc.php:429
empty
Attr AllowedRel this is empty
Definition: Attr.AllowedRel.txt:7
ChH5avModule\serviceResponseAudioDelete
serviceResponseAudioDelete($oAlert)
Definition: ChH5avModule.php:372
ChH5avModule\serviceResponseVideoPlayer
serviceResponseVideoPlayer($oAlert)
Definition: ChH5avModule.php:84
$GLOBALS
$GLOBALS['iAdminPage']
Definition: advanced_settings.php:10
clear_xss
clear_xss($val)
Definition: utils.inc.php:700
CH_H5AV_VIDEO_EMBED_WIDTH
const CH_H5AV_VIDEO_EMBED_WIDTH
Definition: ChH5avModule.php:13