예제 #1
0
/**
 * To implement pmos translation function on smarty templates
 *
 * example use:
 *
 *    <h1>{translate label="ID_HOME_TITLE"}</h1>
 *
 * @params $params mixed array containg all parameters passed from smarty plugin call
 * @author Erik Amaru Ortiz <aortiz.erik@gmail.com, erik@colosa.com>
 */
function translate($params)
{
    if (array_key_exists('lang', $params)) {
        $lang = $params['lang'];
    } elseif (defined('SYS_LANG')) {
        $lang = SYS_LANG;
    } else {
        $lang = 'en';
    }
    if (!array_key_exists('label', $params)) {
        throw new Exception('Error: Param "label" is missing on "tranlate" smarty function, it should be called like: {translate label="SOME_LABEL_ID"}');
    }
    echo G::loadTranslation($params['label'], $lang);
}
예제 #2
0
function lookforchildren($parent, $level)
{
    global $xVar;
    global $template;
    global $lastDept;
    $oDept = new Department();
    $allDepartments = $oDept->getDepartments($parent);
    $level = $level + 1;
    if (!isset($lastDept[$level])) {
        $lastDept[$level] = true;
    }
    $lastDept[$level] = true;
    foreach ($allDepartments as $department) {
        $xVar++;
        $depUID = htmlentities($department['DEP_UID']);
        $depTitle = strip_tags($department['DEP_TITLE']);
        $template->newBlock('department');
        $template->assign('xVar', $xVar);
        $template->assign('UID', $depUID);
        $template->assign('DEPO_TITLE', $depTitle);
        $template->assign('ID_EDIT', G::LoadTranslation('ID_EDIT'));
        $template->assign('ID_MEMBERS', G::LoadTranslation('ID_MEMBERS'));
        $template->assign('ID_NEW', G::loadTranslation("ID_NEW"));
        for ($iLevel = 2; $iLevel <= $level; $iLevel++) {
            $template->newBlock('level');
            $template->assign('UID', $iLevel);
            if ($iLevel == $level) {
                if ($department['DEP_LAST']) {
                    $lastDept[$level] = false;
                }
                $template->assign('image', $department['DEP_LAST'] == 0 ? 'ftv2node' : 'ftv2lastnode');
                $template->assign('background', $department['DEP_LAST'] == 0 ? 'ftv2vertline' : 'ftv2blank');
            } else {
                $template->assign('image', 'ftv2blank');
                $template->assign('background', $lastDept[$iLevel] ? 'ftv2vertline' : 'ftv2blank');
            }
        }
        if ($department['HAS_CHILDREN'] == 0) {
            $template->newBlock('delete');
            $template->assign('UID', $depUID);
            $template->assign('ID_DELETE', G::LoadTranslation('ID_DELETE'));
        }
        lookforchildren($depUID, $level);
    }
    return;
}
예제 #3
0
                } else {
                    $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP'] = $aPreviousStep['PAGE'];
                    $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = G::loadTranslation("ID_PREVIOUS_STEP");
                }
                $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP'] = $aNextStep['PAGE'];
                $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP_LABEL'] = G::loadTranslation("ID_NEXT_STEP");
                /** Added By erik date: 16-05-08
                 * Description: this was added for the additional database connections */
                G::LoadClass('dbConnections');
                $oDbConnections = new dbConnections($_SESSION['PROCESS']);
                $oDbConnections->loadAdditionalConnections();
                $stepFilename = "{$sNamespace}/{$sStepName}";
                G::evalJScript("\n        if (parent.setCurrent) {\n          parent.setCurrent('" . $_GET['UID'] . "');\n        }");
                $G_PUBLISH->AddContent('content', $stepFilename);
            } else {
                $aMessage['MESSAGE'] = G::loadTranslation('ID_EXTERNAL_STEP_MISSING', SYS_LANG, array("plugin" => $sNamespace));
                $G_PUBLISH->AddContent('xmlform', 'xmlform', 'login/showMessage', '', $aMessage);
            }
            break;
    }
    //Add content content step - End
} catch (Exception $e) {
    G::SendTemporalMessage(G::LoadTranslation('ID_PROCESS_DEF_PROBLEM'), 'error', 'string', 3, 100);
    $aMessage = array();
    $aMessage['MESSAGE'] = $e->getMessage();
    $G_PUBLISH = new Publisher();
    $G_PUBLISH->AddContent('xmlform', 'xmlform', 'login/showMessage', '', $aMessage);
    G::RenderPage('publish', 'blank');
    die;
}
$oHeadPublisher =& headPublisher::getSingleton();
예제 #4
0
 /**
  * Update data from a addTable record
  *
  * @param $row
  */
 public function _dataUpdate($row, $primaryKeys)
 {
     $keys = G::decrypt($row['__index__'], 'pmtable');
     $keys = explode(',', $keys);
     unset($row['__index__']);
     $params = array();
     foreach ($keys as $key) {
         $params[] = is_numeric($key) ? $key : "'{$key}'";
     }
     $obj = null;
     eval('$obj = ' . $this->classPeerName . '::retrieveByPk(' . implode(',', $params) . ');');
     if (is_object($obj)) {
         foreach ($row as $key => $value) {
             // validation, don't modify primary keys
             if (in_array($key, $primaryKeys)) {
                 throw new Exception(G::loadTranslation('ID_DONT_MODIFY_PK_VALUE', array($key)));
             }
             $action = 'set' . AdditionalTables::getPHPName($key);
             $obj->{$action}($value);
         }
         if ($r = $obj->validate()) {
             $obj->save();
             $result = true;
         } else {
             $msg = '';
             foreach ($obj->getValidationFailures() as $objValidationFailure) {
                 $msg .= $objValidationFailure->getMessage() . "\n";
             }
             throw new Exception($msg);
         }
     } else {
         $result = false;
     }
     return $result;
 }
예제 #5
0
global $_DBArray;



$_DBArray ['langOptions'] = $availableLangArray;

$_DBArray ['availableWorkspace'] = $availableWorkspaceArray;



$_SESSION ['_DBArray'] = $_DBArray;



$aField ['LOGIN_VERIFY_MSG'] = G::loadTranslation ('LOGIN_VERIFY_MSG');

$aField['USER_LANG'] = SYS_LANG;



$G_PUBLISH = new Publisher ();

if (!defined('WS_IN_LOGIN')) {

    define('WS_IN_LOGIN', 'serverconf');

}

$fileLogin = '******';
예제 #6
0
            echo G::json_encode($result);
        } catch (Exception $e) {
            $confParams = array('lang' => $lang, 'status' => 'failed');
            $appCacheViewEngine = $oServerConf->setProperty('APP_CACHE_VIEW_ENGINE', $confParams);
            echo '{success: false, msg:"' . $e->getMessage() . '"}';
        }
        break;
    case 'recreate-root':
        $sh = md5(filemtime(PATH_GULLIVER . "/class.g.php"));
        $h = G::encrypt($_POST['host'] . $sh . $_POST['user'] . $sh . $_POST['password'] . $sh . 1, $sh);
        $insertStatements = "define ( 'HASH_INSTALLATION','{$h}' );  \ndefine ( 'SYSTEM_HASH', '{$sh}' ); \n";
        $lines = array();
        $content = '';
        $filename = PATH_HOME . 'engine' . PATH_SEP . 'config' . PATH_SEP . 'paths_installed.php';
        $lines = file($filename);
        $count = 1;
        foreach ($lines as $line_num => $line) {
            $pos = strpos($line, "define");
            if ($pos !== false && $count < 3) {
                $content = $content . $line;
                $count++;
            }
        }
        $content = "<?php \n" . $content . "\n" . $insertStatements . "\n";
        if (file_put_contents($filename, $content) != false) {
            echo G::loadTranslation('ID_MESSAGE_ROOT_CHANGE_SUCESS');
        } else {
            echo G::loadTranslation('ID_MESSAGE_ROOT_CHANGE_FAILURE');
        }
        break;
}
예제 #7
0
    /**

     * import process fromLibrary: downloads and imports a process from the ProcessMaker library

     *

     * @param string sessionId : The session ID (which was obtained at login).

     * @param string processId :

     * @param string version :

     * @param string importOption :

     * @param string usernameLibrary : The username to obtain access to the ProcessMaker library.

     * @param string passwordLibrary : The password to obtain access to the ProcessMaker library.

     * @return $eturns will return an object

     */



    public function getCaseNotes ($applicationID, $userUid = '')

    {

        try {

            G::LoadClass( 'case' );



            $result = new wsGetCaseNotesResponse( 0, G::loadTranslation( 'ID_SUCCESS' ), Cases::getCaseNotes( $applicationID, 'array', $userUid ) );



            $var = array ();



            foreach ($result->notes as $key => $value) {

                $var2 = array ();



                foreach ($value as $keys => $values) {

                    $field = strtolower( $keys );

                    $var2[$field] = $values;

                }



                $var[] = $var2;

            }



            $result->notes = $var;



            return $result;

        } catch (Exception $e) {

            $result = new wsResponse( 100, $e->getMessage() );



            return $result;

        }

    }
예제 #8
0
 public function getUsersFromDepartment($sDepUid, $sManagerUid)
 {
     try {
         $oCriteria = new Criteria('workflow');
         $oCriteria->addSelectColumn(UsersPeer::USR_UID);
         $oCriteria->addSelectColumn(UsersPeer::USR_REPORTS_TO);
         $oCriteria->add(UsersPeer::USR_STATUS, 'CLOSED', Criteria::NOT_EQUAL);
         $oCriteria->add(UsersPeer::DEP_UID, $sDepUid);
         $rs = UsersPeer::doSelectRS($oCriteria);
         $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
         $oUser = new Users();
         $aUsers[] = array('USR_UID' => 'char', 'USR_USERNAME' => 'char', 'USR_FULLNAME' => 'char', 'USR_REPORTS_TO' => 'char', 'USR_MANAGER' => 'char');
         $rs->next();
         $row = $rs->getRow();
         while (is_array($row)) {
             $usrFields = $oUser->LoadDetails($row['USR_UID']);
             $row['USR_USERNAME'] = $usrFields['USR_USERNAME'];
             $row['USR_FULLNAME'] = $usrFields['USR_FULLNAME'];
             $row['USR_MANAGER'] = $row['USR_UID'] == $sManagerUid ? G::loadTranslation("ID_YES") : G::loadTranslation("ID_NO");
             $row['DEP_UID'] = $sDepUid;
             if ($row['USR_REPORTS_TO'] != '') {
                 try {
                     $managerFields = $oUser->LoadDetails($row['USR_REPORTS_TO']);
                     $row['USR_REPORTS_NAME'] = $managerFields['USR_FULLNAME'];
                 } catch (exception $e) {
                     $row['USR_REPORTS_NAME'] = '.';
                 }
             } else {
                 $row['USR_REPORTS_NAME'] = '.';
             }
             $aUsers[] = $row;
             $rs->next();
             $row = $rs->getRow();
         }
         G::LoadClass('ArrayPeer');
         global $_DBArray;
         $_DBArray['DepartmentUserList'] = $aUsers;
         $_SESSION['_DBArray'] = $_DBArray;
         $oCriteriaT = new Criteria('dbarray');
         $oCriteriaT->setDBArrayTable('DepartmentUserList');
         return $oCriteriaT;
     } catch (exception $e) {
         throw $e;
     }
 }
if (isset($_GET['type'])) {
    $sType = $_GET['type'];
} else {
    $sType = '';
}
try {
    $aNextStep = $oCase->getNextSupervisorStep($_SESSION['PROCESS'], $_SESSION['STEP_POSITION'], $sType);
    $aPreviousStep = $oCase->getPreviousSupervisorStep($_SESSION['PROCESS'], $_SESSION['STEP_POSITION'], $sType);
} catch (exception $e) {
    G::SendTemporalMessage($e->getMessage(), 'error', 'string');
}
if (!$aPreviousStep) {
    $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = '';
} else {
    $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP'] = 'cases_StepToRevise?type=DYNAFORM&DYN_UID=' . $aPreviousStep['UID'] . '&position=' . $aPreviousStep['POSITION'] . '&APP_UID=' . $_GET['APP_UID'] . '&DEL_INDEX=' . $_GET['DEL_INDEX'];
    $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = G::loadTranslation("ID_PREVIOUS_STEP");
}
$Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP'] = 'cases_StepToRevise?type=DYNAFORM&DYN_UID=' . $aNextStep['UID'] . '&position=' . $aNextStep['POSITION'] . '&APP_UID=' . $_GET['APP_UID'] . '&DEL_INDEX=' . $_GET['DEL_INDEX'];
/** Added By erik
 * date: 16-05-08
 * Description: this was added for the additional database connections */
G::LoadClass('dbConnections');
$oDbConnections = new dbConnections($_SESSION['PROCESS']);
$oDbConnections->loadAdditionalConnections();
$G_PUBLISH = new Publisher();
if ($_GET['DYN_UID'] != '') {
    $_SESSION['CURRENT_DYN_UID'] = $_GET['DYN_UID'];
    $G_PUBLISH->AddContent('dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_GET['DYN_UID'], '', $Fields['APP_DATA'], 'cases_SaveDataSupervisor?UID=' . $_GET['DYN_UID']);
}
G::RenderPage('publish', 'blank');
if (!isset($_GET['ex'])) {
예제 #10
0
 public function getUxTypesList($type = 'assoc')
 {
     $list = array();
     if ($type == 'assoc') {
         $list = array('NORMAL' => G::loadTranslation('ID_UXS_NORMAL'), 'SIMPLIFIED' => G::loadTranslation('ID_UXS_SIMPLIFIED'), 'SWITCHABLE' => G::loadTranslation('ID_UXS_SWITCHABLE'), 'SINGLE' => G::loadTranslation('ID_UXS_SINGLE'));
     } else {
         $list = array(array('NORMAL', G::loadTranslation('ID_UXS_NORMAL')), array('SIMPLIFIED', G::loadTranslation('ID_UXS_SIMPLIFIED')), array('SWITCHABLE', G::loadTranslation('ID_UXS_SWITCHABLE')), array('SINGLE', G::loadTranslation('ID_UXS_SINGLE')));
     }
     return $list;
 }
예제 #11
0
     $_SESSION['TRIGGER_DEBUG']['info'][1]['TIME'] = 'AFTER';
     $_SESSION['TRIGGER_DEBUG']['info'][1]['TRIGGERS_NAMES'] = $oCase->getTriggerNames($triggers);
     $_SESSION['TRIGGER_DEBUG']['info'][1]['TRIGGERS_VALUES'] = $triggers;
 }
 $oCase->updateCase($_SESSION['APPLICATION'], $appFields);
 // Send notifications - Start
 $oUser = new Users();
 $aUser = $oUser->load($_SESSION['USER_LOGGED']);
 if (trim($aUser['USR_EMAIL']) == '') {
     $aUser['USR_EMAIL'] = 'info@' . $_SERVER['HTTP_HOST'];
 }
 $sFromName = '"' . $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'] . '" <' . $aUser['USR_EMAIL'] . '>';
 try {
     $oCase->sendNotifications($_SESSION['TASK'], $_POST['form']['TASKS'], $appFields['APP_DATA'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $sFromName);
 } catch (Exception $e) {
     G::SendTemporalMessage(G::loadTranslation('ID_NOTIFICATION_ERROR') . ' - ' . $e->getMessage(), 'warning', 'string', null, '100%');
 }
 // Send notifications - End
 // Events - Start
 $oEvent = new Event();
 $oEvent->closeAppEvents($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['TASK']);
 $oCurrentAppDel = AppDelegationPeer::retrieveByPk($_SESSION['APPLICATION'], $_SESSION['INDEX'] + 1);
 $multipleDelegation = false;
 // check if there are multiple derivations
 if (count($_POST['form']['TASKS']) > 1) {
     $multipleDelegation = true;
 }
 // If the case has been delegated
 if (isset($oCurrentAppDel)) {
     // if there is just a single derivation the TASK_UID can be set by the delegation data
     if (!$multipleDelegation) {
예제 #12
0
        ?>
" href="#" onclick="__ActionDelete('<?php 
        echo $node_name;
        ?>
', '<?php 
        echo $node['__ATTRIBUTES__']['type'];
        ?>
');return false;"><img src="/images/e_Delete.png" width="15" height="15" border="0" onmouseout="backImage(this,'')" onmouseover="backImage(this,'url(/images/dynamicForm/hover.gif) no-repeat')"/></a>
						</div>
            <?php 
    } else {
        ?>
                <div class="tool"><img src="/images/options.png" width="12" height="12" border="0"/> </div>
                <div class="jq-checkpointSubhead" style="display:none">
                    <a title="<?php 
        echo G::loadTranslation('ID_REMOVE_FIELD');
        ?>
" href="#" onclick="__ActionDelete('<?php 
        echo $node_name;
        ?>
', '<?php 
        echo $node['__ATTRIBUTES__']['type'];
        ?>
');return false;"><img src="/images/e_Delete.png" width="15" height="15" border="0" onmouseout="backImage(this,'')" onmouseover="backImage(this,'url(/images/dynamicForm/hover.gif) no-repeat')"/></a>
                </div>
            <?php 
    }
    ?>
					</td>
				</tr>
				</table>	
예제 #13
0
     case -2:
         G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels');
         G::header('location: ../login/login');
         die;
         break;
     case -1:
         G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels');
         G::header('location: ../login/login');
         die;
         break;
 }
 if (empty($_POST) || !isset($_POST['form'])) {
     if (empty($_FILES)) {
         throw new Exception(G::loadTranslation('ID_ERROR_UPLOADING_FILENAME'));
     } else {
         throw new Exception(G::loadTranslation('ID_POSTED_DATA_EMPTY'));
     }
 }
 $form = $_POST['form'];
 if (isset($_GET['USR_UID'])) {
     $form['USR_UID'] = $_GET['USR_UID'];
 } else {
     $form['USR_UID'] = '';
 }
 if (isset($_FILES['form']['name']['USR_RESUME'])) {
     if ($_FILES['form']['tmp_name']['USR_RESUME'] != '') {
         $form['USR_RESUME'] = $_FILES['form']['name']['USR_RESUME'];
     } else {
         $form['USR_RESUME'] = '';
     }
 }
예제 #14
0
 private function _getSystemInfo()
 {
     G::LoadClass("system");
     if (getenv('HTTP_CLIENT_IP')) {
         $ip = getenv('HTTP_CLIENT_IP');
     } else {
         if (getenv('HTTP_X_FORWARDED_FOR')) {
             $ip = getenv('HTTP_X_FORWARDED_FOR');
         } else {
             $ip = getenv('REMOTE_ADDR');
         }
     }
     $redhat = '';
     if (file_exists('/etc/redhat-release')) {
         $fnewsize = filesize('/etc/redhat-release');
         $fp = fopen('/etc/redhat-release', 'r');
         $redhat = trim(fread($fp, $fnewsize));
         fclose($fp);
     }
     $redhat .= " (" . PHP_OS . ")";
     if (defined("DB_HOST")) {
         G::LoadClass('net');
         G::LoadClass('dbConnections');
         $dbNetView = new NET(DB_HOST);
         $dbNetView->loginDbServer(DB_USER, DB_PASS);
         $dbConns = new dbConnections('');
         $availdb = '';
         foreach ($dbConns->getDbServicesAvailables() as $key => $val) {
             if ($availdb != '') {
                 $availdb .= ', ';
             }
             $availdb .= $val['name'];
         }
         try {
             $sMySQLVersion = $dbNetView->getDbServerVersion(DB_ADAPTER);
         } catch (Exception $oException) {
             $sMySQLVersion = '?????';
         }
     }
     if (file_exists(PATH_HTML . "lib/versions")) {
         $versions = json_decode(file_get_contents(PATH_HTML . "lib/versions"), true);
         $pmuiVer = $versions["pmui_ver"];
         $mafeVer = $versions["mafe_ver"];
         $pmdynaformVer = $versions["pmdynaform_ver"];
     } else {
         $pmuiVer = $mafeVer = $pmdynaformVer = "(unknown)";
     }
     $sysSection = G::loadTranslation('ID_SYSTEM_INFO');
     $pmSection = G::LoadTranslation('ID_PROCESS_INFORMATION');
     $properties = array();
     $ee = class_exists('pmLicenseManager') ? " - Enterprise Edition" : '';
     $systemName = 'ProcessMaker';
     if (defined('SYSTEM_NAME')) {
         $systemName = SYSTEM_NAME;
     }
     $properties[] = array($systemName . ' Ver.', System::getVersion() . $ee, $pmSection);
     $properties[] = array("PMUI JS Lib. Ver.", $pmuiVer, $pmSection);
     $properties[] = array("MAFE JS Lib. Ver.", $mafeVer, $pmSection);
     $properties[] = array("PM Dynaform JS Lib. Ver.", $pmdynaformVer, $pmSection);
     if (file_exists(PATH_DATA . 'log/upgrades.log')) {
         $properties[] = array(G::LoadTranslation('ID_UPGRADES_PATCHES'), '<a href="#" onclick="showUpgradedLogs(); return false;">' . G::LoadTranslation('ID_UPGRADE_VIEW_LOG') . '</a>', $pmSection);
     } else {
         $properties[] = array(G::LoadTranslation('ID_UPGRADES_PATCHES'), G::LoadTranslation('ID_UPGRADE_NEVER_UPGRADE'), $pmSection);
     }
     $properties[] = array(G::LoadTranslation('ID_OPERATING_SYSTEM'), $redhat, $sysSection);
     $properties[] = array(G::LoadTranslation('ID_TIME_ZONE'), defined('TIME_ZONE') ? TIME_ZONE : "Unknown", $sysSection);
     $properties[] = array(G::LoadTranslation('ID_WEB_SERVER'), getenv('SERVER_SOFTWARE'), $sysSection);
     $properties[] = array(G::LoadTranslation('ID_SERVER_NAME'), getenv('SERVER_NAME'), $pmSection);
     $properties[] = array(G::LoadTranslation('ID_SERVER_IP'), $this->lookup($ip), $sysSection);
     $properties[] = array(G::LoadTranslation('ID_PHP_VERSION'), phpversion(), $sysSection);
     if (defined("DB_HOST")) {
         $properties[] = array(G::LoadTranslation('ID_DATABASE'), $dbNetView->dbName(DB_ADAPTER) . ' (Version ' . $sMySQLVersion . ')', $pmSection);
         $properties[] = array(G::LoadTranslation('ID_DATABASE_SERVER'), DB_HOST, $pmSection);
         $properties[] = array(G::LoadTranslation('ID_DATABASE_NAME'), DB_NAME, $pmSection);
         $properties[] = array(G::LoadTranslation('ID_AVAILABLE_DB'), $availdb, $sysSection);
     } else {
         $properties[] = array(G::LoadTranslation('ID_DATABASE'), "Not defined", $pmSection);
         $properties[] = array(G::LoadTranslation('ID_DATABASE_SERVER'), "Not defined", $pmSection);
         $properties[] = array(G::LoadTranslation('ID_DATABASE_NAME'), "Not defined", $pmSection);
         $properties[] = array(G::LoadTranslation('ID_AVAILABLE_DB'), "Not defined", $sysSection);
     }
     $properties[] = array(G::LoadTranslation('ID_WORKSPACE'), defined("SYS_SYS") ? SYS_SYS : "Not defined", $pmSection);
     $properties[] = array(G::LoadTranslation('ID_SERVER_PROTOCOL'), getenv('SERVER_PROTOCOL'), $sysSection);
     $properties[] = array(G::LoadTranslation('ID_SERVER_PORT'), getenv('SERVER_PORT'), $sysSection);
     //$sysSection[] = array('Remote Host', getenv ('REMOTE_HOST'), $sysSection);
     $properties[] = array(G::LoadTranslation('ID_SERVER_NAME'), getenv('SERVER_ADDR'), $sysSection);
     $properties[] = array(G::LoadTranslation('ID_USER_BROWSER'), getenv('HTTP_USER_AGENT'), $sysSection);
     return $properties;
 }
예제 #15
0
 private function _getSystemInfo()
 {
     G::LoadClass("system");
     if (getenv('HTTP_CLIENT_IP')) {
         $ip = getenv('HTTP_CLIENT_IP');
     } else {
         if (getenv('HTTP_X_FORWARDED_FOR')) {
             $ip = getenv('HTTP_X_FORWARDED_FOR');
         } else {
             $ip = getenv('REMOTE_ADDR');
         }
     }
     $redhat = '';
     if (file_exists('/etc/redhat-release')) {
         $fnewsize = filesize('/etc/redhat-release');
         $fp = fopen('/etc/redhat-release', 'r');
         $redhat = trim(fread($fp, $fnewsize));
         fclose($fp);
     }
     $redhat .= " (" . PHP_OS . ")";
     if (defined("DB_HOST")) {
         G::LoadClass('net');
         G::LoadClass('dbConnections');
         $dbNetView = new NET(DB_HOST);
         $dbNetView->loginDbServer(DB_USER, DB_PASS);
         $dbConns = new dbConnections('');
         $availdb = '';
         foreach ($dbConns->getDbServicesAvailables() as $key => $val) {
             if ($availdb != '') {
                 $availdb .= ', ';
             }
             $availdb .= $val['name'];
         }
         try {
             $sMySQLVersion = $dbNetView->getDbServerVersion(DB_ADAPTER);
         } catch (Exception $oException) {
             $sMySQLVersion = '?????';
         }
     }
     $sysSection = G::loadTranslation('ID_SYSTEM_INFO');
     $pmSection = 'ProcessMaker Information';
     $properties = array();
     $ee = class_exists('pmLicenseManager') ? " - Enterprise Edition" : '';
     $properties[] = array('ProcessMaker Ver.', System::getVersion() . $ee, $pmSection);
     $properties[] = array('Operating System', $redhat, $sysSection);
     $properties[] = array('Time Zone', defined('TIME_ZONE') ? TIME_ZONE : "Unknown", $sysSection);
     $properties[] = array('Web Server', getenv('SERVER_SOFTWARE'), $sysSection);
     $properties[] = array('Server Name', getenv('SERVER_NAME'), $pmSection);
     $properties[] = array('Server IP Address', $this->lookup($ip), $sysSection);
     $properties[] = array('PHP Version', phpversion(), $sysSection);
     if (defined("DB_HOST")) {
         $properties[] = array('Data Base', $dbNetView->dbName(DB_ADAPTER) . ' (Version ' . $sMySQLVersion . ')', $pmSection);
         $properties[] = array('Data Base Server', DB_HOST, $pmSection);
         $properties[] = array('Data Base Name', DB_NAME, $pmSection);
         $properties[] = array('Available DB Engines', $availdb, $sysSection);
     } else {
         $properties[] = array('Data Base', "Not defined", $pmSection);
         $properties[] = array('Data Base Server', "Not defined", $pmSection);
         $properties[] = array('Data Base Name', "Not defined", $pmSection);
         $properties[] = array('Available DB Engines', "Not defined", $sysSection);
     }
     $properties[] = array('Workspace', defined("SYS_SYS") ? SYS_SYS : "Not defined", $pmSection);
     $properties[] = array('Server Protocol', getenv('SERVER_PROTOCOL'), $sysSection);
     $properties[] = array('Server Port', getenv('SERVER_PORT'), $sysSection);
     //$properties[] = array('Remote Host', getenv ('REMOTE_HOST'), $sysSection);
     $properties[] = array('Server Addr.', getenv('SERVER_ADDR'), $sysSection);
     $properties[] = array('User\'s Browser', getenv('HTTP_USER_AGENT'), $sysSection);
     return $properties;
 }
예제 #16
0
 /**
  * processFilesManager
  *
  * @param string $sProcessUID
  * @return void
  */
 public function processFilesManager($sProcessUID)
 {
     G::LoadClass('ArrayPeer');
     global $_DBArray;
     global $G_PUBLISH;
     $oCriteria = new Criteria('dbarray');
     $G_PUBLISH = new Publisher();
     $aDirectories = array();
     $aDirectories[] = array('DIRECTORY' => 'char');
     $aDirectories[] = array('DIRECTORY' => '<a href="#" onclick="goToDirectory(\'' . $sProcessUID . '\', \'mailTemplates\', \'\');" class="pagedTableHeader">' . G::loadTranslation('ID_TEMPLATES') . '</a>');
     $aDirectories[] = array('DIRECTORY' => '<a href="#" onclick="goToDirectory(\'' . $sProcessUID . '\', \'public\', \'\');" class="pagedTableHeader">' . G::loadTranslation('ID_PUBLIC') . '</a>');
     $_DBArray = isset($_SESSION['_DBArray']) ? $_SESSION['_DBArray'] : '';
     $_DBArray['directories'] = $aDirectories;
     $_SESSION['_DBArray'] = $_DBArray;
     $oCriteria->setDBArrayTable('directories');
     $G_PUBLISH->AddContent('propeltable', 'paged-table', 'processes/processes_DirectoriesList', $oCriteria);
     G::RenderPage('publish', 'raw');
 }
예제 #17
0
 /**
  * Function printTemplate
  *
  * @author David S. Callizaya S. <*****@*****.**>
  * @access public
  * @param string form
  * @param string target
  * @return string
  */
 public function printTemplate(&$form, $target = 'smarty')
 {
     if (strcasecmp($target, 'smarty') === 0) {
         $varPrefix = '$';
     }
     if (strcasecmp($target, 'templatePower') === 0) {
         $varPrefix = '';
     }
     $ft = new StdClass();
     foreach ($form as $name => $value) {
         if ($name !== 'fields' && $value !== '') {
             $ft->{$name} = '{$form_' . $name . '}';
         }
         if ($name === 'cols') {
             $ft->{$name} = $value;
         }
         if ($name === 'owner') {
             $ft->owner =& $form->owner;
         }
         if ($name === 'deleteRow') {
             $ft->deleteRow = $form->deleteRow;
         }
         if ($name === 'addRow') {
             $ft->addRow = $form->addRow;
         }
         if ($name === 'editRow') {
             $ft->editRow = $form->editRow;
         }
     }
     if (!isset($ft->action)) {
         $ft->action = '{$form_action}';
     }
     $hasRequiredFields = false;
     foreach ($form->fields as $k => $v) {
         $ft->fields[$k] = $v->cloneObject();
         $ft->fields[$k]->label = '{' . $varPrefix . $k . '}';
         if ($form->type === 'grid') {
             if (strcasecmp($target, 'smarty') === 0) {
                 $ft->fields[$k]->field = '{' . $varPrefix . 'form.' . $k . '[row]}';
             }
             if (strcasecmp($target, 'templatePower') === 0) {
                 $ft->fields[$k]->field = '{' . $varPrefix . 'form[' . $k . '][row]}';
             }
         } else {
             if (strcasecmp($target, 'smarty') === 0) {
                 $ft->fields[$k]->field = '{' . $varPrefix . 'form.' . $k . '}';
             }
             if (strcasecmp($target, 'templatePower') === 0) {
                 $ft->fields[$k]->field = '{' . $varPrefix . 'form[' . $k . ']}';
             }
         }
         $hasRequiredFields = $hasRequiredFields | (isset($v->required) && $v->required == '1' && $v->mode == 'edit');
         if ($v->type == 'xmlmenu') {
             $menu = $v;
         }
     }
     if (isset($menu)) {
         if (isset($menu->owner->values['__DYNAFORM_OPTIONS']['PREVIOUS_STEP'])) {
             $prevStep_url = $menu->owner->values['__DYNAFORM_OPTIONS']['PREVIOUS_STEP'];
             $this->assign('prevStep_url', $prevStep_url);
             $this->assign('prevStep_label', G::loadTranslation('ID_BACK'));
         }
     }
     $this->assign('hasRequiredFields', $hasRequiredFields);
     $this->assign('form', $ft);
     $this->assign('printTemplate', true);
     $this->assign('printJSFile', false);
     $this->assign('printJavaScript', false);
     //$this->assign ( 'dynaformSetFocus', "try {literal}{{/literal} dynaformSetFocus();}catch(e){literal}{{/literal}}" );
     return $this->fetch($this->templateFile);
 }
예제 #18
0
 /**
  * Test DataBase Connection
  * @var string $dataCon. Data for DataBase Connection
  * @var string $returnArray. Flag for url
  *
  * @author Brayan Pereyra (Cochalo) <*****@*****.**>
  * @copyright Colosa - Bolivia
  *
  * @return void
  */
 public function testConnection($dataCon, $returnArray = false)
 {
     $resp = array();
     $respTest = array();
     $resp['resp'] = false;
     $dataCon = array_change_key_case($dataCon, CASE_UPPER);
     $flagTns = $dataCon["DBS_TYPE"] == "oracle" && $dataCon["DBS_CONNECTION_TYPE"] == "TNS" ? 1 : 0;
     G::LoadClass('net');
     if ($flagTns == 0) {
         $Server = new \NET($dataCon['DBS_SERVER']);
         // STEP 1 : Resolving Host Name
         $respTest['0'] = array();
         $respTest['0']['test'] = G::loadTranslation('RESOLVING_NAME') . ' ' . $dataCon['DBS_SERVER'];
         if ($Server->getErrno() != 0) {
             if ($returnArray) {
                 $respTest['0']['error'] = G::loadTranslation('ID_ERROR_HOST_NAME_FAILED') . ' : ' . $Server->error;
             } else {
                 $resp['message'] = G::loadTranslation('ID_ERROR_HOST_NAME_FAILED') . ' : ' . $Server->error;
                 return $resp;
             }
         }
         // STEP 2 : Checking port
         $respTest['1'] = array();
         $respTest['1']['test'] = G::loadTranslation('ID_CHECK_PORT') . ' ' . $dataCon['DBS_PORT'];
         $Server->scannPort($dataCon['DBS_PORT']);
         if ($Server->getErrno() != 0) {
             if ($returnArray) {
                 $respTest['1']['error'] = G::loadTranslation('ID_CHECK_PORT_FAILED') . ' : ' . $Server->error;
             } else {
                 $resp['message'] = G::loadTranslation('ID_CHECK_PORT_FAILED') . ' : ' . $Server->error;
                 return $resp;
             }
         }
         // STEP 3 : Trying to connect to host
         $respTest['2'] = array();
         $respTest['2']['test'] = G::loadTranslation('ID_CONNECTING_TO_HOST') . ' ' . $dataCon['DBS_SERVER'] . ($dataCon['DBS_PORT'] != '' ? ':' . $dataCon['DBS_PORT'] : '');
         $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']);
         $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']);
         if ($Server->errno == 0) {
             $response = $Server->tryConnectServer($dataCon['DBS_TYPE']);
             if ($response->status != 'SUCCESS') {
                 if ($returnArray) {
                     $respTest['2']['error'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error;
                 } else {
                     $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error;
                     return $resp;
                 }
             }
         } else {
             if ($returnArray) {
                 $respTest['2']['error'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error;
             } else {
                 $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error;
                 return $resp;
             }
         }
         // STEP 4 : Trying to open database
         $respTest['3'] = array();
         $respTest['3']['test'] = G::loadTranslation('ID_OPEN_DATABASE') . ' [' . $dataCon['DBS_DATABASE_NAME'] . ']';
         $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']);
         $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']);
         if ($Server->errno == 0) {
             $response = $Server->tryConnectServer($dataCon['DBS_TYPE']);
             if ($response->status == 'SUCCESS') {
                 $response = $Server->tryOpenDataBase($dataCon['DBS_TYPE']);
                 if ($response->status != 'SUCCESS') {
                     if ($returnArray) {
                         $respTest['3']['error'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error;
                     } else {
                         $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error;
                         return $resp;
                     }
                 }
             } else {
                 if ($returnArray) {
                     $respTest['3']['error'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error;
                 } else {
                     $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error;
                     return $resp;
                 }
             }
         } else {
             if ($returnArray) {
                 $respTest['3']['error'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error;
             } else {
                 $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error;
                 return $resp;
             }
         }
     } else {
         $net = new \NET();
         //STEP 0: Trying to open database type TNS
         $respTest["0"] = array();
         $respTest["0"]["test"] = G::loadTranslation('ID_TEST_DATABASE_ORACLE_TNS') . ' ' . $dataCon["DBS_TNS"];
         $net->loginDbServer($dataCon["DBS_USERNAME"], $dataCon["DBS_PASSWORD"]);
         if ($net->errno == 0) {
             $arrayServerData = array("connectionType" => $dataCon["DBS_CONNECTION_TYPE"], "tns" => $dataCon["DBS_TNS"]);
             $response = $net->tryConnectServer($dataCon["DBS_TYPE"], $arrayServerData);
             if ($response->status == "SUCCESS") {
                 $response = $net->tryOpenDataBase($dataCon["DBS_TYPE"], $arrayServerData);
                 if ($response->status != "SUCCESS") {
                     if ($returnArray) {
                         $respTest["0"]["error"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error;
                     } else {
                         $resp["message"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error;
                         //Return
                         return $resp;
                     }
                 }
             } else {
                 if ($returnArray) {
                     $respTest["0"]["error"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error;
                 } else {
                     $resp["message"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error;
                     //Return
                     return $resp;
                 }
             }
         } else {
             if ($returnArray) {
                 $respTest["0"]["error"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error;
             } else {
                 $resp["message"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error;
                 //Return
                 return $resp;
             }
         }
     }
     if ($returnArray) {
         return $respTest;
     } else {
         // CORRECT CONNECTION
         $resp['resp'] = true;
         return $resp;
     }
 }
예제 #19
0
    //$GROUP_TITLE = htmlentities($group->getGrpTitle());
    $GROUP_TITLE = strip_tags($group->getGrpTitle());
    $htmlGroup .= "\r\n        <tr id=\"{$xVar}\" onclick=\"focusRow(this, 'Selected')\" onmouseout=\"setRowClass(this, '{$RowClass}')\" onmouseover=\"setRowClass(this, 'RowPointer' )\" class=\"{$RowClass}\">\r\n          <td><img src=\"/images/users.png\" border=\"0\" width=\"20\" height=\"20\"/></td>\r\n          <td>{$GROUP_TITLE}</td>\r\n          <td>[<a class=\"normal\" href=\"#\" onclick=\"editGroup('{$UID}');return false;\">{$ID_EDIT}</a>]</td>\r\n          <td>[<a class=\"normal\" href=\"#\" onclick=\"selectGroup('{$UID}');return false;\">{$ID_MEMBERS}</a>]</td>\r\n          <td>[<a  href=\"#\" onclick=\"deleteGroup('{$UID}');return false;\">{$ID_DELETE}</a>]</td>\r\n        </tr>";
}
$htmlGroup .= "</table>";
echo '<div class="treeBase" style="width:' . $WIDTH_PANEL . 'px">
			<div class="boxTop"><div class="a"></div><div class="b"></div><div class="c"></div></div>
			<div class="content">
			  <table class="treeNode">
		        <tr>
		          <td valign="top">
		            <div class="boxTopBlue"><div class="a"></div><div class="b"></div><div class="c"></div></div>
					<div class="boxContentBlue">
					  <table width="95%" style="margin:0px;" cellspacing="0" cellpadding="0">
					    <tr>
						  <td class="userGroupTitle">' . G::loadTranslation("ID_GROUPS") . '</td>
						</tr>
					  </table>
					</div>
					<div class="boxBottomBlue"><div class="a"></div><div class="b"></div><div class="c"></div></div>
					
				  	<div class="userGroupLink"><a href="#" onclick="addGroup();return false;">' . G::LoadTranslation('ID_NEW') . '</a></div>
				  	
				  	<div id="groupsListDiv" style="height:350px; width:' . ($WIDTH_PANEL - 20) . 'px; overflow:auto">
				  	  <table class="pagedTableDefault"><tr><td>' . $htmlGroup . '</td></tr></table>
				  	</div>
		          </td>
		        </tr>
		      </table>
			</div>
			<div class="boxBottom"><div class="a"></div><div class="b"></div><div class="c"></div></div>
예제 #20
0
 public function calendarValidate($httpData)
 {
     $httpData = array_unique((array) $httpData);
     $message = '';
     $oldName = isset($_POST['oldName']) ? $_POST['oldName'] : '';
     switch ($_POST['action']) {
         case 'calendarName':
             require_once 'classes/model/CalendarDefinition.php';
             $oCalendar = new CalendarDefinition();
             $aCalendars = $oCalendar->getCalendarList(false, true);
             $aCalendarDefinitions = end($aCalendars);
             foreach ($aCalendarDefinitions as $aDefinitions) {
                 if (trim($_POST['name']) == '') {
                     $validated = false;
                     $message = G::loadTranslation('ID_CALENDAR_INVALID_NAME');
                     break;
                 }
                 if ($aDefinitions['CALENDAR_NAME'] != $_POST['name']) {
                     $validated = true;
                 } else {
                     if ($aDefinitions['CALENDAR_NAME'] != $oldName) {
                         $validated = false;
                         $message = G::loadTranslation('ID_CALENDAR_INVALID_NAME');
                         break;
                     }
                 }
             }
             break;
         case 'calendarDates':
             $validated = false;
             $message = G::loadTranslation('ID_CALENDAR_INVALID_WORK_DATES');
             break;
     }
     return $message;
 }
예제 #21
0
    public function getUserNameFormats()
    {
        $formats[] = Array('id' => '@firstName @lastName', //the id , don't translate
            'name' => G::loadTranslation('ID_USERNAME_FORMAT_1')  //label displayed, can be translated
        );
        $formats[] = Array('id' => '@firstName @lastName (@userName)', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_2'));
        $formats[] = Array('id' => '@userName', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_3'));
        $formats[] = Array('id' => '@userName (@firstName @lastName)', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_4'));
        $formats[] = Array('id' => '@lastName @firstName', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_5'));
        $formats[] = Array('id' => '@lastName, @firstName', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_6'));
        $formats[] = Array('id' => '@lastName, @firstName (@userName)', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_7'));

        return $formats;
    }
예제 #22
0
function handleFatalErrors ($buffer)
{
    G::LoadClass( 'case' );
    $oCase = new Cases();
    if (preg_match( '/(error<\/b>:)(.+)(<br)/', $buffer, $regs )) {
        $err = preg_replace( '/<.*?>/', '', $regs[2] );
        $aAux = explode( ' in ', $err );
        $sCode = isset($_SESSION['_CODE_']) ? $_SESSION['_CODE_'] : null;
        unset( $_SESSION['_CODE_'] );
        registerError( 2, $aAux[0], 0, $sCode );
        if (strpos( $_SERVER['REQUEST_URI'], '/cases/cases_Step' ) !== false) {
            if (strpos( $_SERVER['REQUEST_URI'], '&ACTION=GENERATE' ) !== false) {
                $aNextStep = $oCase->getNextStep( $_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION'] );
                if ($_SESSION['TRIGGER_DEBUG']['ISSET']) {
                    $_SESSION['TRIGGER_DEBUG']['TIME'] = G::toUpper(G::loadTranslation('ID_AFTER'));
                    $_SESSION['TRIGGER_DEBUG']['BREAKPAGE'] = $aNextStep['PAGE'];
                    $aNextStep['PAGE'] = $aNextStep['PAGE'] . '&breakpoint=triggerdebug';
                }
                global $oPMScript;
                if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
                    $oPMScript->aFields['__ERROR__'] = $aAux[0];
                    $oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
                }
                G::header( 'Location: ' . $aNextStep['PAGE'] );
                die();
            }
            $_SESSION['_NO_EXECUTE_TRIGGERS_'] = 1;
            global $oPMScript;
            if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
                $oPMScript->aFields['__ERROR__'] = $aAux[0];
                $oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
            }
            G::header( 'Location: ' . $_SERVER['REQUEST_URI'] );
            die();
        } else {
            $aNextStep = $oCase->getNextStep( $_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION'] );
            if (isset($_SESSION['TRIGGER_DEBUG']['ISSET']) && $_SESSION['TRIGGER_DEBUG']['ISSET']) {
                $_SESSION['TRIGGER_DEBUG']['TIME'] = G::toUpper(G::loadTranslation('ID_AFTER'));
                $_SESSION['TRIGGER_DEBUG']['BREAKPAGE'] = $aNextStep['PAGE'];
                $aNextStep['PAGE'] = $aNextStep['PAGE'] . '&breakpoint=triggerdebug';
            }
            if (strpos( $aNextStep['PAGE'], 'TYPE=ASSIGN_TASK&UID=-1' ) !== false) {
                G::SendMessageText( 'Fatal error in trigger', 'error' );
            }
            global $oPMScript;
            if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
                $oPMScript->aFields['__ERROR__'] = $aAux[0];
                $oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
            }
            G::header( 'Location: ' . $aNextStep['PAGE'] );
            die();
        }
    }
    return $buffer;
}
예제 #23
0
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$oDataset->next();
$aRow = $oDataset->getRow();
G::LoadClass('groups');
G::LoadClass('tree');
$groups = new Groups();
$tree = new Tree();
$tree->name = 'Users';
$tree->nodeType = "base";
$tree->width = "350px";
$tree->value = '
	<div class="boxTopBlue"><div class="a"></div><div class="b"></div><div class="c"></div></div>
	<div class="boxContentBlue">
  		<table width="100%" style="margin:0px;" cellspacing="0" cellpadding="0">
  			<tr>
	  			<td class="userGroupTitle">' . G::loadTranslation("ID_ASSIGN_GROUP_TO") . ' ' . $aRow['USR_FIRSTNAME'] . ' ' . $aRow['USR_LASTNAME'] . '</td>
  			</tr>
		</table>
	</div>
	<div class="boxBottomBlue"><div class="a"></div><div class="b"></div><div class="c"></div></div>
	<div class="userGroupLink"><a href="#" onclick="showUserGroups(\'' . $_GET['sUserUID'] . '\');return false;">' . G::LoadTranslation('ID_BACK_TO_GROUP_LIST') . '</a></div>';
$tree->showSign = false;
$allGroups = $groups->getAllGroups();
foreach ($allGroups as $group) {
    $ID_ASSIGN = G::LoadTranslation('ID_ASSIGN');
    $groupUID = htmlentities($group->getGrpUid());
    $userUID = $_GET['sUserUID'];
    $GROUP_TITLE = strip_tags($group->getGrpTitle());
    $html = <<<innerHTML
\t      <table cellspacing='0' cellpadding='0' border='1' style='border:0px;'>
\t        <tr>
예제 #24
0
/**
 * @Description This is the View of all groups from a determinated user
 * @author Erik Amaru Ortiz <*****@*****.**>
 * @Date 24/04/2008
 * @LastModification 30/05/2008
 * @Updated Nov 6th, 2009 bye Eriknyk
 */
G::LoadClass('net');
$host = new net($_POST['srv']);
$width_content = '550px';
$html = '
	<div class="boxTopBlue"><div class="a"></div><div class="b"></div><div class="c"></div></div>
	<div class="boxContentBlue">
		<table style="margin:0px;" cellspacing="0" cellpadding="0">
			<tr>
				<td class="userGroupTitle"><center>' . G::loadTranslation('ID_SETUP_MAILCONF_TITLE') . '</center></td>
			</tr>
		</table>
	</div>
	<div class="boxBottomBlue"><div class="a"></div><div class="b"></div><div class="c"></div></div>';
$tests = array('', 'Resolve host name ' . $_POST['srv'], 'Checking port <b>' . $_POST['port'] . '</b>', 'Establishing connection to host <b>' . $host->hostname . '</b>');
$tests[] = 'Login as <b>' . $_POST['account'] . '</b> on ' . $host->hostname . ' SMTP Server';
if ($_POST['send_test_mail'] == 'yes') {
    $tests[] = 'Sending a test mail from <b>' . $_POST['account'] . '</b> to ' . $_POST['mail_to'] . '...';
}
$tree->showSign = false;
$n = array('', 'uno', 'dos', 'tres', 'cuatro', 'cinco');
for ($i = 1; $i < count($tests); $i++) {
    $html .= "\r\n\t\t<div id='test_{$i}' style='display:none'>\r\n\t\t<table width='100%' cellspacing='0' cellpadding='0' border='1' style='border:0px;'>\r\n\t\t\t<tr>\r\n\t\t\t\t<td width=10 class='treeNode' style='border:0px;background-color:transparent;'><span id='status_{$i}'></span></td>\r\n\t\t\t\t<td width='*' class='treeNode' style='border:0px;background-color:transparent;'>\r\n\t\t\t\t  &nbsp;<span id='action_{$i}'>{$tests[$i]}</span>\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<td width='*' class='treeNode' style='border:0px;background-color:transparent;' colspan='2'>\r\n\t\t\t\t  <span id='status2_{$i}'></span>\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</table>\r\n\t\t</div>";
}
echo '<div class="grid" style="width:' . $width_content . '">
예제 #25
0
 /**
  * Prints the DynaformEditorAjax
  *
  * @param object $A
  * @return ob_get_clean
  */
 public function render_preview($A)
 {
     ob_start();
     $file = G::decrypt($A, URL_KEY);
     global $G_PUBLISH;
     $G_PUBLISH = new Publisher();
     $G_PUBLISH->publisherId = 'preview';
     $form = new Form($file, PATH_DYNAFORM, SYS_LANG, true, $G_PUBLISH->publisherId);
     switch (basename($form->template, '.html')) {
         case 'grid':
             $template = 'grid';
             $aAux = array_keys($form->fields);
             if (count($aAux) > 0) {
                 $aFields = array_combine($aAux, $aAux);
             } else {
                 $aFields = $aAux;
             }
             if (is_array($aFields)) {
                 foreach ($aFields as $key => $val) {
                     $aFields[$key] = array(1 => "", 2 => "", 3 => "", 4 => "", 5 => "");
                 }
             }
             break;
         default:
             $template = 'xmlform_' . $G_PUBLISH->publisherId;
             $aFields = array('__DYNAFORM_OPTIONS' => array('PREVIOUS_STEP' => '#', 'NEXT_STEP' => '#', 'NEXT_STEP_LABEL' => G::loadTranslation('ID_NEXT_STEP'), 'PREVIOUS_ACTION' => 'return false;', 'NEXT_ACTION' => 'return false;'));
     }
     $G_PUBLISH->AddContent('dynaform', $template, $file, '', $aFields, '');
     G::RenderPage('publish', 'raw');
     return ob_get_clean();
 }
예제 #26
0
             } else {
                 $sDependence = $aDependence['sClassName'];
                 throw new Exception(G::loadTranslation('ID_PLUGIN_DEPENDENCE_PLUGIN', SYS_LANG, array("Dependence" => $sDependence)));
             }
         }
     }
     unset($oClass);
     if ($fVersionOld > $fVersionNew) {
         throw new Exception(G::loadTranslation('ID_RECENT_VERSION_PLUGIN'));
     }
     $res = $tar->extract(PATH_PLUGINS);
 } else {
     throw new Exception(G::loadTranslation('ID_FILE_CONTAIN_CLASS_PLUGIN', SYS_LANG, array("filename" => $filename, "className" => $sClassName)));
 }
 if (!file_exists(PATH_PLUGINS . $sClassName . '.php')) {
     throw new Exception(G::loadTranslation('ID_FILE_PLUGIN_NOT_EXISTS', SYS_LANG, array("pluginFile" => $pluginFile)));
 }
 require_once PATH_PLUGINS . $pluginFile;
 $oPluginRegistry->registerPlugin($sClassName, PATH_PLUGINS . $sClassName . ".php");
 $size = file_put_contents(PATH_DATA_SITE . "plugin.singleton", $oPluginRegistry->serializeInstance());
 $details = $oPluginRegistry->getPluginDetails($pluginFile);
 $oPluginRegistry->installPlugin($details->sNamespace);
 $oPluginRegistry->setupPlugins();
 //get and setup enabled plugins
 $size = file_put_contents(PATH_DATA_SITE . "plugin.singleton", $oPluginRegistry->serializeInstance());
 $response = $oPluginRegistry->verifyTranslation($details->sNamespace);
 G::auditLog("InstallPlugin", "Plugin Name: " . $details->sNamespace);
 //if ($response->recordsCountSuccess <= 0) {
 //throw (new Exception( 'The plugin ' . $details->sNamespace . ' couldn\'t verify any translation item. Verified Records:' . $response->recordsCountSuccess));
 //}
 G::header("Location: pluginsMain");
예제 #27
0
    function verifyIsCaseChild ($sApplicationUID, $delIndex = 0)

    {

        //Obtain the related row in the table SUB_APPLICATION

        $oCriteria = new Criteria( 'workflow' );

        $oCriteria->add( SubApplicationPeer::APP_UID, $sApplicationUID );

        $oDataset = SubApplicationPeer::doSelectRS( $oCriteria );

        $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC );

        $oDataset->next();

        $aSA = $oDataset->getRow();

        if ($aSA) {

            //Obtain the related row in the table SUB_PROCESS

            $oCase = new Cases();

            $aParentCase = $oCase->loadCase( $aSA['APP_PARENT'], $aSA['DEL_INDEX_PARENT'] );

            $oCriteria = new Criteria( 'workflow' );

            $oCriteria->add( SubProcessPeer::PRO_PARENT, $aParentCase['PRO_UID'] );

            $oCriteria->add( SubProcessPeer::TAS_PARENT, $aParentCase['TAS_UID'] );

            $oDataset = SubProcessPeer::doSelectRS( $oCriteria );

            $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC );

            $oDataset->next();

            $aSP = $oDataset->getRow();

            if ($aSP['SP_SYNCHRONOUS'] == 1) {

                $appFields = $oCase->loadCase($sApplicationUID, $delIndex);

                //Copy case variables to parent case

                $aFields = unserialize( $aSP['SP_VARIABLES_IN'] );

                $aNewFields = array ();

                foreach ($aFields as $sOriginField => $sTargetField) {

                    $sOriginField = str_replace( '@', '', $sOriginField );

                    $sOriginField = str_replace( '#', '', $sOriginField );

                    $sOriginField = str_replace( '%', '', $sOriginField );

                    $sOriginField = str_replace( '?', '', $sOriginField );

                    $sOriginField = str_replace( '$', '', $sOriginField );

                    $sOriginField = str_replace( '=', '', $sOriginField );

                    $sTargetField = str_replace( '@', '', $sTargetField );

                    $sTargetField = str_replace( '#', '', $sTargetField );

                    $sTargetField = str_replace( '%', '', $sTargetField );

                    $sTargetField = str_replace( '?', '', $sTargetField );

                    $sTargetField = str_replace( '$', '', $sTargetField );

                    $sTargetField = str_replace( '=', '', $sTargetField );

                    $aNewFields[$sTargetField] = isset( $appFields['APP_DATA'][$sOriginField] ) ? $appFields['APP_DATA'][$sOriginField] : '';

                    if(isset($aParentCase['APP_DATA'][$sTargetField.'_label'])){

                        $aNewFields[$sTargetField.'_label'] = isset( $appFields['APP_DATA'][$sOriginField.'_label'] ) ? $appFields['APP_DATA'][$sOriginField.'_label'] : '';

                    }

                }

                $aParentCase['APP_DATA'] = array_merge( $aParentCase['APP_DATA'], $aNewFields );

                $oCase->updateCase( $aSA['APP_PARENT'], $aParentCase );

                /*----------------------------------********---------------------------------*/



                //Update table SUB_APPLICATION

                $oSubApplication = new SubApplication();

                $oSubApplication->update( array ('APP_UID' => $sApplicationUID,'APP_PARENT' => $aSA['APP_PARENT'],'DEL_INDEX_PARENT' => $aSA['DEL_INDEX_PARENT'],'DEL_THREAD_PARENT' => $aSA['DEL_THREAD_PARENT'],'SA_STATUS' => 'FINISHED','SA_VALUES_IN' => serialize( $aNewFields ),'SA_FINISH_DATE' => date( 'Y-m-d H:i:s' )

                ) );



                //Derive the parent case

                $aDeriveTasks = $this->prepareInformation( array ('USER_UID' => - 1,'APP_UID' => $aSA['APP_PARENT'],'DEL_INDEX' => $aSA['DEL_INDEX_PARENT']

                ) );

                if (isset( $aDeriveTasks[1] )) {

                    if ($aDeriveTasks[1]['ROU_TYPE'] != 'SELECT') {

                        $nextDelegations2 = array ();

                        foreach ($aDeriveTasks as $aDeriveTask) {

                            if (! isset( $aDeriveTask['NEXT_TASK']['USER_ASSIGNED']['USR_UID'] )) {

                                $selectedUser = $aDeriveTask['NEXT_TASK']['USER_ASSIGNED'][0];

                                unset( $aDeriveTask['NEXT_TASK']['USER_ASSIGNED'] );

                                $aDeriveTask['NEXT_TASK']['USER_ASSIGNED'] = $selectedUser;

                                $myLabels = array ($aDeriveTask['NEXT_TASK']['TAS_TITLE'],$aParentCase['APP_NUMBER'],$selectedUser['USR_USERNAME'],$selectedUser['USR_FIRSTNAME'],$selectedUser['USR_LASTNAME']

                                );

                                G::SendTemporalMessage( 'ID_TASK_WAS_ASSIGNED_TO_USER', 'warning', 'labels', 10, null, $myLabels );



                            }

                            $nextDelegations2[] = array ('TAS_UID' => $aDeriveTask['NEXT_TASK']['TAS_UID'],'USR_UID' => $aDeriveTask['NEXT_TASK']['USER_ASSIGNED']['USR_UID'],'TAS_ASSIGN_TYPE' => $aDeriveTask['NEXT_TASK']['TAS_ASSIGN_TYPE'],'TAS_DEF_PROC_CODE' => $aDeriveTask['NEXT_TASK']['TAS_DEF_PROC_CODE'],'DEL_PRIORITY' => 3,'TAS_PARENT' => $aDeriveTask['NEXT_TASK']['TAS_PARENT']

                            );

                        }

                        $currentDelegation2 = array ('APP_UID' => $aSA['APP_PARENT'],'DEL_INDEX' => $aSA['DEL_INDEX_PARENT'],'APP_STATUS' => 'TO_DO','TAS_UID' => $aParentCase['TAS_UID'],'ROU_TYPE' => $aDeriveTasks[1]['ROU_TYPE']

                        );

                        $this->derivate( $currentDelegation2, $nextDelegations2 );



                        if($delIndex > 0 ) {

                            // Send notifications - Start

                            $oUser = new Users();

                            $aUser = $oUser->load($appFields["CURRENT_USER_UID"]);



                            $sFromName = $aUser["USR_FIRSTNAME"] . " " . $aUser["USR_LASTNAME"] . ($aUser["USR_EMAIL"] != "" ? " <" . $aUser["USR_EMAIL"] . ">" : "");



                            try {

                                $oCase->sendNotifications($appFields["TAS_UID"],

                                                          $nextDelegations2,

                                                          $appFields["APP_DATA"],

                                                          $sApplicationUID,

                                                          $delIndex,

                                                          $sFromName);



                            } catch (Exception $e) {

                                G::SendTemporalMessage(G::loadTranslation("ID_NOTIFICATION_ERROR") . " - " . $e->getMessage(), "warning", "string", null, "100%");

                            }

                            // Send notifications - End

                        }

                    }

                }

            }

        }

    }
예제 #28
0
     $Fields["APP_DATA"] = array_merge($Fields["APP_DATA"], $pmdynaform);
 }
 $Fields["APP_DATA"] = array_merge($Fields["APP_DATA"], G::getSystemConstants());
 $Fields["APP_DATA"] = array_merge($Fields["APP_DATA"], $_POST["form"]);
 #here we must verify if is a debug session
 $trigger_debug_session = isset($_SESSION['TRIGGER_DEBUG']['ISSET']) ? $_SESSION['TRIGGER_DEBUG']['ISSET'] : null;
 #here we must verify if is a debugg session
 #trigger debug routines...
 //cleaning debug variables
 $_SESSION['TRIGGER_DEBUG']['ERRORS'] = array();
 $_SESSION['TRIGGER_DEBUG']['DATA'] = array();
 $_SESSION['TRIGGER_DEBUG']['TRIGGERS_NAMES'] = array();
 $_SESSION['TRIGGER_DEBUG']['TRIGGERS_VALUES'] = array();
 $triggers = $oCase->loadTriggers($_SESSION['TASK'], 'DYNAFORM', $_GET['UID'], 'AFTER');
 $_SESSION['TRIGGER_DEBUG']['NUM_TRIGGERS'] = count($triggers);
 $_SESSION['TRIGGER_DEBUG']['TIME'] = G::toUpper(G::loadTranslation('ID_AFTER'));
 if ($_SESSION['TRIGGER_DEBUG']['NUM_TRIGGERS'] != 0) {
     $_SESSION['TRIGGER_DEBUG']['TRIGGERS_NAMES'] = $oCase->getTriggerNames($triggers);
     $_SESSION['TRIGGER_DEBUG']['TRIGGERS_VALUES'] = $triggers;
     $oProcess = new Process();
     $oProcessFieds = $oProcess->Load($_SESSION['PROCESS']);
     //trigger debug routines...
     if (isset($oProcessFieds['PRO_DEBUG']) && $oProcessFieds['PRO_DEBUG']) {
         $trigger_debug_session = true;
     }
 }
 if ($_SESSION['TRIGGER_DEBUG']['NUM_TRIGGERS'] != 0) {
     //Execute after triggers - Start
     $Fields['APP_DATA'] = $oCase->ExecuteTriggers($_SESSION['TASK'], 'DYNAFORM', $_GET['UID'], 'AFTER', $Fields['APP_DATA']);
     //Execute after triggers - End
 }
예제 #29
0
 private function _submenu()
 {
     require_once PATH_THIRDPARTY . 'smarty/libs/Smarty.class.php';
     // put full path to Smarty.class.php
     global $G_ENABLE_BLANK_SKIN;
     //menu
     global $G_MAIN_MENU;
     global $G_SUB_MENU;
     global $G_MENU_SELECTED;
     global $G_SUB_MENU_SELECTED;
     global $G_ID_MENU_SELECTED;
     global $G_ID_SUB_MENU_SELECTED;
     G::verifyPath(PATH_SMARTY_C, true);
     G::verifyPath(PATH_SMARTY_CACHE, true);
     $smarty = new Smarty();
     $oHeadPublisher =& headPublisher::getSingleton();
     $smarty->template_dir = $this->layoutFileSubmenu['dirname'];
     $smarty->compile_dir = PATH_SMARTY_C;
     $smarty->cache_dir = PATH_SMARTY_CACHE;
     $smarty->config_dir = PATH_THIRDPARTY . 'smarty/configs';
     if (isset($G_ENABLE_BLANK_SKIN) && $G_ENABLE_BLANK_SKIN) {
         $smarty->display($layoutFileBlank['basename']);
     } else {
         $header = '';
         if (isset($oHeadPublisher)) {
             $oHeadPublisher->title = isset($_SESSION['USR_USERNAME']) ? '(' . $_SESSION['USR_USERNAME'] . ' ' . G::LoadTranslation('ID_IN') . ' ' . SYS_SYS . ')' : '';
             $header = $oHeadPublisher->printHeader();
             $header .= $oHeadPublisher->getExtJsStylesheets($this->cssFileName);
         }
         $footer = '';
         if (strpos($_SERVER['REQUEST_URI'], '/login/login') !== false) {
             $freeOfChargeText = "";
             if (!defined('SKIP_FREE_OF_CHARGE_TEXT')) {
                 $freeOfChargeText = "Supplied free of charge with no support, certification, warranty, <br>maintenance nor indemnity by Colosa and its Certified Partners.";
             }
             if (class_exists('pmLicenseManager')) {
                 $freeOfChargeText = "";
             }
             $fileFooter = PATH_SKINS . SYS_SKIN . PATH_SEP . 'footer.html';
             if (file_exists($fileFooter)) {
                 $footer .= file_get_contents($fileFooter);
             } else {
                 $fileFooter = PATH_SKIN_ENGINE . SYS_SKIN . PATH_SEP . 'footer.html';
                 if (file_exists($fileFooter)) {
                     $footer .= file_get_contents($fileFooter);
                 } else {
                     $fileFooter = PATH_CUSTOM_SKINS . SYS_SKIN . PATH_SEP . 'footer.html';
                     if (file_exists($fileFooter)) {
                         $footer .= file_get_contents($fileFooter);
                     } else {
                         $footer .= "<br />Copyright &copy; 2003-" . date('Y') . " <a href=\"http://www.colosa.com\" alt=\"Colosa, Inc.\" target=\"_blank\">Colosa, Inc.</a> All rights reserved.<br /> {$freeOfChargeText} " . "<br><br/><a href=\"http://www.processmaker.com\" alt=\"Powered by ProcessMaker - Open Source Workflow & Business Process Management (BPM) Management Software\" title=\"Powered by ProcessMaker\" target=\"_blank\"></a>";
                     }
                 }
             }
         }
         $oMenu = new Menu();
         $menus = $oMenu->generateArrayForTemplate($G_MAIN_MENU, 'SelectedMenu', 'mainMenu', $G_MENU_SELECTED, $G_ID_MENU_SELECTED);
         $smarty->assign('menus', $menus);
         if (substr(SYS_SKIN, 0, 2) == 'ux') {
             $smarty->assign('exit_editor', 1);
             $smarty->assign('exit_editor_label', G::loadTranslation('ID_CLOSE_EDITOR'));
         }
         $oSubMenu = new Menu();
         $subMenus = $oSubMenu->generateArrayForTemplate($G_SUB_MENU, 'selectedSubMenu', 'subMenu', $G_SUB_MENU_SELECTED, $G_ID_SUB_MENU_SELECTED);
         $smarty->assign('subMenus', $subMenus);
         if (!defined('NO_DISPLAY_USERNAME')) {
             define('NO_DISPLAY_USERNAME', 0);
         }
         if (NO_DISPLAY_USERNAME == 0) {
             $smarty->assign('userfullname', isset($_SESSION['USR_FULLNAME']) ? $_SESSION['USR_FULLNAME'] : '');
             $smarty->assign('user', isset($_SESSION['USR_USERNAME']) ? '(' . $_SESSION['USR_USERNAME'] . ')' : '');
             $smarty->assign('rolename', isset($_SESSION['USR_ROLENAME']) ? $_SESSION['USR_ROLENAME'] . '' : '');
             $smarty->assign('pipe', isset($_SESSION['USR_USERNAME']) ? ' | ' : '');
             $smarty->assign('logout', G::LoadTranslation('ID_LOGOUT'));
             $smarty->assign('workspace', defined('SYS_SYS') ? SYS_SYS : '');
             $uws = isset($_SESSION['USR_ROLENAME']) && $_SESSION['USR_ROLENAME'] != '' ? strtolower(G::LoadTranslation('ID_WORKSPACE_USING')) : G::LoadTranslation('ID_WORKSPACE_USING');
             $smarty->assign('workspace_label', $uws);
             G::LoadClass("configuration");
             $conf = new Configurations();
             $conf->getFormats();
             if (defined('SYS_SYS')) {
                 $smarty->assign('udate', $conf->getSystemDate(date('Y-m-d H:i:s')));
             } else {
                 $smarty->assign('udate', G::getformatedDate(date('Y-m-d'), 'M d, yyyy', SYS_LANG));
             }
             $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);
         }
         if (defined('SYS_SYS')) {
             $logout = '/sys' . SYS_SYS . '/' . SYS_LANG . '/' . SYS_SKIN . '/login/login';
         } else {
             $logout = '/sys/' . SYS_LANG . '/' . SYS_SKIN . '/login/login';
         }
         $smarty->assign('linklogout', $logout);
         $smarty->assign('header', $header);
         $smarty->assign('footer', $footer);
         $smarty->assign('tpl_menu', PATH_TEMPLATE . 'menu.html');
         $smarty->assign('tpl_submenu', PATH_TEMPLATE . 'submenu.html');
         if (class_exists('PMPluginRegistry')) {
             $oPluginRegistry =& PMPluginRegistry::getSingleton();
             $sCompanyLogo = $oPluginRegistry->getCompanyLogo('/images/processmaker.logo.jpg');
         } else {
             $sCompanyLogo = '/images/processmaker.logo.jpg';
         }
         $smarty->assign('logo_company', $sCompanyLogo);
         $smarty->display($this->layoutFileSubmenu['basename']);
     }
 }
 public function getUserNameFormats()
 {
     $formats[] = array('id' => '@firstName @lastName', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_1'));
     $formats[] = array('id' => '@firstName @lastName (@userName)', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_2'));
     $formats[] = array('id' => '@userName', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_3'));
     $formats[] = array('id' => '@userName (@firstName @lastName)', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_4'));
     $formats[] = array('id' => '@lastName @firstName', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_5'));
     $formats[] = array('id' => '@lastName, @firstName', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_6'));
     $formats[] = array('id' => '@lastName, @firstName (@userName)', 'name' => G::loadTranslation('ID_USERNAME_FORMAT_7'));
     return $formats;
 }