Merged in bugfix/HOR-3861 (pull request #6050)

HOR-3861

Approved-by: Julio Cesar Laura Avendaño <contact@julio-laura.com>
This commit is contained in:
Julio Cesar Laura Avendaño
2017-09-12 21:12:26 +00:00
4 changed files with 938 additions and 932 deletions

View File

@@ -748,6 +748,7 @@ class headPublisher
*/ */
public function getExtJsViewState() public function getExtJsViewState()
{ {
$json = new stdClass();
$views = array(); $views = array();
$keyState = "extJsViewState"; $keyState = "extJsViewState";
$prefixExtJs = "ys-"; $prefixExtJs = "ys-";
@@ -772,7 +773,9 @@ class headPublisher
$views[$key] = $value[1]; $views[$key] = $value[1];
} }
} }
if ((array)$json != $views) {
$oServerConf->setProperty($keyState, G::json_encode($views)); $oServerConf->setProperty($keyState, G::json_encode($views));
}
return $views; return $views;
} }

View File

@@ -7,7 +7,6 @@ use Illuminate\Support\Facades\Cache;
* class.pmLicenseManager.php * class.pmLicenseManager.php
* *
*/ */
class PmLicenseManager class PmLicenseManager
{ {
const CACHE_KEY = 'license'; const CACHE_KEY = 'license';
@@ -17,20 +16,13 @@ class PmLicenseManager
public function __construct($flagActivatePlugins = true) public function __construct($flagActivatePlugins = true)
{ {
$oServerConf = &ServerConf::getSingleton(); $oServerConf = &ServerConf::getSingleton();
if ($oServerConf->getProperty('LOGIN_NO_WS') === null || $oServerConf->getProperty('LOGIN_NO_WS') === false) {
$oServerConf->setProperty('LOGIN_NO_WS', true); $oServerConf->setProperty('LOGIN_NO_WS', true);
}
//to do: this files probably needs to be in core, since they are GPL2
//include_once (PATH_PLUGINS . 'enterprise' . PATH_SEP . 'classes' . PATH_SEP . 'class.license.lib.php');
//include_once (PATH_PLUGINS . 'enterprise' . PATH_SEP . 'classes' . PATH_SEP . 'class.license.app.php');
//searching .dat files in workspace folder //searching .dat files in workspace folder
$server_array = $_SERVER; $server_array = $_SERVER;
$licfile = glob(PATH_DATA_SITE . "*.dat");
if (count($licfile) > 0 && is_file($licfile[0])) {
$oServerConf->setProperty('ACTIVE_LICENSE', array(SYS_SYS => ""));
}
$activeLicenseSetting = $oServerConf->getProperty('ACTIVE_LICENSE'); $activeLicenseSetting = $oServerConf->getProperty('ACTIVE_LICENSE');
@@ -38,7 +30,7 @@ class PmLicenseManager
$licenseFile = $activeLicenseSetting[SYS_SYS]; $licenseFile = $activeLicenseSetting[SYS_SYS];
} else { } else {
$activeLicense = $this->getActiveLicense(); $activeLicense = $this->getActiveLicense();
$oServerConf->setProperty('ACTIVE_LICENSE', array(SYS_SYS => $activeLicense ['LICENSE_PATH'])); $oServerConf->setProperty('ACTIVE_LICENSE', [SYS_SYS => $activeLicense['LICENSE_PATH']]);
$licenseFile = $activeLicense['LICENSE_PATH']; $licenseFile = $activeLicense['LICENSE_PATH'];
} }
@@ -46,18 +38,19 @@ class PmLicenseManager
$application->set_server_vars($server_array); $application->set_server_vars($server_array);
$application->DATE_STRING = 'Y-m-d H:i:s'; $application->DATE_STRING = 'Y-m-d H:i:s';
$results = $application->validate(); $results = $application->validate();
$validStatus = array( $validStatus = [
'OK', 'OK',
'EXPIRED', 'EXPIRED',
'TMINUS' 'TMINUS'
); ];
$this->result = $results['RESULT']; $this->result = $results['RESULT'];
$this->features = array(); $this->features = [];
$this->licensedfeatures = array(); $this->licensedfeatures = [];
$this->licensedfeaturesList = array(); $this->licensedfeaturesList = [];
if (in_array($this->result, $validStatus)) { if (in_array($this->result, $validStatus)) {
$this->serial = "3ptta7Xko2prrptrZnSd356aqmPXvMrayNPFj6CLdaR1pWtrW6qPw9jV0OHjxrDGu8LVxtmSm9nP5kR23HRpdZWccpeui+bKkK°DoqCt2Kqgpq6Vg37s"; $this->serial = "3ptta7Xko2prrptrZnSd356aqmPXvMrayNPFj6CLdaR1pWtrW6qPw9jV0OHjxrDGu8LVxtmSm9nP5kR23HRpdZWccpeui+bKkK°DoqCt2Kqgpq6Vg37s";
$info = [];
$info['FIRST_NAME'] = $results['DATA']['FIRST_NAME']; $info['FIRST_NAME'] = $results['DATA']['FIRST_NAME'];
$info['LAST_NAME'] = $results['DATA']['LAST_NAME']; $info['LAST_NAME'] = $results['DATA']['LAST_NAME'];
$info['DOMAIN_WORKSPACE'] = $results['DATA']['DOMAIN_WORKSPACE']; $info['DOMAIN_WORKSPACE'] = $results['DATA']['DOMAIN_WORKSPACE'];
@@ -67,8 +60,8 @@ class PmLicenseManager
$this->plan = isset($results ['DATA']['PLAN']) ? $results ['DATA']['PLAN'] : ""; $this->plan = isset($results ['DATA']['PLAN']) ? $results ['DATA']['PLAN'] : "";
$this->id = $results ['ID']; $this->id = $results ['ID'];
$this->expireIn = $this->getExpireIn(); $this->expireIn = $this->getExpireIn();
$this->features = $this->result!='TMINUS'?isset($results ['DATA']['CUSTOMER_PLUGIN'])? $results ['DATA']['CUSTOMER_PLUGIN'] : $this->getActiveFeatures() : array(); $this->features = $this->result != 'TMINUS' ? isset($results ['DATA']['CUSTOMER_PLUGIN']) ? $results ['DATA']['CUSTOMER_PLUGIN'] : $this->getActiveFeatures() : [];
$this->licensedfeatures = $this->result != 'TMINUS' ? (isset($results ['DATA']['CUSTOMER_LICENSED_FEATURES']) && is_array($results ['DATA']['CUSTOMER_LICENSED_FEATURES'])) ? $results ['DATA']['CUSTOMER_LICENSED_FEATURES'] : array() : array(); $this->licensedfeatures = $this->result != 'TMINUS' ? (isset($results ['DATA']['CUSTOMER_LICENSED_FEATURES']) && is_array($results ['DATA']['CUSTOMER_LICENSED_FEATURES'])) ? $results ['DATA']['CUSTOMER_LICENSED_FEATURES'] : [] : [];
$this->licensedfeaturesList = isset($results ['DATA']['LICENSED_FEATURES_LIST']) ? $results ['DATA']['LICENSED_FEATURES_LIST'] : null; $this->licensedfeaturesList = isset($results ['DATA']['LICENSED_FEATURES_LIST']) ? $results ['DATA']['LICENSED_FEATURES_LIST'] : null;
$this->status = $this->getCurrentLicenseStatus(); $this->status = $this->getCurrentLicenseStatus();
@@ -92,7 +85,7 @@ class PmLicenseManager
$this->supportEndDate = G::getformatedDate($this->supportEndDate, 'M d, yyyy', SYS_LANG); $this->supportEndDate = G::getformatedDate($this->supportEndDate, 'M d, yyyy', SYS_LANG);
} }
} else { } else {
$resultsRegister=array(); $resultsRegister = [];
$resultsRegister['ID'] = $results['DATA']['DOMAIN_WORKSPACE']; $resultsRegister['ID'] = $results['DATA']['DOMAIN_WORKSPACE'];
$this->server = null; $this->server = null;
$this->file = null; $this->file = null;
@@ -104,11 +97,13 @@ class PmLicenseManager
if ($oServerConf->getProperty('LICENSE_INFO')) { if ($oServerConf->getProperty('LICENSE_INFO')) {
$licInfoA = $oServerConf->getProperty('LICENSE_INFO'); $licInfoA = $oServerConf->getProperty('LICENSE_INFO');
} else { } else {
$licInfoA = array(); $licInfoA = [];
} }
if (empty($licInfoA[SYS_SYS]) || ($licInfoA[SYS_SYS] != $resultsRegister)) {
$licInfoA[SYS_SYS] = $resultsRegister; $licInfoA[SYS_SYS] = $resultsRegister;
$oServerConf->setProperty('LICENSE_INFO', $licInfoA); $oServerConf->setProperty('LICENSE_INFO', $licInfoA);
} }
}
if ($flagActivatePlugins) { if ($flagActivatePlugins) {
$this->activateFeatures(); $this->activateFeatures();
@@ -163,7 +158,7 @@ class PmLicenseManager
if (file_exists(PATH_DATA_SITE . "ee")) { if (file_exists(PATH_DATA_SITE . "ee")) {
$aPlugins = unserialize(trim(file_get_contents(PATH_DATA_SITE . 'ee'))); $aPlugins = unserialize(trim(file_get_contents(PATH_DATA_SITE . 'ee')));
$aDenied=array(); $aDenied = [];
foreach ($aPlugins as $aPlugin) { foreach ($aPlugins as $aPlugin) {
$sClassName = substr($aPlugin ['sFilename'], 0, strpos($aPlugin ['sFilename'], '-')); $sClassName = substr($aPlugin ['sFilename'], 0, strpos($aPlugin ['sFilename'], '-'));
if (!(in_array($sClassName, $this->features))) { if (!(in_array($sClassName, $this->features))) {
@@ -178,7 +173,8 @@ class PmLicenseManager
} }
if (!(empty($aDenied))) { if (!(empty($aDenied))) {
if ((SYS_COLLECTION == "enterprise") && (SYS_TARGET == "pluginsList")) { if ((SYS_COLLECTION == "enterprise") && (SYS_TARGET == "pluginsList")) {
G::SendMessageText("The following plugins were restricted due to your enterprise license: ".implode(", ",$aDenied),"INFO"); G::SendMessageText("The following plugins were restricted due to your enterprise license: " . implode(", ",
$aDenied), "INFO");
} }
} }
} }
@@ -225,7 +221,7 @@ class PmLicenseManager
public function getCurrentLicenseStatus() public function getCurrentLicenseStatus()
{ {
$result = array (); $result = [];
switch ($this->result) { switch ($this->result) {
case 'OK': case 'OK':
$result ['result'] = 'ok'; $result ['result'] = 'ok';
@@ -290,10 +286,10 @@ class PmLicenseManager
public function getLicenseInfo() public function getLicenseInfo()
{ {
$validStatus = array ( $validStatus = [
'ok', 'ok',
'expired' 'expired'
); ];
$status = $this->getCurrentLicenseStatus(); $status = $this->getCurrentLicenseStatus();
$infoText = ""; $infoText = "";
if (in_array($status ['result'], $validStatus)) { if (in_array($status ['result'], $validStatus)) {
@@ -379,7 +375,7 @@ class PmLicenseManager
} else { } else {
$oServerConf = &ServerConf::getSingleton(); $oServerConf = &ServerConf::getSingleton();
$oServerConf->setProperty ( 'ACTIVE_LICENSE',array(SYS_SYS => $path)); $oServerConf->setProperty('ACTIVE_LICENSE', [SYS_SYS => $path]);
$this->saveDataLicense($results, $path, $redirect); $this->saveDataLicense($results, $path, $redirect);
if ($redirect) { if ($redirect) {
G::Header('location: ../enterprise/addonsStore'); G::Header('location: ../enterprise/addonsStore');
@@ -388,6 +384,7 @@ class PmLicenseManager
} }
} }
} }
/* /*
get Active License get Active License
*/ */
@@ -395,7 +392,7 @@ class PmLicenseManager
{ {
//get license from database, table LICENSE_MANAGER //get license from database, table LICENSE_MANAGER
try { try {
$aRow = array(); $aRow = [];
require_once("classes/model/LicenseManager.php"); require_once("classes/model/LicenseManager.php");
$oCriteria = new Criteria('workflow'); $oCriteria = new Criteria('workflow');
$oCriteria->addSelectColumn(LicenseManagerPeer::LICENSE_USER); $oCriteria->addSelectColumn(LicenseManagerPeer::LICENSE_USER);
@@ -497,7 +494,7 @@ class PmLicenseManager
$aRow = $oDataset->getRow(); $aRow = $oDataset->getRow();
} catch (Exception $e) { } catch (Exception $e) {
G::pr($e); G::pr($e);
$aRow = array (); $aRow = [];
} }
return $aRow; return $aRow;
} }
@@ -505,7 +502,7 @@ class PmLicenseManager
public function getActiveFeatures() public function getActiveFeatures()
{ {
if (file_exists(PATH_PLUGINS . 'enterprise/data/default')) { if (file_exists(PATH_PLUGINS . 'enterprise/data/default')) {
return array(); return [];
} }
return unserialize(G::decrypt($this->serial, file_get_contents(PATH_PLUGINS . 'enterprise/data/default'))); return unserialize(G::decrypt($this->serial, file_get_contents(PATH_PLUGINS . 'enterprise/data/default')));
} }

View File

@@ -293,10 +293,6 @@ try {
unset($_SESSION['FAILED_LOGINS']); unset($_SESSION['FAILED_LOGINS']);
// increment logins in heartbeat
$oServerConf =& ServerConf::getSingleton();
$oServerConf->sucessfulLogin();
// Assign the uid of user to userloggedobj // Assign the uid of user to userloggedobj
$RBAC->loadUserRolePermission($RBAC->sSystem, $uid); $RBAC->loadUserRolePermission($RBAC->sSystem, $uid);
$res = $RBAC->userCanAccess('PM_LOGIN'); $res = $RBAC->userCanAccess('PM_LOGIN');
@@ -324,15 +320,6 @@ try {
$weblog->create($aLog); $weblog->create($aLog);
/**end log**/ /**end log**/
//************** background processes, here we are putting some back office routines **********
$heartBeatNWIDate = $oServerConf->getHeartbeatProperty('HB_NEXT_GWI_DATE','HEART_BEAT_CONF');
if (is_null($heartBeatNWIDate)) {
$heartBeatNWIDate = time();
}
if (time() >= $heartBeatNWIDate) {
$oServerConf->setHeartbeatProperty('HB_NEXT_GWI_DATE', strtotime('+1 day'), 'HEART_BEAT_CONF');
}
//**** defining and saving server info, this file has the values of the global array $_SERVER **** //**** defining and saving server info, this file has the values of the global array $_SERVER ****
//this file is useful for command line environment (no Browser), I mean for triggers, crons and other executed over command line //this file is useful for command line environment (no Browser), I mean for triggers, crons and other executed over command line

View File

@@ -69,8 +69,7 @@ class SkinEngine
$this->forceTemplateCompile = true; $this->forceTemplateCompile = true;
} }
$_SESSION['currentSkin'] = SYS_SKIN; $_SESSION['currentSkin'] = SYS_SKIN;
} } else {
else {
$_SESSION['currentSkin'] = SYS_SKIN; $_SESSION['currentSkin'] = SYS_SKIN;
$_SESSION['currentSkinVariant'] = $this->skin; $_SESSION['currentSkinVariant'] = $this->skin;
} }
@@ -99,24 +98,26 @@ class SkinEngine
if (strtolower($this->mainSkin) != "classic") { if (strtolower($this->mainSkin) != "classic") {
if (defined('PATH_CUSTOM_SKINS') && is_dir(PATH_CUSTOM_SKINS . $this->mainSkin)) { // check this skin on user skins path if (defined('PATH_CUSTOM_SKINS') && is_dir(PATH_CUSTOM_SKINS . $this->mainSkin)) { // check this skin on user skins path
$skinObject = PATH_CUSTOM_SKINS . $this->mainSkin; $skinObject = PATH_CUSTOM_SKINS . $this->mainSkin;
} } else {
else if (is_dir($this->skinsBasePath . $this->mainSkin)) { // check this skin on core skins path if (is_dir($this->skinsBasePath . $this->mainSkin)) { // check this skin on core skins path
$skinObject = $this->skinsBasePath . $this->mainSkin; $skinObject = $this->skinsBasePath . $this->mainSkin;
} } else { //Skin doesn't exist
else { //Skin doesn't exist
$this->mainSkin = $this->skinDefault; $this->mainSkin = $this->skinDefault;
if (defined('PATH_CUSTOM_SKINS') && is_dir(PATH_CUSTOM_SKINS . $this->mainSkin)) { // check this skin on user skins path if (defined('PATH_CUSTOM_SKINS') && is_dir(PATH_CUSTOM_SKINS . $this->mainSkin)) { // check this skin on user skins path
$skinObject = PATH_CUSTOM_SKINS . $this->mainSkin; $skinObject = PATH_CUSTOM_SKINS . $this->mainSkin;
} } else {
else if (is_dir($this->skinsBasePath . $this->mainSkin)) { // check this skin on core skins path if (is_dir($this->skinsBasePath . $this->mainSkin)) { // check this skin on core skins path
$skinObject = $this->skinsBasePath . $this->mainSkin; $skinObject = $this->skinsBasePath . $this->mainSkin;
} }
} }
} }
}
}
//This should have an XML definition and a layout html //This should have an XML definition and a layout html
if ($skinObject && file_exists($skinObject . PATH_SEP . 'config.xml') if ($skinObject && file_exists($skinObject . PATH_SEP . 'config.xml')
&& file_exists($skinObject . PATH_SEP . 'layout.html')) { && file_exists($skinObject . PATH_SEP . 'layout.html')
) {
$configurationFile = $skinObject . PATH_SEP . 'config.xml'; $configurationFile = $skinObject . PATH_SEP . 'config.xml';
$layoutFile = $skinObject . PATH_SEP . 'layout.html'; $layoutFile = $skinObject . PATH_SEP . 'layout.html';
@@ -167,8 +168,7 @@ class SkinEngine
} }
$this->$skinMethod(); $this->$skinMethod();
} } catch (Exception $e) {
catch (Exception $e) {
switch ($e->getCode()) { switch ($e->getCode()) {
case SE_LAYOUT_NOT_FOUND: case SE_LAYOUT_NOT_FOUND:
@@ -178,8 +178,7 @@ class SkinEngine
$data['exception_list'] = array(); $data['exception_list'] = array();
if (substr($this->mainSkin, 0, 2) != 'ux') { if (substr($this->mainSkin, 0, 2) != 'ux') {
$url = '../login/login'; $url = '../login/login';
} } else {
else {
$url = '../main/login'; $url = '../main/login';
} }
@@ -251,8 +250,7 @@ class SkinEngine
if ($_SESSION['user_experience'] != 'NORMAL') { if ($_SESSION['user_experience'] != 'NORMAL') {
$templateFile = (is_dir(PATH_CUSTOM_SKINS . 'uxs')) ? PATH_CUSTOM_SKINS . 'simplified' . PATH_SEP . 'extJsInitLoad.html' : $templateFile; $templateFile = (is_dir(PATH_CUSTOM_SKINS . 'uxs')) ? PATH_CUSTOM_SKINS . 'simplified' . PATH_SEP . 'extJsInitLoad.html' : $templateFile;
} }
} } else {
else {
$styles = ""; $styles = "";
$header = $oHeadPublisher->getExtJsStylesheets($this->cssFileName); $header = $oHeadPublisher->getExtJsStylesheets($this->cssFileName);
$header .= $oHeadPublisher->includeExtJs(); $header .= $oHeadPublisher->includeExtJs();
@@ -271,10 +269,14 @@ class SkinEngine
$meta = null; $meta = null;
$dirBody = null; $dirBody = null;
if (isset($_SERVER["HTTP_USER_AGENT"]) && preg_match("/^.*\(.*Trident.(\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch)) { if (isset($_SERVER["HTTP_USER_AGENT"]) && preg_match("/^.*\(.*Trident.(\d+)\..+\).*$/",
$_SERVER["HTTP_USER_AGENT"], $arrayMatch)
) {
//Get the IE version //Get the IE version
if(preg_match("/^.*\(.*MSIE (\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch) || preg_match("/^.*\(.*rv.(\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch)){ if (preg_match("/^.*\(.*MSIE (\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"],
$arrayMatch) || preg_match("/^.*\(.*rv.(\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch)
) {
$ie = intval($arrayMatch[1]); $ie = intval($arrayMatch[1]);
} }
$isIE = Bootstrap::isIE(); $isIE = Bootstrap::isIE();
@@ -339,7 +341,8 @@ class SkinEngine
$header .= $oHeadPublisher->getExtJsStylesheets($this->cssFileName); $header .= $oHeadPublisher->getExtJsStylesheets($this->cssFileName);
} }
$smarty->assign('username', (isset($_SESSION['USR_USERNAME']) ? '(' . $_SESSION['USR_USERNAME'] . ' ' . G::LoadTranslation('ID_IN') . ' ' . SYS_SYS . ')' : '') ); $smarty->assign('username',
(isset($_SESSION['USR_USERNAME']) ? '(' . $_SESSION['USR_USERNAME'] . ' ' . G::LoadTranslation('ID_IN') . ' ' . SYS_SYS . ')' : ''));
$smarty->assign('header', $header); $smarty->assign('header', $header);
$smarty->force_compile = $this->forceTemplateCompile; $smarty->force_compile = $this->forceTemplateCompile;
@@ -371,8 +374,7 @@ class SkinEngine
if (isset($G_ENABLE_BLANK_SKIN) && $G_ENABLE_BLANK_SKIN) { if (isset($G_ENABLE_BLANK_SKIN) && $G_ENABLE_BLANK_SKIN) {
$smarty->display($layoutFileBlank['basename']); $smarty->display($layoutFileBlank['basename']);
} } else {
else {
$header = ''; $header = '';
if (isset($oHeadPublisher)) { if (isset($oHeadPublisher)) {
@@ -385,9 +387,12 @@ class SkinEngine
if (strpos($_SERVER['REQUEST_URI'], '/login/login') !== false) { if (strpos($_SERVER['REQUEST_URI'], '/login/login') !== false) {
$freeOfChargeText = ""; $freeOfChargeText = "";
if (! defined('SKIP_FREE_OF_CHARGE_TEXT')) if (!defined('SKIP_FREE_OF_CHARGE_TEXT')) {
$freeOfChargeText = "Supplied free of charge with no support, certification, warranty, <br>maintenance nor indemnity by Processmaker and its Certified Partners."; $freeOfChargeText = "Supplied free of charge with no support, certification, warranty, <br>maintenance nor indemnity by Processmaker and its Certified Partners.";
if(file_exists(PATH_CLASSES."class.pmLicenseManager.php")) $freeOfChargeText=""; }
if (file_exists(PATH_CLASSES . "class.pmLicenseManager.php")) {
$freeOfChargeText = "";
}
$fileFooter = PATH_SKINS . SYS_SKIN . PATH_SEP . 'footer.html'; $fileFooter = PATH_SKINS . SYS_SKIN . PATH_SEP . 'footer.html';
if (file_exists($fileFooter)) { if (file_exists($fileFooter)) {
@@ -408,7 +413,8 @@ class SkinEngine
} }
$oMenu = new Menu(); $oMenu = new Menu();
$menus = $oMenu->generateArrayForTemplate($G_MAIN_MENU, 'SelectedMenu', 'mainMenu', $G_MENU_SELECTED, $G_ID_MENU_SELECTED); $menus = $oMenu->generateArrayForTemplate($G_MAIN_MENU, 'SelectedMenu', 'mainMenu', $G_MENU_SELECTED,
$G_ID_MENU_SELECTED);
$smarty->assign('menus', $menus); $smarty->assign('menus', $menus);
if (substr(SYS_SKIN, 0, 2) == 'ux') { if (substr(SYS_SKIN, 0, 2) == 'ux') {
@@ -417,7 +423,8 @@ class SkinEngine
} }
$oSubMenu = new Menu(); $oSubMenu = new Menu();
$subMenus = $oSubMenu->generateArrayForTemplate($G_SUB_MENU, 'selectedSubMenu', 'subMenu', $G_SUB_MENU_SELECTED, $G_ID_SUB_MENU_SELECTED); $subMenus = $oSubMenu->generateArrayForTemplate($G_SUB_MENU, 'selectedSubMenu', 'subMenu',
$G_SUB_MENU_SELECTED, $G_ID_SUB_MENU_SELECTED);
$smarty->assign('subMenus', $subMenus); $smarty->assign('subMenus', $subMenus);
if (!defined('NO_DISPLAY_USERNAME')) { if (!defined('NO_DISPLAY_USERNAME')) {
@@ -435,14 +442,15 @@ class SkinEngine
$conf = new Configurations(); $conf = new Configurations();
$conf->getFormats(); $conf->getFormats();
$name = $conf->userNameFormat(isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME']: '', isset($_SESSION['USR_FULLNAME']) ? htmlentities($_SESSION['USR_FULLNAME'] , ENT_QUOTES, 'UTF-8'): '', isset($_SESSION['USER_LOGGED']) ? $_SESSION['USER_LOGGED'] : ''); $name = $conf->userNameFormat(isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : '',
isset($_SESSION['USR_FULLNAME']) ? htmlentities($_SESSION['USR_FULLNAME'], ENT_QUOTES,
'UTF-8') : '', isset($_SESSION['USER_LOGGED']) ? $_SESSION['USER_LOGGED'] : '');
$smarty->assign('user', $name); $smarty->assign('user', $name);
} }
if (defined('SYS_SYS')) { if (defined('SYS_SYS')) {
$logout = '/sys' . SYS_SYS . '/' . SYS_LANG . '/' . SYS_SKIN . '/login/login'; $logout = '/sys' . SYS_SYS . '/' . SYS_LANG . '/' . SYS_SKIN . '/login/login';
} } else {
else {
$logout = '/sys/' . SYS_LANG . '/' . SYS_SKIN . '/login/login'; $logout = '/sys/' . SYS_LANG . '/' . SYS_SKIN . '/login/login';
} }
@@ -455,8 +463,7 @@ class SkinEngine
if (class_exists('ProcessMaker\Plugins\PluginRegistry')) { if (class_exists('ProcessMaker\Plugins\PluginRegistry')) {
$oPluginRegistry = PluginRegistry::loadSingleton(); $oPluginRegistry = PluginRegistry::loadSingleton();
$sCompanyLogo = $oPluginRegistry->getCompanyLogo('/images/processmaker.logo.jpg'); $sCompanyLogo = $oPluginRegistry->getCompanyLogo('/images/processmaker.logo.jpg');
} } else {
else {
$sCompanyLogo = '/images/processmaker.logo.jpg'; $sCompanyLogo = '/images/processmaker.logo.jpg';
} }
@@ -483,8 +490,7 @@ class SkinEngine
if (isset($G_ENABLE_BLANK_SKIN) && $G_ENABLE_BLANK_SKIN) { if (isset($G_ENABLE_BLANK_SKIN) && $G_ENABLE_BLANK_SKIN) {
$smarty->force_compile = $this->forceTemplateCompile; $smarty->force_compile = $this->forceTemplateCompile;
$smarty->display($this->layoutFileBlank['basename']); $smarty->display($this->layoutFileBlank['basename']);
} } else {
else {
$header = ''; $header = '';
if (isset($oHeadPublisher)) { if (isset($oHeadPublisher)) {
@@ -522,11 +528,13 @@ class SkinEngine
global $G_ID_SUB_MENU_SELECTED; global $G_ID_SUB_MENU_SELECTED;
$oMenu = new Menu(); $oMenu = new Menu();
$menus = $oMenu->generateArrayForTemplate ( $G_MAIN_MENU,'SelectedMenu', 'mainMenu',$G_MENU_SELECTED, $G_ID_MENU_SELECTED ); $menus = $oMenu->generateArrayForTemplate($G_MAIN_MENU, 'SelectedMenu', 'mainMenu', $G_MENU_SELECTED,
$G_ID_MENU_SELECTED);
$smarty->assign('menus', $menus); $smarty->assign('menus', $menus);
$oSubMenu = new Menu(); $oSubMenu = new Menu();
$subMenus = $oSubMenu->generateArrayForTemplate ( $G_SUB_MENU,'selectedSubMenu', 'subMenu',$G_SUB_MENU_SELECTED, $G_ID_SUB_MENU_SELECTED ); $subMenus = $oSubMenu->generateArrayForTemplate($G_SUB_MENU, 'selectedSubMenu', 'subMenu',
$G_SUB_MENU_SELECTED, $G_ID_SUB_MENU_SELECTED);
$smarty->assign('subMenus', $subMenus); $smarty->assign('subMenus', $subMenus);
$smarty->assign('user', isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : ''); $smarty->assign('user', isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : '');
@@ -539,9 +547,9 @@ class SkinEngine
if (class_exists('ProcessMaker\Plugins\PluginRegistry')) { if (class_exists('ProcessMaker\Plugins\PluginRegistry')) {
$oPluginRegistry = PluginRegistry::loadSingleton(); $oPluginRegistry = PluginRegistry::loadSingleton();
$sCompanyLogo = $oPluginRegistry->getCompanyLogo('/images/processmaker.logo.jpg'); $sCompanyLogo = $oPluginRegistry->getCompanyLogo('/images/processmaker.logo.jpg');
} } else {
else
$sCompanyLogo = '/images/processmaker.logo.jpg'; $sCompanyLogo = '/images/processmaker.logo.jpg';
}
$smarty->assign('logo_company', $sCompanyLogo); $smarty->assign('logo_company', $sCompanyLogo);
$smarty->force_compile = $this->forceTemplateCompile; $smarty->force_compile = $this->forceTemplateCompile;
@@ -578,8 +586,7 @@ class SkinEngine
if (empty($this->layout)) { if (empty($this->layout)) {
$smarty->template_dir = PATH_TPL; $smarty->template_dir = PATH_TPL;
$tpl = $viewFile . '.html'; $tpl = $viewFile . '.html';
} } else {
else {
$smarty->template_dir = $this->layoutFile['dirname']; $smarty->template_dir = $this->layoutFile['dirname'];
$tpl = 'layout-' . $this->layout . '.html'; $tpl = 'layout-' . $this->layout . '.html';
//die($smarty->template_dir.PATH_SEP.$tpl); //die($smarty->template_dir.PATH_SEP.$tpl);
@@ -649,11 +656,13 @@ class SkinEngine
$extSkin = $oServerConf->getProperty("extSkin"); $extSkin = $oServerConf->getProperty("extSkin");
if (!$extSkin) { if (!$extSkin) {
$extSkin = array(); $extSkin = [SYS_SKIN => "xtheme-gray"];
} $oServerConf->setProperty("extSkin", $extSkin);
} else if (empty($extSkin[SYS_SKIN])) {
$extSkin[SYS_SKIN] = "xtheme-gray"; $extSkin[SYS_SKIN] = "xtheme-gray";
$oServerConf->setProperty("extSkin", $extSkin); $oServerConf->setProperty("extSkin", $extSkin);
}
//End of extJS Theme setup //End of extJS Theme setup
if (isset($G_ENABLE_BLANK_SKIN) && $G_ENABLE_BLANK_SKIN) { if (isset($G_ENABLE_BLANK_SKIN) && $G_ENABLE_BLANK_SKIN) {
@@ -661,8 +670,7 @@ class SkinEngine
$smarty->force_compile = $this->forceTemplateCompile; $smarty->force_compile = $this->forceTemplateCompile;
$smarty->display($layoutFileBlank['basename']); $smarty->display($layoutFileBlank['basename']);
} } else {
else {
$smarty->template_dir = $this->layoutFile['dirname']; $smarty->template_dir = $this->layoutFile['dirname'];
$meta = null; $meta = null;
@@ -671,7 +679,10 @@ class SkinEngine
if (preg_match("/^.*\(.*Trident.(\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch)) { if (preg_match("/^.*\(.*Trident.(\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch)) {
//Get the IE version //Get the IE version
if(preg_match("/^.*\(.*MSIE (\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch) || preg_match("/^.*\(.*rv.(\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"], $arrayMatch)){ if (preg_match("/^.*\(.*MSIE (\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"],
$arrayMatch) || preg_match("/^.*\(.*rv.(\d+)\..+\).*$/", $_SERVER["HTTP_USER_AGENT"],
$arrayMatch)
) {
$ie = intval($arrayMatch[1]); $ie = intval($arrayMatch[1]);
} }
@@ -700,9 +711,12 @@ class SkinEngine
if (strpos($_SERVER['REQUEST_URI'], '/login/login') !== false) { if (strpos($_SERVER['REQUEST_URI'], '/login/login') !== false) {
$freeOfChargeText = ""; $freeOfChargeText = "";
if (! defined('SKIP_FREE_OF_CHARGE_TEXT')) if (!defined('SKIP_FREE_OF_CHARGE_TEXT')) {
$freeOfChargeText = "Supplied free of charge with no support, certification, warranty, maintenance nor indemnity by ProcessMaker and its Certified Partners."; $freeOfChargeText = "Supplied free of charge with no support, certification, warranty, maintenance nor indemnity by ProcessMaker and its Certified Partners.";
if(file_exists(PATH_CLASSES."PmLicenseManager.php")) $freeOfChargeText=""; }
if (file_exists(PATH_CLASSES . "PmLicenseManager.php")) {
$freeOfChargeText = "";
}
$fileFooter = PATH_SKINS . SYS_SKIN . PATH_SEP . 'footer.html'; $fileFooter = PATH_SKINS . SYS_SKIN . PATH_SEP . 'footer.html';
if (file_exists($fileFooter)) { if (file_exists($fileFooter)) {
@@ -723,11 +737,13 @@ class SkinEngine
} }
$oMenu = new Menu(); $oMenu = new Menu();
$menus = $oMenu->generateArrayForTemplate($G_MAIN_MENU, 'SelectedMenu', 'mainMenu', $G_MENU_SELECTED, $G_ID_MENU_SELECTED); $menus = $oMenu->generateArrayForTemplate($G_MAIN_MENU, 'SelectedMenu', 'mainMenu', $G_MENU_SELECTED,
$G_ID_MENU_SELECTED);
$smarty->assign('menus', $menus); $smarty->assign('menus', $menus);
$oSubMenu = new Menu(); $oSubMenu = new Menu();
$subMenus = $oSubMenu->generateArrayForTemplate($G_SUB_MENU, 'selectedSubMenu', 'subMenu', $G_SUB_MENU_SELECTED, $G_ID_SUB_MENU_SELECTED); $subMenus = $oSubMenu->generateArrayForTemplate($G_SUB_MENU, 'selectedSubMenu', 'subMenu',
$G_SUB_MENU_SELECTED, $G_ID_SUB_MENU_SELECTED);
$smarty->assign('subMenus', $subMenus); $smarty->assign('subMenus', $subMenus);
if (!defined('NO_DISPLAY_USERNAME')) { if (!defined('NO_DISPLAY_USERNAME')) {
@@ -738,9 +754,11 @@ class SkinEngine
$smarty->assign('user_logged', (isset($_SESSION['USER_LOGGED']) ? $_SESSION['USER_LOGGED'] : '')); $smarty->assign('user_logged', (isset($_SESSION['USER_LOGGED']) ? $_SESSION['USER_LOGGED'] : ''));
if (SYS_SKIN == 'neoclassic') { if (SYS_SKIN == 'neoclassic') {
$smarty->assign('tracker', (SYS_COLLECTION == 'tracker') ? ( ($G_PUBLISH->Parts[0]['File'] != 'tracker/loginpm3' ) ? true : '') : ''); $smarty->assign('tracker',
(SYS_COLLECTION == 'tracker') ? (($G_PUBLISH->Parts[0]['File'] != 'tracker/loginpm3') ? true : '') : '');
} else { } else {
$smarty->assign('tracker', (SYS_COLLECTION == 'tracker') ? ( ($G_PUBLISH->Parts[0]['File'] != 'tracker/login' ) ? true : '') : ''); $smarty->assign('tracker',
(SYS_COLLECTION == 'tracker') ? (($G_PUBLISH->Parts[0]['File'] != 'tracker/login') ? true : '') : '');
} }
$smarty->assign('switch_interface', $switch_interface); $smarty->assign('switch_interface', $switch_interface);
$smarty->assign('switch_interface_label', G::LoadTranslation('ID_SWITCH_INTERFACE')); $smarty->assign('switch_interface_label', G::LoadTranslation('ID_SWITCH_INTERFACE'));
@@ -753,7 +771,9 @@ class SkinEngine
$conf = new Configurations(); $conf = new Configurations();
$conf->getFormats(); $conf->getFormats();
$name = $conf->userNameFormat(isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME']: '', isset($_SESSION['USR_FULLNAME']) ? htmlentities($_SESSION['USR_FULLNAME'] , ENT_QUOTES, 'UTF-8'): '', isset($_SESSION['USER_LOGGED']) ? $_SESSION['USER_LOGGED'] : ''); $name = $conf->userNameFormat(isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : '',
isset($_SESSION['USR_FULLNAME']) ? htmlentities($_SESSION['USR_FULLNAME'], ENT_QUOTES,
'UTF-8') : '', isset($_SESSION['USER_LOGGED']) ? $_SESSION['USER_LOGGED'] : '');
$smarty->assign('user', $name); $smarty->assign('user', $name);
} }
@@ -767,7 +787,8 @@ class SkinEngine
$RBAC->aUserInfo['PROCESSMAKER']['ROLE']['ROL_CODE'] == 'PROCESSMAKER_ADMIN' $RBAC->aUserInfo['PROCESSMAKER']['ROLE']['ROL_CODE'] == 'PROCESSMAKER_ADMIN'
) { ) {
if ($expireInLabel != '') { if ($expireInLabel != '') {
$smarty->assign('msgVer', '<label class="textBlack">' . $expireInLabel . '</label>&nbsp;&nbsp;'); $smarty->assign('msgVer',
'<label class="textBlack">' . $expireInLabel . '</label>&nbsp;&nbsp;');
} }
} }
} }
@@ -798,12 +819,10 @@ class SkinEngine
if (isset($sFotoSelect) && $sFotoSelect != '' && !(strcmp($sWspaceSelect, SYS_SYS))) { if (isset($sFotoSelect) && $sFotoSelect != '' && !(strcmp($sWspaceSelect, SYS_SYS))) {
$sCompanyLogo = $oPluginRegistry->getCompanyLogo($sFotoSelect); $sCompanyLogo = $oPluginRegistry->getCompanyLogo($sFotoSelect);
$sCompanyLogo = "/sys" . SYS_SYS . "/" . SYS_LANG . "/" . SYS_SKIN . "/setup/showLogoFile.php?id=" . base64_encode($sCompanyLogo); $sCompanyLogo = "/sys" . SYS_SYS . "/" . SYS_LANG . "/" . SYS_SKIN . "/setup/showLogoFile.php?id=" . base64_encode($sCompanyLogo);
} } else {
else {
$sCompanyLogo = $oPluginRegistry->getCompanyLogo('/images/processmaker.logo.jpg'); $sCompanyLogo = $oPluginRegistry->getCompanyLogo('/images/processmaker.logo.jpg');
} }
} } else {
else {
$sCompanyLogo = '/images/processmaker.logo.jpg'; $sCompanyLogo = '/images/processmaker.logo.jpg';
} }