<script type="text/javascript">
var WWW_DIR_JAVASCRIPT = '<?php 
echo erLhcoreClassDesign::baseurl();
?>
';
var WWW_DIR_JAVASCRIPT_FILES = '<?php 
echo erLhcoreClassDesign::design('sound');
?>
';
var confLH = {};
confLH.back_office_sinterval = 11000;
confLH.chat_message_sinterval = 3600;
confLH.new_chat_sound_enabled = 1;
confLH.new_message_sound_admin_enabled =1;
confLH.new_message_sound_user_enabled = 1;
</script>
<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/jquery.js;js/modernizr.js;js/foundation.min.js;js/jquery.colorbox-min.js;js/lh.js;js/jquery.hotkeys-0.7.9.min.js');
?>
"></script>
    ?>
)))
    	{
    		this.sharehash = chatHash || this.cookieData.hash || this.cookieData.shr;    		
    		this.addCookieAttribute('shr',this.sharehash);
    		
	    	if (typeof TreeMirror == "undefined") {    					   		
			   		var th = document.getElementsByTagName('head')[0];
			        var s = document.createElement('script');
			        s.setAttribute('type','text/javascript');
			        s.setAttribute('src','<?php 
    echo erLhcoreClassModelChatConfig::fetch('explicit_http_mode')->current_value;
    ?>
//<?php 
    echo $_SERVER['HTTP_HOST'];
    echo erLhcoreClassDesign::designJS('js/cobrowse/mutation-summary.js;js/cobrowse/tree-mirror.js;js/cobrowse/lhc.js');
    ?>
');
			        th.appendChild(s);
			        s.onreadystatechange = s.onload = function(){
			        	inst.startCoBrowse(inst.sharehash);
			        };		        
	    	} else {
		    	try {	 
		    		this.isSharing = true;
		    		this.addCookieAttribute('shr',this.sharehash);
		    		<?php 
    include erLhcoreClassDesign::designtpl('lhcobrowse/userinit.tpl.php');
    ?>
			   } catch(err) {
			  		console.log(err);
        $paramsOnline = erLhcoreClassExtensionXmppserviceHandler::getNickAndStatusByChat($Result['chat'], $pageUser);
        ?>
<script>var xmppservice = {debug:<?php 
        echo $xmppServiceExtension->settings['debug'] == true ? 'true' : 'false';
        ?>
,use_notification:<?php 
        echo $xmppServiceExtension->settings['use_notification'] == true ? 'true' : 'false';
        ?>
,nick:<?php 
        echo json_encode($paramsOnline['nick']);
        ?>
,status:<?php 
        echo json_encode($paramsOnline['status']);
        ?>
,BOSH_SERVICE : '<?php 
        echo $xmppServiceExtension->settings['bosh_service'];
        ?>
', USR : <?php 
        echo json_encode($xmppAccount->username);
        ?>
,PSW : <?php 
        echo json_encode($xmppAccount->password);
        ?>
}</script>
<script type="text/javascript" language="javascript" src="<?php 
        echo erLhcoreClassDesign::designJS('js/strope.xmppservice.js;js/xmppservice.js');
        ?>
"></script>
<?php 
    }
}
Ejemplo n.º 4
0
</head>
<body<?php 
isset($Result['pagelayout_css_append']) ? print ' class="' . $Result['pagelayout_css_append'] . '" ' : '';
?>
>

<div id="widget-layout" class="row">
	<div class="columns large-12">
       <?php 
echo $Result['content'];
?>
     </div>
</div>

<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/app.js');
?>
"></script>
<?php 
if (isset($Result['dynamic_height'])) {
    ?>
<script>
var wasFocused = false;
$('input[type="text"]').first().click(function(){if (wasFocused == false){wasFocused=true;$(this).select().focus();}});
$('textarea').first().click(function(){if (wasFocused == false){wasFocused=true;$(this).select();}});
if (!!window.postMessage) {
	var heightContent = 0;
	var heightElement = $('#widget-layout');
	setInterval(function(){
		var currentHeight = heightElement.height();
		if (heightContent != currentHeight){
Ejemplo n.º 5
0
"></script>

</head>
<body<?php 
isset($Result['pagelayout_css_append']) ? print ' class="' . $Result['pagelayout_css_append'] . '" ' : '';
?>
>

<div id="widget-layout">
<?php 
echo $Result['content'];
?>
</div>

<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/BookReader/BookReaderJSSimple.js');
?>
"></script>

<?php 
if (isset($Result['dynamic_height'])) {
    ?>
<script>
var wasFocused = false;
$('input[type="text"]').first().click(function(){if (wasFocused == false){wasFocused=true;$(this).select().focus();}});
$('textarea').first().click(function(){if (wasFocused == false){wasFocused=true;$(this).select();}});
if (!!window.postMessage) {
	var heightContent = 0;
	var heightElement = $('#widget-layout');
	setInterval(function(){
		var currentHeight = heightElement.height();
Ejemplo n.º 6
0
<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/angular.min.js;js/checklist-model.min.js;js/angular.lhc.min.js;vendor/metisMenu/metisMenu.min.js;js/sidebar.js');
?>
"></script>
<?php 
echo isset($Result['additional_footer_js']) ? $Result['additional_footer_js'] : '';
Ejemplo n.º 7
0
 /**
  * Open, parse, and return the template file.
  *
  * @param $file string the template file name
  */
 function fetch($fileTemplate = null)
 {
     $instance = erLhcoreClassSystem::instance();
     $port = isset($_SERVER['SERVER_PORT']) ? $_SERVER['SERVER_PORT'] : 80;
     if (!$fileTemplate) {
         $fileTemplate = $this->file;
     }
     if ($this->cacheEnabled == true && key_exists(md5($fileTemplate . $instance->WWWDirLang . $instance->Language . $port), $this->cacheTemplates)) {
         try {
             return $this->fetchExecute($this->cacheTemplates[md5($fileTemplate . $instance->WWWDirLang . $instance->Language . $port)]);
         } catch (Exception $e) {
         }
     }
     $cfg = erConfigClassLhConfig::getInstance();
     $file = erLhcoreClassDesign::designtpl($fileTemplate);
     if ($this->templatecompile == true) {
         $contentFile = php_strip_whitespace($file);
         // Compile templates - 3 level of inclusions
         for ($i = 0; $i < 9; $i++) {
             $Matches = array();
             preg_match_all('/<\\?php(\\s*)include_once\\(erLhcoreClassDesign::designtpl\\(\'([a-zA-Z0-9-\\.-\\/\\_]+)\'\\)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
             foreach ($Matches[2] as $key => $Match) {
                 $contentFile = str_replace($Matches[0][$key], php_strip_whitespace(erLhcoreClassDesign::designtpl($Match)), $contentFile);
             }
             //Compile templates inclusions first level.
             $Matches = array();
             preg_match_all('/<\\?php(\\s*)include\\(erLhcoreClassDesign::designtpl\\(\'([a-zA-Z0-9-\\.-\\/\\_]+)\'\\)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
             foreach ($Matches[2] as $key => $Match) {
                 $contentFile = str_replace($Matches[0][$key], php_strip_whitespace(erLhcoreClassDesign::designtpl($Match)), $contentFile);
             }
         }
         //Compile image css paths. Etc..
         $Matches = array();
         preg_match_all('/<\\?php echo erLhcoreClassDesign::design\\(\'([a-zA-Z0-9-\\.-\\/\\_]+)\'\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $Match) {
             $contentFile = str_replace($Matches[0][$key], erLhcoreClassDesign::design($Match), $contentFile);
         }
         //Compile translations, pure translations
         $Matches = array();
         preg_match_all('/<\\?php echo erTranslationClassLhTranslation::getInstance\\(\\)->getTranslation\\(\'(.*?)\',\'(.*?)\'\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $TranslateContent) {
             $contentFile = str_replace($Matches[0][$key], erTranslationClassLhTranslation::getInstance()->getTranslation($TranslateContent, $Matches[2][$key]), $contentFile);
         }
         //Translations used in logical conditions
         $Matches = array();
         preg_match_all('/erTranslationClassLhTranslation::getInstance\\(\\)->getTranslation\\(\'(.*?)\',\'(.*?)\'\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $TranslateContent) {
             $contentFile = str_replace($Matches[0][$key], '\'' . erTranslationClassLhTranslation::getInstance()->getTranslation($TranslateContent, $Matches[2][$key]) . '\'', $contentFile);
         }
         // Compile url addresses
         $Matches = array();
         preg_match_all('/<\\?php echo erLhcoreClassDesign::baseurl\\((.*?)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], erLhcoreClassDesign::baseurl(trim($UrlAddress, '\'')), $contentFile);
         }
         // Compile url direct addresses
         $Matches = array();
         preg_match_all('/<\\?php echo erLhcoreClassDesign::baseurldirect\\((.*?)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], erLhcoreClassDesign::baseurldirect(trim($UrlAddress, '\'')), $contentFile);
         }
         // Compile url direct addresses
         $Matches = array();
         preg_match_all('/<\\?php echo erLhcoreClassDesign::baseurlsite\\(\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], erLhcoreClassDesign::baseurlsite(), $contentFile);
         }
         // Compile css url addresses
         $Matches = array();
         preg_match_all('/<\\?php echo erLhcoreClassDesign::designCSS\\((.*?)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], erLhcoreClassDesign::designCSS(trim($UrlAddress, '\'')), $contentFile);
         }
         // Compile css url addresses
         $Matches = array();
         preg_match_all('/<\\?php echo erLhcoreClassDesign::designJS\\((.*?)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], erLhcoreClassDesign::designJS(trim($UrlAddress, '\'')), $contentFile);
         }
         // Compile url addresses in logical operations
         $Matches = array();
         preg_match_all('/erLhcoreClassDesign::baseurl\\((.*?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], '\'' . erLhcoreClassDesign::baseurl(trim($UrlAddress, '\'')) . '\'', $contentFile);
         }
         // Compile url addresses in logical operations
         $Matches = array();
         preg_match_all('/erLhcoreClassDesign::baseurldirect\\((.*?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], '\'' . erLhcoreClassDesign::baseurldirect(trim($UrlAddress, '\'')) . '\'', $contentFile);
         }
         // Compile config settings, direct output
         $Matches = array();
         preg_match_all('/<\\?php echo erConfigClassLhConfig::getInstance\\(\\)->getSetting\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?),(\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $valueConfig = erConfigClassLhConfig::getInstance()->getSetting($Matches[2][$key], $Matches[5][$key]);
             $valueReplace = '';
             if (is_bool($valueConfig)) {
                 $valueReplace = $valueConfig == false ? 'false' : 'true';
             } elseif (is_integer($valueConfig)) {
                 $valueReplace = $valueConfig;
             } elseif (is_array($valueConfig)) {
                 $valueReplace = var_export($valueConfig, true);
             } else {
                 $valueReplace = $valueConfig;
             }
             $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
         }
         // Compile config settings
         $Matches = array();
         preg_match_all('/erConfigClassLhConfig::getInstance\\(\\)->getSetting\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?),(\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $valueConfig = erConfigClassLhConfig::getInstance()->getSetting($Matches[2][$key], $Matches[5][$key]);
             $valueReplace = '';
             if (is_bool($valueConfig)) {
                 $valueReplace = $valueConfig == false ? 'false' : 'true';
             } elseif (is_integer($valueConfig)) {
                 $valueReplace = $valueConfig;
             } elseif (is_array($valueConfig)) {
                 $valueReplace = var_export($valueConfig, true);
             } else {
                 $valueReplace = '\'' . $valueConfig . '\'';
             }
             $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
         }
         // Compile override config settings, used in title, description override
         $Matches = array();
         preg_match_all('/<\\?php echo erConfigClassLhConfig::getInstance\\(\\)->getOverrideValue\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?),(\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $valueConfig = erConfigClassLhConfig::getInstance()->getOverrideValue($Matches[2][$key], $Matches[5][$key]);
             $valueReplace = '';
             if (is_bool($valueConfig)) {
                 $valueReplace = $valueConfig == false ? 'false' : 'true';
             } elseif (is_integer($valueConfig)) {
                 $valueReplace = $valueConfig;
             } elseif (is_array($valueConfig)) {
                 $valueReplace = var_export($valueConfig, true);
             } else {
                 $valueReplace = $valueConfig;
             }
             $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
         }
         // Compile override config settings
         $Matches = array();
         preg_match_all('/erConfigClassLhConfig::getInstance\\(\\)->getOverrideValue\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?),(\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $valueConfig = erConfigClassLhConfig::getInstance()->getOverrideValue($Matches[2][$key], $Matches[5][$key]);
             $valueReplace = '';
             if (is_bool($valueConfig)) {
                 $valueReplace = $valueConfig == false ? 'false' : 'true';
             } elseif (is_integer($valueConfig)) {
                 $valueReplace = $valueConfig;
             } elseif (is_array($valueConfig)) {
                 $valueReplace = var_export($valueConfig, true);
             } else {
                 $valueReplace = '\'' . $valueConfig . '\'';
             }
             $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
         }
         $Matches = array();
         preg_match_all('/<\\?php echo erConfigClassLhConfig::getInstance\\(\\)->getDirLanguage\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)(.*?)\\?\\>/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $valueConfig = erConfigClassLhConfig::getInstance()->getDirLanguage($Matches[2][$key]);
             $valueReplace = '';
             if (is_bool($valueConfig)) {
                 $valueReplace = $valueConfig == false ? 'false' : 'true';
             } elseif (is_integer($valueConfig)) {
                 $valueReplace = $valueConfig;
             } elseif (is_array($valueConfig)) {
                 $valueReplace = var_export($valueConfig, true);
             } else {
                 $valueReplace = $valueConfig;
             }
             $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
         }
         // Compile config settings
         $Matches = array();
         preg_match_all('/erConfigClassLhConfig::getInstance\\(\\)->getDirLanguage\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $var) {
             $valueConfig = erConfigClassLhConfig::getInstance()->getDirLanguage($Matches[2][$key]);
             $valueReplace = '';
             if (is_bool($valueConfig)) {
                 $valueReplace = $valueConfig == false ? 'false' : 'true';
             } elseif (is_integer($valueConfig)) {
                 $valueReplace = $valueConfig;
             } elseif (is_array($valueConfig)) {
                 $valueReplace = var_export($valueConfig, true);
             } else {
                 $valueReplace = '\'' . $valueConfig . '\'';
             }
             $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
         }
         if ($this->cacheDbVariables == true) {
             // Compile config completely
             $Matches = array();
             preg_match_all('/<\\?php echo erLhcoreClassModelChatConfig::fetch\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)->current_value(.*?)\\?\\>/i', $contentFile, $Matches);
             foreach ($Matches[1] as $key => $UrlAddress) {
                 $valueConfig = erLhcoreClassModelChatConfig::fetch($Matches[2][$key])->current_value;
                 $contentFile = str_replace($Matches[0][$key], $valueConfig, $contentFile);
             }
             // Compile config settings in php scripts
             $Matches = array();
             preg_match_all('/erLhcoreClassModelChatConfig::fetch\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)->current_value/i', $contentFile, $Matches);
             foreach ($Matches[1] as $key => $UrlAddress) {
                 $valueConfig = erLhcoreClassModelChatConfig::fetch($Matches[2][$key])->current_value;
                 $valueReplace = '';
                 $valueReplace = '\'' . str_replace("'", "\\'", $valueConfig) . '\'';
                 $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
             }
             // Compile config settings in php scripts
             $Matches = array();
             preg_match_all('/erLhcoreClassModelChatConfig::fetch\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)->data_value/i', $contentFile, $Matches);
             foreach ($Matches[1] as $key => $UrlAddress) {
                 $valueConfig = erLhcoreClassModelChatConfig::fetch($Matches[2][$key])->data_value;
                 $valueReplace = var_export($valueConfig, true);
                 $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
             }
             // Compile config settings array
             $Matches = array();
             preg_match_all('/erLhcoreClassModelChatConfig::fetch\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)->data\\[\'([a-zA-Z0-9-\\.-\\/\\_]+)\'\\]/i', $contentFile, $Matches);
             foreach ($Matches[1] as $key => $UrlAddress) {
                 $valueConfig = erLhcoreClassModelChatConfig::fetch($Matches[2][$key])->data[$Matches[4][$key]];
                 $valueReplace = '';
                 $valueReplace = '\'' . str_replace("'", "\\'", $valueConfig) . '\'';
                 $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
             }
         }
         // Compile content language
         $contentFile = str_replace('<?php echo erLhcoreClassSystem::instance()->ContentLanguage?>', erLhcoreClassSystem::instance()->ContentLanguage, $contentFile);
         // Compile siteaccess
         $contentFile = str_replace('erLhcoreClassSystem::instance()->SiteAccess', '\'' . erLhcoreClassSystem::instance()->SiteAccess . '\'', $contentFile);
         // Atomoc template compilation to avoid concurent request compiling and writing to the same file
         $fileName = 'cache/compiledtemplates/' . md5(time() . rand(0, 1000) . microtime() . $file . $instance->WWWDirLang . $instance->Language . $port) . '.php';
         file_put_contents($fileName, erLhcoreClassTemplate::strip_html($contentFile));
         $file = 'cache/compiledtemplates/' . md5($file . $instance->WWWDirLang . $instance->Language . $port) . '.php';
         rename($fileName, $file);
         $this->cacheTemplates[md5($fileTemplate . $instance->WWWDirLang . $instance->Language . $port)] = $file;
         $this->storeCache();
     }
     return $this->fetchExecute($file);
 }
<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/osticket.js');
?>
"></script>
<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/sugarcrm.js');
?>
"></script>
<?php 
    }
    ?>
</script>
<?php 
    if ($nodeJsHelperSettings['use_cdn'] == true) {
        ?>
<script src="https://cdn.socket.io/socket.io-1.1.0.js"></script>
<?php 
    } elseif (isset($nodeJsHelperSettings['use_local_socket_io_js']) && $nodeJsHelperSettings['use_local_socket_io_js'] == true) {
        ?>
<script type="text/javascript" language="javascript" src="<?php 
        echo erLhcoreClassDesign::designJS('js/socket.io-1.1.0.js');
        ?>
"></script>
<?php 
    } else {
        ?>
<script src="<?php 
        echo $nodeJsHelperSettings['prefix'], $nodeJsHelperSettings['host'], $nodeJsHelperSettings['port'], $nodeJsHelperSettings['path'];
        ?>
/socket.io/socket.io.js"></script>
<?php 
    }
    ?>
<script type="text/javascript" language="javascript" src="<?php 
    echo erLhcoreClassDesign::designJS('js/customjs.js');
    ?>
"></script>
<?php 
}
Ejemplo n.º 11
0
confLH.new_message_browser_notification = <?php 
echo isset($soundData['browser_notification_message']) ? (int) $soundData['browser_notification_message'] : 0;
?>
;
confLH.transLation = {'new_chat':'<?php 
echo erTranslationClassLhTranslation::getInstance()->getTranslation('pagelayout/pagelayout', 'New chat request');
?>
'};
confLH.csrf_token = '<?php 
echo erLhcoreClassUser::instance()->getCSFRToken();
?>
';
confLH.repeat_sound = <?php 
echo (int) $soundData['repeat_sound'];
?>
;
confLH.repeat_sound_delay = <?php 
echo (int) $soundData['repeat_sound_delay'];
?>
;
confLH.show_alert = <?php 
echo (int) $soundData['show_alert'];
?>
;
</script>
<script type="text/javascript" src="<?php 
echo erLhcoreClassDesign::designJS('vendor/jquery/jquery.min.js;vendor/bootstrap/js/bootstrap.min.js;js/modernizr.js;js/lh.min.js;js/jquery.hotkeys-0.7.9.min.js;js/fileupload/jquery.fileupload.min.js;js/jquery.zoom.min.js;js/datepicker.min.js;js/lh/dist/common.js;js/lh/dist/bundle.js;js/EventEmitter.min.js;js/events.js');
?>
"></script>
<?php 
echo isset($Result['additional_header_js']) ? $Result['additional_header_js'] : '';
$data = (array) $startData->data;
if (isset($_POST['CancelConfig'])) {
    erLhcoreClassModule::redirect('system/configuration');
    exit;
}
if (isset($_POST['UpdateConfig']) || isset($_POST['SaveConfig'])) {
    if (!isset($_POST['csfr_token']) || !$currentUser->validateCSFRToken($_POST['csfr_token'])) {
        erLhcoreClassModule::redirect('chat/startchatformsettings');
        exit;
    }
    $Errors = erLhcoreClassAdminChatValidatorHelper::validateStartChatForm($data);
    if (count($Errors) == 0) {
        $startData->value = serialize($data);
        $startData->saveThis();
        $tpl->set('updated', true);
        // Cleanup cache to recompile templates etc.
        $CacheManager = erConfigClassLhCacheConfig::getInstance();
        $CacheManager->expireCache();
        if (isset($_POST['SaveConfig'])) {
            erLhcoreClassModule::redirect('system/configuration');
            exit;
        }
    } else {
        $tpl->set('errors', $Errors);
    }
}
$tpl->set('start_chat_data', $data);
$Result['content'] = $tpl->fetch();
$Result['additional_footer_js'] = '<script src="' . erLhcoreClassDesign::designJS('js/angular.lhc.startchatformgenerator.js') . '"></script>';
$Result['path'] = array(array('url' => erLhcoreClassDesign::baseurl('system/configuration'), 'title' => erTranslationClassLhTranslation::getInstance()->getTranslation('department/departments', 'System configuration')), array('title' => erTranslationClassLhTranslation::getInstance()->getTranslation('chat/startchatformsettings', 'Start chat form settings')));
erLhcoreClassChatEventDispatcher::getInstance()->dispatch('chat.startchatformsettings_path', array('result' => &$Result));
Ejemplo n.º 13
0
<?php

$tpl = erLhcoreClassTemplate::getInstance('lhfront/default.tpl.php');
$tpl->set('geo_location_data', erLhcoreClassModelChatConfig::fetch('geo_location_data')->data);
$tpl->set('tracking_enabled', erLhcoreClassModelChatConfig::fetch('track_online_visitors')->current_value == 1);
/**
 * Append user departments filter
 * */
$departmentParams = array();
$userDepartments = erLhcoreClassUserDep::parseUserDepartmetnsForFilter($currentUser->getUserID());
if ($userDepartments !== true) {
    $departmentParams['filterin']['id'] = $userDepartments;
    if (!$currentUser->hasAccessTo('lhchat', 'sees_all_online_visitors')) {
        $filter['filterin']['dep_id'] = $userDepartments;
    }
}
$tpl->set('departmentParams', $departmentParams);
$Result['content'] = $tpl->fetch();
$Result['additional_footer_js'] = '<script src="' . erLhcoreClassDesign::designJS('js/angular.lhc.online.min.js;vendor/jqueryui/core.min.js;vendor/jqueryui/mouse.min.js;vendor/jqueryui/widget.min.js;vendor/jqueryui/sortable.min.js;js/lhc.dashboard.min.js') . '"></script>';
$Result['hide_right_column'] = erLhcoreClassModelChatConfig::fetch('hide_right_column_frontpage')->current_value == 1;
Ejemplo n.º 14
0
<?php

$tpl = erLhcoreClassTemplate::getInstance('lhform/viewcollected.tpl.php');
$collected = erLhAbstractModelFormCollected::fetch((int) $Params['user_parameters']['collected_id']);
$object_trans = $collected->form->getModuleTranslations();
erLhcoreClassFormRenderer::setCollectedInformation($collected->content_array);
erLhcoreClassFormRenderer::setCollectedObject($collected);
$tpl->set('collected', $collected);
$tpl->set('form', $collected->form);
$tpl->set('content', $collected->form->content_rendered);
$Result['content'] = $tpl->fetch();
$Result['path'] = array();
$Result['path'][] = $object_trans['path'];
$Result['path'][] = array('url' => erLhcoreClassDesign::baseurl('abstract/list') . '/Form', 'title' => $object_trans['name']);
$Result['path'][] = array('url' => erLhcoreClassDesign::baseurl('form/collected') . '/' . $collected->form->id, 'title' => $collected->form);
$Result['path'][] = array('title' => erTranslationClassLhTranslation::getInstance()->getTranslation('form/viewcollected', 'Collected information'));
$Result['additional_header_css'] = '<link rel="stylesheet" type="text/css" href="' . erLhcoreClassDesign::designCSS('css/jquery-ui-1.10.4.custom.css') . '" />';
$Result['additional_header_js'] = '<script type="text/javascript" language="javascript" src="' . erLhcoreClassDesign::designJS('js/jquery-ui-1.10.4.custom.min.js') . '"></script>';
Ejemplo n.º 15
0
    }
    $Departament->removeThis();
    erLhcoreClassModule::redirect('department/departments');
    exit;
}
if (isset($_POST['Update_departament']) || isset($_POST['Save_departament'])) {
    if (!isset($_POST['csfr_token']) || !$currentUser->validateCSFRToken($_POST['csfr_token'])) {
        erLhcoreClassModule::redirect('department/departments');
        exit;
    }
    $Errors = erLhcoreClassDepartament::validateDepartment($Departament);
    if (count($Errors) == 0) {
        erLhcoreClassDepartament::getSession()->update($Departament);
        $DepartamentCustomWorkHours = erLhcoreClassDepartament::validateDepartmentCustomWorkHours($Departament, $DepartamentCustomWorkHours);
        if (isset($_POST['Save_departament'])) {
            erLhcoreClassModule::redirect('department/departments');
            exit;
        } else {
            $tpl->set('updated', true);
        }
    } else {
        $tpl->set('errors', $Errors);
    }
}
$tpl->set('departament', $Departament);
$tpl->set('currentUser', $currentUser);
$tpl->set('limitDepartments', $userDepartments !== true ? array('filterin' => array('id' => $userDepartments)) : array());
$tpl->set('departamentCustomWorkHours', json_encode(erLhcoreClassDepartament::getDepartamentCustomWorkHoursData($DepartamentCustomWorkHours), JSON_HEX_APOS));
$Result['content'] = $tpl->fetch();
$Result['additional_footer_js'] = '<script src="' . erLhcoreClassDesign::designJS('js/angular.lhc.customdepartmentperiodgenerator.js') . '"></script>';
$Result['path'] = array(array('url' => erLhcoreClassDesign::baseurl('system/configuration'), 'title' => erTranslationClassLhTranslation::getInstance()->getTranslation('department/edit', 'System configuration')), array('url' => erLhcoreClassDesign::baseurl('department/departments'), 'title' => erTranslationClassLhTranslation::getInstance()->getTranslation('department/edit', 'Departments')), array('title' => erTranslationClassLhTranslation::getInstance()->getTranslation('department/edit', 'Edit a department') . ' - ' . $Departament->name));
Ejemplo n.º 16
0
confLH.new_message_browser_notification = <?php 
echo isset($soundData['browser_notification_message']) ? (int) $soundData['browser_notification_message'] : 0;
?>
;
confLH.transLation = {'new_chat':'<?php 
echo erTranslationClassLhTranslation::getInstance()->getTranslation('pagelayout/pagelayout', 'New chat request');
?>
'};
confLH.csrf_token = '<?php 
echo erLhcoreClassUser::instance()->getCSFRToken();
?>
';
confLH.repeat_sound = <?php 
echo (int) $soundData['repeat_sound'];
?>
;
confLH.repeat_sound_delay = <?php 
echo (int) $soundData['repeat_sound_delay'];
?>
;
confLH.show_alert = <?php 
echo (int) $soundData['show_alert'];
?>
;
</script>
<script type="text/javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/jquery.js;js/modernizr.js;js/foundation.min.js;js/jquery.colorbox-min.js;js/lh.min.js;js/jquery.hotkeys-0.7.9.min.js;js/fileupload/jquery.fileupload.min.js;js/jquery.zoom.min.js;js/datepicker.min.js;js/lhc.speak.min.js');
?>
"></script>
<?php 
echo isset($Result['additional_header_js']) ? $Result['additional_header_js'] : '';
Ejemplo n.º 17
0
    	{
    		this.sharehash = chatHash || this.cookieData.hash || this.cookieData.shr;    		
    		this.sharemode = sharemode || this.cookieData.shrm || 'chat';
    		this.addCookieAttribute('shr',this.sharehash);
    		this.addCookieAttribute('shrm',this.sharemode);
    		
	    	if (typeof TreeMirror == "undefined") {    					   		
			   		var th = document.getElementsByTagName('head')[0];
			        var s = document.createElement('script');
			        s.setAttribute('type','text/javascript');
			        s.setAttribute('src','<?php 
    echo erLhcoreClassModelChatConfig::fetch('explicit_http_mode')->current_value;
    ?>
//<?php 
    echo $_SERVER['HTTP_HOST'];
    echo erLhcoreClassDesign::designJS('js/cobrowse/compiled/cobrowse.visitor.min.js');
    ?>
');
			        th.appendChild(s);
			        s.onreadystatechange = s.onload = function(){
			        	inst.startCoBrowse(inst.sharehash,this.sharemode);
			        };		        
	    	} else {
		    	try {	 
		    		this.isSharing = true;
		    		this.addCookieAttribute('shr',this.sharehash);
		    		this.addCookieAttribute('shrm',this.sharemode);
		    		<?php 
    include erLhcoreClassDesign::designtpl('lhcobrowse/userinit.tpl.php');
    ?>
			   } catch(err) {
<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/jquery.sceditor.bbcode.js;js/sceditor.js');
?>
"></script>
Ejemplo n.º 19
0
<?php

$tpl = erLhcoreClassTemplate::getInstance('lhtheme/adminnewtheme.tpl.php');
$form = new erLhAbstractModelAdminTheme();
if (ezcInputForm::hasPostData()) {
    $Errors = erLhcoreClassThemeValidator::validateAdminTheme($form);
    if (!empty($Errors)) {
        $tpl->set('errors', $Errors);
    } else {
        $form->saveThis();
        erLhcoreClassModule::redirect('theme/adminthemes');
        exit;
    }
}
$tpl->set('form', $form);
$Result['content'] = $tpl->fetch();
$Result['additional_footer_js'] = '<script src="' . erLhcoreClassDesign::designJS('js/admintheme.form.angular.js') . '"></script>';
$Result['path'] = array(array('url' => erLhcoreClassDesign::baseurl('theme/index'), 'title' => erTranslationClassLhTranslation::getInstance()->getTranslation('theme/index', 'Themes')), array('url' => erLhcoreClassDesign::baseurl('theme/adminthemes'), 'title' => erTranslationClassLhTranslation::getInstance()->getTranslation('lhtheme/admin', 'Admin themes')), array('title' => erTranslationClassLhTranslation::getInstance()->getTranslation('lhtheme/admin', 'New admin theme')));
Ejemplo n.º 20
0
confLH.new_message_browser_notification = <?php 
echo isset($soundData['browser_notification_message']) ? (int) $soundData['browser_notification_message'] : 0;
?>
;
confLH.transLation = {'new_chat':'<?php 
echo erTranslationClassLhTranslation::getInstance()->getTranslation('pagelayout/pagelayout', 'New chat request');
?>
'};
confLH.csrf_token = '<?php 
echo erLhcoreClassUser::instance()->getCSFRToken();
?>
';
confLH.repeat_sound = <?php 
echo (int) $soundData['repeat_sound'];
?>
;
confLH.repeat_sound_delay = <?php 
echo (int) $soundData['repeat_sound_delay'];
?>
;
confLH.show_alert = <?php 
echo (int) $soundData['show_alert'];
?>
;
</script>
<script type="text/javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/jquery.js;js/modernizr.js;js/foundation.min.js;js/jquery.colorbox-min.js;js/lh.js;js/jquery.hotkeys-0.7.9.min.js;js/fileupload/jquery.ui.widget.js;js/fileupload/jquery.iframe-transport.js;js/fileupload/jquery.fileupload.js;js/jquery.zoom.min.js;js/datepicker.js');
?>
"></script>
<?php 
echo isset($Result['additional_header_js']) ? $Result['additional_header_js'] : '';
$maxrows = isset($Params['user_parameters_unordered']['maxrows']) && is_numeric($Params['user_parameters_unordered']['maxrows']) ? (int) $Params['user_parameters_unordered']['maxrows'] : 50;
$filter = array('offset' => 0, 'limit' => $maxrows, 'sort' => 'last_visit DESC', 'filtergt' => array('last_visit' => time() - $timeout));
$department = isset($Params['user_parameters_unordered']['department']) && is_numeric($Params['user_parameters_unordered']['department']) ? (int) $Params['user_parameters_unordered']['department'] : false;
if ($department !== false) {
    $filter['filter']['dep_id'] = $department;
}
/**
 * Append user departments filter
 * */
$departmentParams = array();
$userDepartments = erLhcoreClassUserDep::parseUserDepartmetnsForFilter($currentUser->getUserID());
if ($userDepartments !== true) {
    $departmentParams['filterin']['id'] = $userDepartments;
    if (!$currentUser->hasAccessTo('lhchat', 'sees_all_online_visitors')) {
        $filter['filterin']['dep_id'] = $userDepartments;
    }
}
if ($is_ajax == true) {
    $items = erLhcoreClassModelChatOnlineUser::getList($filter);
    erLhcoreClassChat::prefillGetAttributes($items, array('online_attr_system_array', 'notes_intro', 'last_check_time_ago', 'visitor_tz_time', 'last_visit_seconds_ago', 'lastactivity_ago', 'time_on_site_front', 'can_view_chat', 'operator_user_send', 'operator_user_string', 'first_visit_front', 'last_visit_front'), array('notes', 'online_attr_system'), array('do_not_clean' => true));
    echo json_encode(array_values($items));
    exit;
}
$tpl->set('departmentParams', $departmentParams);
$tpl->set('tracking_enabled', erLhcoreClassModelChatConfig::fetch('track_online_visitors')->current_value == 1);
$tpl->set('geo_location_data', erLhcoreClassModelChatConfig::fetch('geo_location_data')->data);
$Result['content'] = $tpl->fetch();
$Result['path'] = array(array('title' => erTranslationClassLhTranslation::getInstance()->getTranslation('chat/onlineusers', 'Online visitors')));
erLhcoreClassChatEventDispatcher::getInstance()->dispatch('chat.onlineusers_path', array('result' => &$Result));
$Result['additional_footer_js'] = '<script src="' . erLhcoreClassDesign::designJS('js/angular.lhc.online.min.js') . '"></script>';
Ejemplo n.º 22
0
 public static function getModuleFile($disableCacheManually = false)
 {
     $cfg = erConfigClassLhConfig::getInstance();
     $cacheEnabled = $cfg->getSetting('site', 'modulecompile');
     if ($cacheEnabled === false || $disableCacheManually === true) {
         return self::$currentModule[self::$currentView]['script_path'];
     } else {
         $instance = erLhcoreClassSystem::instance();
         $cacheKey = md5(self::$currentModuleName . '_' . self::$currentView . '_' . $instance->WWWDirLang . '_' . $instance->Language);
         if (($cacheModules = self::$cacheInstance->restore('moduleCache_' . self::$currentModuleName . '_version_' . self::$cacheVersionSite)) !== false && key_exists($cacheKey, $cacheModules)) {
             return $cacheModules[$cacheKey];
         }
         $cacheWriter = new erLhcoreClassCacheStorage('cache/cacheconfig/');
         if (($cacheModules = $cacheWriter->restore('moduleCache_' . self::$currentModuleName)) == false) {
             $cacheWriter->store('moduleCache_' . self::$currentModuleName, array());
             $cacheModules = array();
         }
         if (key_exists($cacheKey, $cacheModules)) {
             self::$cacheInstance->store('moduleCache_' . self::$currentModuleName . '_version_' . self::$cacheVersionSite, $cacheModules);
             return $cacheModules[$cacheKey];
         }
         $file = self::$currentModule[self::$currentView]['script_path'];
         $contentFile = php_strip_whitespace($file);
         $Matches = array();
         preg_match_all('/erTranslationClassLhTranslation::getInstance\\(\\)->getTranslation\\(\'(.*?)\',(.*?)\'(.*?)\'\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $TranslateContent) {
             $contentFile = str_replace($Matches[0][$key], '\'' . erTranslationClassLhTranslation::getInstance()->getTranslation($TranslateContent, $Matches[3][$key]) . '\'', $contentFile);
         }
         $Matches = array();
         preg_match_all('/erLhcoreClassDesign::baseurl\\((.*?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], '\'' . erLhcoreClassDesign::baseurl(trim($UrlAddress, '\'')) . '\'', $contentFile);
         }
         // Compile additional JS
         $Matches = array();
         preg_match_all('/erLhcoreClassDesign::designJS\\(\'(.*?)\'\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], '\'' . erLhcoreClassDesign::designJS(trim($UrlAddress, '\'')) . '\'', $contentFile);
         }
         $Matches = array();
         preg_match_all('/erLhcoreClassDesign::baseurldirect\\((.*?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $contentFile = str_replace($Matches[0][$key], '\'' . erLhcoreClassDesign::baseurldirect(trim($UrlAddress, '\'')) . '\'', $contentFile);
         }
         $contentFile = str_replace('erLhcoreClassSystem::instance()->SiteAccess', '\'' . erLhcoreClassSystem::instance()->SiteAccess . '\'', $contentFile);
         $Matches = array();
         preg_match_all('/erConfigClassLhConfig::getInstance\\(\\)->getSetting\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?),(\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)/i', $contentFile, $Matches);
         foreach ($Matches[1] as $key => $UrlAddress) {
             $valueConfig = erConfigClassLhConfig::getInstance()->getSetting($Matches[2][$key], $Matches[5][$key]);
             $valueReplace = '';
             if (is_bool($valueConfig)) {
                 $valueReplace = $valueConfig == false ? 'false' : 'true';
             } elseif (is_integer($valueConfig)) {
                 $valueReplace = $valueConfig;
             } elseif (is_array($valueConfig)) {
                 $valueReplace = var_export($valueConfig, true);
             } else {
                 $valueReplace = '\'' . $valueConfig . '\'';
             }
             $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
         }
         if (self::$cacheDbVariables === true) {
             $fetchMethods = array('fetch', 'fetchCache');
             foreach ($fetchMethods as $fetchMethod) {
                 // Compile config settings
                 $Matches = array();
                 preg_match_all('/erLhcoreClassModelChatConfig::' . $fetchMethod . '\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)->current_value/i', $contentFile, $Matches);
                 foreach ($Matches[1] as $key => $UrlAddress) {
                     $valueConfig = erLhcoreClassModelChatConfig::fetch($Matches[2][$key])->current_value;
                     $valueReplace = '';
                     $valueReplace = '\'' . str_replace("'", "\\'", $valueConfig) . '\'';
                     $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
                 }
                 // Compile config settings in php scripts
                 $Matches = array();
                 preg_match_all('/erLhcoreClassModelChatConfig::' . $fetchMethod . '\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)->data_value/i', $contentFile, $Matches);
                 foreach ($Matches[1] as $key => $UrlAddress) {
                     $valueConfig = erLhcoreClassModelChatConfig::fetch($Matches[2][$key])->data_value;
                     $valueReplace = var_export($valueConfig, true);
                     $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
                 }
                 // Compile config settings array
                 $Matches = array();
                 preg_match_all('/erLhcoreClassModelChatConfig::' . $fetchMethod . '\\((\\s?)\'([a-zA-Z0-9-\\.-\\/\\_]+)\'(\\s?)\\)->data\\[\'([a-zA-Z0-9-\\.-\\/\\_]+)\'\\]/i', $contentFile, $Matches);
                 foreach ($Matches[1] as $key => $UrlAddress) {
                     $valueConfig = erLhcoreClassModelChatConfig::fetch($Matches[2][$key])->data[$Matches[4][$key]];
                     $valueReplace = '';
                     $valueReplace = '\'' . str_replace("'", "\\'", $valueConfig) . '\'';
                     $contentFile = str_replace($Matches[0][$key], $valueReplace, $contentFile);
                 }
             }
         }
         $fileCompiled = 'cache/compiledtemplates/' . md5($file . $instance->WWWDirLang . '_' . $instance->Language) . '.php';
         // Atomoc template compilation to avoid concurent request compiling and writing to the same file
         $fileTemp = 'cache/cacheconfig/' . md5(time() . microtime() . rand(0, 1000) . $file . $instance->WWWDirLang . '_' . $instance->Language) . '.php';
         file_put_contents($fileTemp, $contentFile);
         // Atomic file write
         rename($fileTemp, $fileCompiled);
         $cacheModules[$cacheKey] = $fileCompiled;
         $cacheWriter->store('moduleCache_' . self::$currentModuleName, $cacheModules);
         self::$cacheInstance->store('moduleCache_' . self::$currentModuleName . '_version_' . self::$cacheVersionSite, $cacheModules);
         return $fileCompiled;
     }
 }
<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/angular.min.js;js/checklist-model.min.js;js/angular.lhc.min.js');
?>
"></script>
<?php 
echo isset($Result['additional_footer_js']) ? $Result['additional_footer_js'] : '';
<script type="text/javascript">
var WWW_DIR_JAVASCRIPT = '<?php 
echo erLhcoreClassDesign::baseurl();
?>
';
var WWW_DIR_JAVASCRIPT_FILES = '<?php 
echo erLhcoreClassDesign::design('sound');
?>
';
var confLH = {};
confLH.back_office_sinterval = 11000;
confLH.chat_message_sinterval = 3600;
confLH.new_chat_sound_enabled = 1;
confLH.new_message_sound_admin_enabled =1;
confLH.new_message_sound_user_enabled = 1;
</script>
<script type="text/javascript" language="javascript" src="<?php 
echo erLhcoreClassDesign::designJS('vendor/jquery/jquery.min.js;js/modernizr.js;js/lh.js;js/jquery.hotkeys-0.7.9.min.js');
?>
"></script>
Ejemplo n.º 25
0
<div class="container-fluid">
    <div class="row">
        <div class="col-md-12 pt10">
            <?php 
echo $Result['content'];
?>
        </div>
    </div>
</div>

<?php 
if (!isset($Result['disable_angular'])) {
    ?>
<script type="text/javascript" language="javascript" src="<?php 
    echo erLhcoreClassDesign::designJS('js/angular.min.js;js/angular.lhc.js');
    ?>
"></script>
<?php 
}
?>

<?php 
if (erConfigClassLhConfig::getInstance()->getSetting('site', 'debug_output') == true) {
    $debug = ezcDebug::getInstance();
    echo $debug->generateOutput();
}
?>

</body>
</html>
Ejemplo n.º 26
0
<script type="text/javascript" src="<?php 
echo erLhcoreClassDesign::designJS('js/survey.js');
?>
"></script>

<?php 
$fields = $object->getFields();
?>

<?php 
if (isset($errors)) {
    ?>
	<?php 
    include erLhcoreClassDesign::designtpl('lhkernel/validation_error.tpl.php');
}
?>

<?php 
if (isset($updated) && $updated == true) {
    $msg = erTranslationClassLhTranslation::getInstance()->getTranslation('abstract/abstract_form', 'Updated!');
    ?>
	<?php 
    include erLhcoreClassDesign::designtpl('lhkernel/alert_success.tpl.php');
}
?>

<div class="form-group">
<label><?php 
echo $fields['name']['trans'];
?>
</label>