/** * Get error message * * @param string $validator * @param string $fieldName * @return string */ public function getErrorMessage($validator = null, $fieldName = null) { if ($this->errorMessage != "") { if ($fieldName != "") { $this->errorMessage = str_replace($this->fieldNameMask, $fieldName, $this->errorMessage); } return $this->errorMessage; } else { $validator = str_replace('{@validate:', '', $validator); $pos1 = strpos($validator, '('); $type = substr($validator, 0, $pos1); switch ($type) { case "date": return MessageHelper::getMessage("VALIDATESVC_DATE_INVALID", array($fieldName)); break; case "email": return MessageHelper::getMessage("VALIDATESVC_EMAIL_INVALID", array($fieldName)); break; case "phone": return MessageHelper::getMessage("VALIDATESVC_PHONE_INVALID", array($fieldName)); break; case "zip": return MessageHelper::getMessage("VALIDATESVC_ZIP_INVALID", array($fieldName)); break; case "social": return MessageHelper::getMessage("VALIDATESVC_SOCIAL_INVALID", array($fieldName)); break; case "credit": return MessageHelper::getMessage("VALIDATESVC_CREDIT_INVALID", array($fieldName)); break; case "street": return MessageHelper::getMessage("VALIDATESVC_STREET_INVALID", array($fieldName)); break; case "strongPassword": return MessageHelper::getMessage("VALIDATESVC_PASSWORD_NOT_STRONG", array($fieldName)); break; } return MessageHelper::getMessage("VALIDATESVC_INVALID", array($fieldName)); } }
private function executeRpcMethod($objName, $methodName, $params) { $obj = Openbizx::getObject($objName); if ($obj) { if (method_exists($obj, $methodName)) { if (!$this->validateRequest($obj, $methodName)) { $errmsg = MessageHelper::getMessage("SYS_ERROR_REQUEST_REJECT", array($obj->objectName, $methodName)); trigger_error($errmsg, E_USER_ERROR); } switch (count($params)) { case 0: $rt_val = $obj->{$methodName}(); break; case 1: $rt_val = $obj->{$methodName}($params[0]); break; case 2: $rt_val = $obj->{$methodName}($params[0], $params[1]); break; case 3: $rt_val = $obj->{$methodName}($params[0], $params[1], $params[2]); break; default: $rt_val = call_user_func_array(array($obj, $methodName), $params); } } else { $errmsg = MessageHelper::getMessage("SYS_ERROR_METHODNOTFOUND", array($objName, $methodName)); trigger_error($errmsg, E_USER_ERROR); } } else { $errmsg = MessageHelper::getMessage("SYS_ERROR_CLASSNOTFOUND", array($objName)); trigger_error($errmsg, E_USER_ERROR); } $invocationType = $this->request->getInvocationType(); if ($invocationType == "Invoke") { // no RPC invoke, page reloaded -> rerender view if ($this->getClientProxy()->hasOutput()) { $this->getClientProxy()->printOutput(); } } else { if ($invocationType == "RPCInvoke") { // RPC invoke if ($this->getClientProxy()->hasOutput()) { if ($_REQUEST['jsrs'] == 1) { echo "<html><body><form name=\"jsrs_Form\"><textarea name=\"jsrs_Payload\" id=\"jsrs_Payload\">"; } $this->getClientProxy()->printOutput(); if ($_REQUEST['jsrs'] == 1) { echo "</textarea></form></body></html>"; } } else { return $rt_val; } } } }
/** * Get openbiz template file path by searching modules/package, /templates * * @param string $className * @return string php library file path * */ public static function getTplFileWithPath($templateFile, $packageName) { //for not changing a lot things, the best injection point is added theme support here. $theme = Openbizx::$app->getCurrentTheme(); $themePath = $theme; // Openbizx::$app->getConfiguration()->GetThemePath($theme); if ($themePath) { $templateRoot = OPENBIZ_THEME_PATH . "/" . $themePath . "/template"; } else { $templateRoot = SMARTY_TPL_PATH; } $names = explode(".", $packageName); if (count($names) > 0) { $moduleName = $names[0]; } $packagePath = str_replace('.', '/', $packageName); // check the leading char '@' $checkExtModule = true; if (strpos($packagePath, '@') === 0) { $packagePath = substr($packagePath, 1); $checkExtModule = false; } $searchTpls = array(Openbizx::$app->getModulePath() . "/{$packagePath}/template/{$templateFile}", dirname(Openbizx::$app->getModulePath() . "/{$packagePath}") . "/template/{$templateFile}", Openbizx::$app->getModulePath() . "/{$moduleName}/template/{$templateFile}", $templateRoot . "/{$templateFile}"); if ($checkExtModule && defined('MODULE_EX_PATH')) { array_unshift($searchTpls, MODULE_EX_PATH . "/{$packagePath}/template/{$templateFile}"); } // device if (defined('OPENBIZ_CLIENT_DEVICE')) { array_unshift($searchTpls, Openbizx::$app->getModulePath() . "/{$moduleName}/template/" . OPENBIZ_CLIENT_DEVICE . "/{$templateFile}"); } foreach ($searchTpls as $tplFile) { if (file_exists($tplFile)) { return $tplFile; } } $errmsg = MessageHelper::getMessage("UNABLE_TO_LOCATE_TEMPLATE_FILE", array($templateFile)); trigger_error($errmsg, E_USER_ERROR); return null; }