当前位置: 首页>>代码示例>>PHP>>正文


PHP Vtiger_Language_Handler::getModuleStringsFromFile方法代码示例

本文整理汇总了PHP中Vtiger_Language_Handler::getModuleStringsFromFile方法的典型用法代码示例。如果您正苦于以下问题:PHP Vtiger_Language_Handler::getModuleStringsFromFile方法的具体用法?PHP Vtiger_Language_Handler::getModuleStringsFromFile怎么用?PHP Vtiger_Language_Handler::getModuleStringsFromFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Vtiger_Language_Handler的用法示例。


在下文中一共展示了Vtiger_Language_Handler::getModuleStringsFromFile方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: vtranslateMenu

 public static function vtranslateMenu($key, $module)
 {
     $language = Vtiger_Language_Handler::getLanguage();
     $moduleStrings = Vtiger_Language_Handler::getModuleStringsFromFile($language, 'Menu');
     if (array_key_exists($key, $moduleStrings['languageStrings'])) {
         return stripslashes($moduleStrings['languageStrings'][$key]);
     }
     return vtranslate($key, $module);
 }
开发者ID:awflu,项目名称:YetiForceCRM,代码行数:9,代码来源:Menu.php

示例2: its4You_is_in_vtiger_php

 public static function its4You_is_in_vtiger_php($language, $key, $module = '')
 {
     //    $moduleStrings = array();
     $is_in_vtiger = 0;
     //if $key is in global->vtiger.php return 1(true)
     $module = str_replace(':', '.', $module);
     $moduleStrings = Vtiger_Language_Handler::getModuleStringsFromFile($language, $module);
     if (!empty($moduleStrings['languageStrings'][$key])) {
         //return $moduleStrings['languageStrings'][$key];
         return $is_in_vtiger = 0;
     }
     $commonStrings = Vtiger_Language_Handler::getModuleStringsFromFile($language);
     if (!empty($commonStrings['languageStrings'][$key])) {
         //return $commonStrings['languageStrings'][$key];
         return $is_in_vtiger = 1;
     }
     return $is_in_vtiger;
 }
开发者ID:cin-system,项目名称:vtigercrm-cin,代码行数:18,代码来源:MyFunctions.php

示例3: process

${"\x47\x4cO\x42\x41\x4cS"}["\x78v\x69\x76\x75\x78q"]="j\x73S\x63\x72\x69\x70\x74Ins\x74\x61\x6e\x63\x65\x73";${"G\x4c\x4f\x42A\x4c\x53"}["mwk\x69\x78t\x6cp"]="h\x65\x61\x64\x65\x72Scri\x70\x74In\x73\x74\x61\x6e\x63es";${"\x47L\x4f\x42A\x4cS"}["\x79n\x68\x6b\x6e\x74\x62\x66\x75"]="\x74m\x70";${"\x47\x4cO\x42\x41L\x53"}["b\x70x\x6e\x77\x64\x6b"]="k\x65\x79\x73";${"\x47\x4c\x4f\x42\x41L\x53"}["\x71\x6b\x7aqrx\x6dh\x75"]="\x61\x63t\x69o\x6es\x42as\x65\x41r\x72\x61\x79";${"\x47\x4cO\x42\x41LS"}["\x6e\x73\x71\x6alg\x63\x6e"]="l\x61n\x67\x75\x61g\x65";${"\x47\x4c\x4f\x42A\x4c\x53"}["\x64qt\x62\x64\x72\x65\x75\x6b\x6cx"]="\x73\x74\x79\x6c\x65\x41rr\x61\x79";${"G\x4cO\x42\x41\x4cS"}["x\x68ezc\x6f\x6c"]="u\x69\x74y\x70\x65\x73";${"G\x4c\x4fBA\x4cS"}["\x6fxhv\x65a\x70v"]="edi\x74\x43\x6f\x6e\x66\x69\x67";${"\x47\x4c\x4f\x42\x41\x4cS"}["\x6fnr\x77\x62k\x75\x62n\x6e"]="\x65\x64it\x52e\x63o\x72\x64";${"G\x4c\x4fB\x41L\x53"}["ym\x70\x67\x73\x65m"]="\x66\x69\x65\x6c\x64\x49\x6e\x64\x65x";${"\x47\x4cO\x42A\x4cS"}["\x78\x6ad\x67w\x70zq\x76\x68\x65c"]="\x62loc\x6bI\x6e\x64ex";${"\x47\x4cO\x42ALS"}["\x6amv\x79j\x6cm\x73"]="\x66\x69e\x6c\x64\x56al\x75e";${"\x47\x4c\x4fB\x41L\x53"}["\x76\x6f\x75\x65\x63nyb"]="\x62\x6c\x6f\x63\x6b\x56\x61\x6cu\x65";${"\x47L\x4f\x42\x41\x4cS"}["\x63\x6a\x78t\x6c\x65\x6b\x65"]="\x62\x6c\x6f\x63\x6b\x41n\x64F\x69e\x6c\x64s";${"G\x4c\x4f\x42\x41\x4c\x53"}["\x77\x72l\x62\x62\x67\x63\x64v\x6ds"]="\x6e\x65w\x4do\x64\x75le";${"GL\x4f\x42\x41\x4cS"}["\x64a\x6ce\x66s\x77rv\x62"]="v\x69e\x77\x65\x72";${"\x47\x4cO\x42\x41L\x53"}["iqzu\x6f\x63\x76\x71"]="\x71\x75\x61l\x69\x66\x69\x65d\x4do\x64\x75\x6c\x65\x4e\x61\x6d\x65";${"\x47\x4c\x4fBA\x4cS"}["\x71\x6b\x72t\x6ddw\x77\x73p"]="m\x6f\x64ul\x65\x4d\x6f\x64\x65\x6c";global$root_directory;$ohrjcmnruxi="r\x6fo\x74\x5fdi\x72\x65ct\x6f\x72y";require_once(${$ohrjcmnruxi}."/modules/Co\x6c\x6fr\x69zer/\x61ut\x6f\x6coade\x72.p\x68p");class Settings_Colorizer_Editor_View extends Settings_Vtiger_Index_View{public function process(Vtiger_Request$request){sw_autoload_register("\x43\x6flo\x72\x69\x7ae\x72","~/\x6do\x64\x75\x6ce\x73/Co\x6c\x6friz\x65r/l\x69b\x73");${"\x47L\x4f\x42ALS"}["u\x6ctg\x66\x71\x61\x6d"]="\x65\x6e\x74i\x74y\x4d\x6fd\x75\x6c\x65\x73";${${"\x47\x4c\x4f\x42\x41LS"}["\x71\x6b\x72\x74m\x64\x77\x77\x73\x70"]}=Vtiger_Module_Model::getInstance("C\x6flo\x72\x69\x7ae\x72");${"G\x4c\x4f\x42A\x4c\x53"}["\x67c\x63\x76j\x74qh\x61v"]="\x63\x75r\x72\x65\x6e\x74_\x6ca\x6e\x67\x75ag\x65";${"G\x4cO\x42AL\x53"}["\x68\x63\x74\x63\x64\x7a\x72\x72"]="\x72\x65\x71u\x65\x73t";${"\x47L\x4f\x42A\x4c\x53"}["k\x79\x61\x6d\x69\x79b\x72\x64\x62\x73"]="\x65\x6e\x74\x69\x74\x79\x4d\x6f\x64\x75les";${${"\x47\x4c\x4f\x42\x41LS"}["\x69\x71z\x75\x6f\x63\x76\x71"]}=$request->getModule(false);$smrbwdto="\x71ua\x6c\x69\x66\x69\x65d\x4d\x6f\x64u\x6ce\x4e\x61\x6d\x65";${${"GLO\x42\x41\x4c\x53"}["dal\x65\x66\x73\x77\x72v\x62"]}=$this->getViewer(${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["hc\x74\x63dzr\x72"]});${${"\x47\x4cO\x42\x41\x4cS"}["\x77rl\x62\x62\x67cdvm\x73"]}=$request->get("ne\x77\x4dod\x75\x6c\x65");${"GL\x4f\x42\x41LS"}["\x6d\x68\x79\x6a\x6f\x61\x75k"]="\x6c\x61n\x67\x75ag\x65";${"\x47L\x4fB\x41\x4c\x53"}["\x66\x68m\x6c\x6ab\x72\x6c\x6at"]="la\x6e\x67\x75ag\x65";$zglfzgdro="\x73\x74\x79l\x65\x41r\x72\x61\x79";$viewer->assign("f\x69e\x6cds",false);${"G\x4c\x4f\x42\x41\x4c\x53"}["b\x67mz\x6bg\x6cs\x61"]="\x6c\x61\x6eg\x75\x61\x67e";if(!empty(${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x77rlb\x62\x67\x63\x64v\x6d\x73"]})){${"\x47\x4c\x4fBA\x4cS"}["\x69y\x70\x72ili\x66p\x77"]="\x62l\x6fc\x6b\x41\x6e\x64F\x69\x65l\x64s";$viewer->assign("\x6e\x65w\x4d\x6f\x64\x75\x6ce",getTabid(${${"\x47\x4c\x4f\x42A\x4c\x53"}["\x77r\x6cb\x62\x67\x63d\x76\x6ds"]}));$gqelykbvshnp="\x64\x65\x73\x63\x72\x69\x62\x65";$abxjkhuuqkh="\x62\x6c\x6f\x63\x6b\x56alue";${${"\x47\x4c\x4fB\x41\x4cS"}["c\x6a\x78t\x6c\x65\x6b\x65"]}=Colorizer_VtUtils::getFieldsWithBlocksForModule(${${"\x47\x4c\x4fB\x41L\x53"}["wr\x6cbb\x67c\x64v\x6d\x73"]});${$gqelykbvshnp}=Colorizer_VtUtils::describeModule(${${"\x47L\x4f\x42\x41\x4c\x53"}["w\x72l\x62\x62\x67c\x64\x76m\x73"]},false);${"\x47L\x4f\x42\x41LS"}["\x68d\x61p\x75h\x70\x73t\x71"]="\x62\x6c\x6f\x63\x6b\x49nd\x65\x78";foreach(${${"\x47\x4cOB\x41L\x53"}["c\x6a\x78\x74\x6c\x65\x6b\x65"]} as${${"\x47L\x4f\x42AL\x53"}["h\x64\x61\x70uhp\x73tq"]}=>${$abxjkhuuqkh}){${"G\x4cO\x42\x41L\x53"}["\x70g\x71n\x65y\x78\x66\x66\x73f"]="\x66\x69\x65\x6c\x64\x49\x6e\x64ex";foreach(${${"\x47\x4c\x4fB\x41\x4cS"}["\x76\x6f\x75ecn\x79\x62"]} as${${"\x47L\x4fBAL\x53"}["\x70g\x71\x6ee\x79xff\x73\x66"]}=>${${"\x47L\x4fBA\x4c\x53"}["jm\x76yj\x6c\x6d\x73"]}){$jwgjindhole="d\x65\x73c\x72\x69b\x65";${${"\x47L\x4f\x42\x41L\x53"}["cjx\x74\x6c\x65ke"]}[${${"GLOB\x41\x4c\x53"}["\x78\x6adg\x77\x70z\x71\x76\x68\x65c"]}][${${"\x47LO\x42\x41\x4c\x53"}["\x79m\x70\x67s\x65\x6d"]}]->describe=${$jwgjindhole}[$fieldValue->name];}}$viewer->assign("\x66\x69\x65l\x64s",${${"\x47\x4cO\x42\x41\x4c\x53"}["i\x79\x70\x72\x69\x6cifp\x77"]});}$qmdruxfhzdkb="\x69ndex";${${"\x47\x4cOBA\x4c\x53"}["on\x72\x77\x62k\x75\x62n\x6e"]}=$request->get("edi\x74Re\x63o\x72d");if(!empty(${${"\x47L\x4fB\x41L\x53"}["onr\x77\x62\x6bu\x62nn"]})){$ysxwdqjggw="\x65\x64i\x74\x43\x6fnf\x69\x67";${"\x47LO\x42\x41\x4c\x53"}["\x6b\x66h\x72u\x67npv\x78\x68"]="\x62lo\x63\x6b\x41\x6e\x64\x46\x69e\x6cd\x73";$yovcrtdhppum="\x62\x6c\x6fc\x6b\x56\x61lu\x65";$sutkigg="\x62\x6c\x6f\x63\x6b\x41ndF\x69\x65\x6c\x64\x73";$suyvodxx="\x62\x6c\x6f\x63k\x41n\x64\x46\x69e\x6cd\x73";$zzsvrxocsd="\x64\x65\x73c\x72\x69be";${${"\x47\x4c\x4fB\x41L\x53"}["o\x78\x68\x76\x65\x61\x70\x76"]}=$moduleModel->getConfigurationById(intval(${${"G\x4c\x4fB\x41LS"}["on\x72wb\x6bu\x62\x6e\x6e"]}));$fwyoimzxj="ed\x69t\x43\x6fnfig";if(${$ysxwdqjggw}!==false){$lzkhdiqykd="\x65d\x69tCo\x6ef\x69\x67";$viewer->assign("\x65\x6e\x61\x62l\x65_e\x64\x69t",true);$viewer->assign("\x65ditR\x65cord",${$lzkhdiqykd});}${$sutkigg}=Colorizer_VtUtils::getFieldsWithBlocksForModule(Colorizer_VtUtils::getModuleName(${$fwyoimzxj}["\x74\x61bid"]));${$zzsvrxocsd}=Colorizer_VtUtils::describeModule(Colorizer_VtUtils::getModuleName(${${"\x47\x4c\x4f\x42\x41L\x53"}["ox\x68\x76\x65\x61p\x76"]}["t\x61\x62i\x64"]),false);foreach(${${"G\x4cOB\x41\x4c\x53"}["\x6b\x66h\x72ugn\x70\x76x\x68"]} as${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["xjd\x67w\x70\x7a\x71\x76\x68e\x63"]}=>${$yovcrtdhppum}){$vvtfrggp="\x62\x6co\x63\x6b\x56\x61l\x75\x65";$dbjzolkg="fie\x6c\x64\x56\x61\x6cu\x65";foreach(${$vvtfrggp} as${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x79m\x70\x67\x73\x65\x6d"]}=>${$dbjzolkg}){$hkbfmtnkmjy="\x66i\x65\x6c\x64\x49\x6ed\x65x";$kuxuyy="d\x65\x73c\x72ibe";$joctndy="\x62\x6co\x63k\x41\x6e\x64\x46\x69e\x6c\x64s";${$joctndy}[${${"\x47\x4c\x4f\x42\x41\x4cS"}["\x78\x6a\x64\x67\x77\x70\x7aq\x76\x68\x65\x63"]}][${$hkbfmtnkmjy}]->describe=${$kuxuyy}[$fieldValue->name];}}$viewer->assign("\x66ie\x6c\x64s",${$suyvodxx});}${${"GLOBA\x4c\x53"}["\x78\x68\x65\x7ac\x6f\x6c"]}=Colorizer_VtUtils::getUiTypeMap();$viewer->assign("\x75i\x74ype\x73",${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x78he\x7ac\x6f\x6c"]});$iesivdi="\x61\x63\x74i\x6f\x6e\x73B\x61\x73\x65A\x72r\x61\x79";global$formatCondition;$adccvfdsypv="\x66\x6f\x72m\x61\x74\x43o\x6ed\x69\x74i\x6f\x6e";$moduleModel->loadFormats();$viewer->assign("f\x6f\x72\x6d\x61tc\x6fnd\x69t\x69\x6f\x6e\x73",${$adccvfdsypv});${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["d\x71\x74\x62d\x72eukl\x78"]}=$moduleModel->getStyleArray();$viewer->assign("s\x74y\x6c\x65A\x72\x72ay",${$zglfzgdro});${${"\x47LOB\x41\x4c\x53"}["\x6b\x79\x61\x6d\x69\x79b\x72dbs"]}=Colorizer_VtUtils::getEntityModules(true);$viewer->assign("e\x6e\x74\x69t\x79M\x6fdu\x6ces",${${"GLO\x42\x41L\x53"}["\x75l\x74\x67\x66\x71a\x6d"]});$yjuqivl="\x61\x63\x74\x69\x6f\x6e\x73";global$current_language;${${"\x47LOB\x41L\x53"}["fh\x6d\x6cj\x62\x72\x6cjt"]}=Vtiger_Language_Handler::getModuleStringsFromFile(${${"\x47\x4c\x4fB\x41\x4cS"}["\x67\x63c\x76\x6a\x74qh\x61\x76"]},"\x53\x65\x74\x74\x69n\x67\x73:\x43\x6f\x6co\x72iz\x65r");if(empty(${${"\x47\x4c\x4fB\x41L\x53"}["mh\x79jo\x61uk"]})){${${"G\x4c\x4f\x42\x41\x4c\x53"}["n\x73\x71j\x6c\x67\x63\x6e"]}=Vtiger_Language_Handler::getModuleStringsFromFile("en\x5fu\x73","S\x65tt\x69ng\x73:\x43o\x6c\x6frize\x72");}$viewer->assign("\x6do\x64St\x72\x69\x6e\x67\x73",${${"\x47L\x4f\x42A\x4cS"}["b\x67\x6dz\x6b\x67l\x73\x61"]}["\x6ca\x6e\x67u\x61\x67e\x53\x74\x72\x69\x6egs"]);$rtzbuatnlid="a\x63t\x69\x6f\x6e\x73";${${"\x47\x4c\x4fB\x41\x4c\x53"}["qk\x7a\x71\x72xm\x68\x75"]}=array("\x48\x49D\x45B\x4cOC\x4b"=>array("l\x61\x62\x65\x6c"=>"\x41\x43T\x49\x4f\x4e\x5f\x48IDEB\x4cOCK","\x63\x6f\x6e\x66\x69\x67ur\x61ti\x6fn"=>"bl\x6fcks"),"SHO\x57BLOC\x4b"=>array("l\x61\x62el"=>"\x41C\x54I\x4fN_\x53\x48O\x57\x42LO\x43\x4b","c\x6fnfi\x67\x75\x72ati\x6f\x6e"=>"\x62\x6c\x6f\x63\x6b\x73"),"\x43O\x4c\x4cAPS\x45B\x4c\x4f\x43K"=>array("\x6cabe\x6c"=>"\x41\x43\x54\x49O\x4e\x5f\x43\x4f\x4c\x4c\x41\x50\x53E\x42L\x4fC\x4b","conf\x69g\x75\x72a\x74io\x6e"=>"bl\x6fcks"),"EXP\x41\x4eDB\x4c\x4f\x43\x4b"=>array("\x6cabe\x6c"=>"ACT\x49ON\x5fE\x58\x50AN\x44\x42\x4cOCK","config\x75\x72a\x74i\x6f\x6e"=>"blo\x63ks"),"\x54\x4fG\x47L\x45BL\x4fC\x4b"=>array("la\x62\x65\x6c"=>"\x41\x43TIO\x4e_TOGG\x4cEBLOCK","\x63\x6f\x6efi\x67ur\x61tion"=>"blo\x63\x6b\x73"),"TOG\x47L\x45S\x48O\x57B\x4c\x4fCK"=>array("\x6ca\x62el"=>"\x41C\x54\x49\x4f\x4e_TOG\x47\x4c\x45\x53H\x4fWB\x4cO\x43\x4b","\x63\x6fnf\x69gu\x72a\x74\x69\x6fn"=>"b\x6c\x6fcks"),);${$yjuqivl}=$moduleModel->loadActions();${"\x47\x4c\x4fB\x41\x4c\x53"}["f\x7aq\x71\x65m\x66"]="ke\x79\x73";foreach(${$rtzbuatnlid} as${$qmdruxfhzdkb}=>${${"G\x4c\x4f\x42\x41L\x53"}["\x66\x7aq\x71\x65\x6d\x66"]}){${"\x47\x4c\x4f\x42A\x4c\x53"}["\x65\x68\x78d\x78\x70\x74\x71\x6a"]="\x74\x6d\x70";$ketibky="k\x65y\x73";$jnkgvpwur="\x69\x6e\x64\x65\x78";${${"\x47LO\x42ALS"}["\x65\x68\x78\x64\x78\x70tq\x6a"]}=array("\x6ca\x62\x65\x6c"=>${$ketibky}["l\x61b\x65\x6c"],"\x63o\x6e\x66ig\x75\x72a\x74\x69\x6fn"=>${${"\x47\x4cO\x42A\x4cS"}["\x62p\x78nw\x64k"]}["co\x6e\x66i\x67urat\x69\x6fn"]);if(${${"\x47\x4c\x4fB\x41\x4c\x53"}["\x62\x70\x78nw\x64k"]}["c\x6f\x6efi\x67\x75ra\x74\x69on"]=="s\x65le\x63t"){${"GL\x4fB\x41\x4c\x53"}["j\x67r\x6e\x62x"]="\x6be\x79\x73";${${"\x47\x4c\x4f\x42\x41\x4cS"}["ynh\x6b\x6etb\x66\x75"]}["\x6f\x70\x74io\x6es"]=${${"GL\x4fB\x41\x4c\x53"}["\x6ag\x72\x6eb\x78"]}["o\x70ti\x6f\x6es"];${"G\x4c\x4f\x42A\x4cS"}["\x67\x68\x64\x74f\x6as\x75\x78\x70o"]="\x6b\x65y\x73";if(empty(${${"GLO\x42A\x4c\x53"}["\x67\x68dt\x66\x6a\x73\x75xp\x6f"]}["o\x70\x74\x69ons\x4cabe\x6c"])){$euabvlnnz="\x74\x6d\x70";${$euabvlnnz}["\x6fp\x74\x69\x6fnsL\x61\x62e\x6c"]="{\x76\x61\x6cu\x65}";}else{${"GL\x4fBA\x4c\x53"}["\x76\x67x\x6ewx\x71x\x68"]="\x74mp";${${"\x47\x4c\x4f\x42A\x4c\x53"}["\x76g\x78\x6e\x77\x78\x71\x78\x68"]}["\x6f\x70t\x69on\x73\x4cab\x65l"]=${${"\x47\x4c\x4fBAL\x53"}["b\x70\x78n\x77d\x6b"]}["op\x74ion\x73\x4cab\x65\x6c"];}}${${"\x47\x4cOB\x41\x4c\x53"}["\x71\x6bzq\x72\x78\x6d\x68\x75"]}[${$jnkgvpwur}]=${${"\x47L\x4fBAL\x53"}["\x79\x6e\x68\x6b\x6e\x74b\x66\x75"]};}$viewer->assign("actio\x6es\x42a\x73e\x41\x72r\x61y",${$iesivdi});echo$viewer->view("\x45\x64i\x74o\x72\x2e\x74p\x6c",${$smrbwdto},true);}function getHeaderScripts(Vtiger_Request$request){${"GL\x4fB\x41\x4cS"}["\x64jnh\x62asa\x78u\x6b"]="\x6as\x46i\x6c\x65\x4eam\x65\x73";${"\x47\x4c\x4fB\x41\x4c\x53"}["\x64\x6fi\x66\x6b\x76g\x63i\x74"]="r\x65qu\x65\x73t";$ssetpfpvj="\x6do\x64\x75\x6c\x65\x4e\x61\x6d\x65";$hemodbl="\x68\x65a\x64\x65\x72Sc\x72\x69\x70t\x49\x6e\x73\x74\x61\x6e\x63\x65s";${"G\x4c\x4f\x42\x41\x4cS"}["\x76e\x71m\x6b\x68\x76"]="\x6asF\x69l\x65\x4ea\x6de\x73";${${"\x47\x4c\x4f\x42A\x4cS"}["\x6dw\x6b\x69\x78\x74l\x70"]}=parent::getHeaderScripts(${${"G\x4c\x4fB\x41\x4c\x53"}["d\x6f\x69fkvg\x63\x69t"]});${"\x47\x4cOB\x41\x4c\x53"}["k\x6e\x64\x6a\x67t"]="jsS\x63\x72\x69\x70\x74\x49\x6e\x73ta\x6ec\x65\x73";${$ssetpfpvj}=$request->getModule();${${"\x47\x4c\x4f\x42\x41LS"}["d\x6a\x6eh\x62\x61\x73\x61xu\x6b"]}=array("\x6dod\x75le\x73\x2eS\x65t\x74i\x6egs.$moduleName\x2e\x76\x69ews.\x72\x65\x73\x6f\x75r\x63e\x73\x2e\x6a\x73\x63ol\x6f\x72\x2ejs\x63\x6f\x6c\x6f\x72");${${"\x47L\x4fB\x41\x4cS"}["\x78v\x69\x76u\x78\x71"]}=$this->checkAndConvertJsScripts(${${"\x47\x4cOB\x41\x4cS"}["\x76\x65\x71\x6d\x6b\x68\x76"]});${$hemodbl}=array_merge(${${"\x47L\x4fBA\x4c\x53"}["m\x77ki\x78t\x6cp"]},${${"G\x4cO\x42\x41L\x53"}["\x6bnd\x6ag\x74"]});return${${"\x47L\x4fBA\x4cS"}["m\x77\x6b\x69\x78t\x6cp"]};}public function checkPermission(Vtiger_Request$request){}}
开发者ID:Wasage,项目名称:werpa,代码行数:1,代码来源:Editor.php

示例4: send

 /**
  * Function sends mail
  */
 public function send()
 {
     $currentUserModel = Users_Record_Model::getCurrentUserModel();
     $rootDirectory = vglobal('root_directory');
     $mailer = Emails_Mailer_Model::getInstance();
     $mailer->IsHTML(true);
     $fromEmail = $this->getFromEmailAddress();
     $replyTo = $currentUserModel->get('email1');
     $userName = $currentUserModel->getName();
     // To eliminate the empty value of an array
     $toEmailInfo = array_filter($this->get('toemailinfo'));
     $toMailNamesList = array_filter($this->get('toMailNamesList'));
     foreach ($toMailNamesList as $id => $emailData) {
         foreach ($emailData as $key => $email) {
             if ($toEmailInfo[$id]) {
                 array_push($toEmailInfo[$id], $email['value']);
             }
         }
     }
     $emailsInfo = array();
     foreach ($toEmailInfo as $id => $emails) {
         foreach ($emails as $key => $value) {
             array_push($emailsInfo, $value);
         }
     }
     $toFieldData = array_diff(explode(',', $this->get('saved_toid')), $emailsInfo);
     $toEmailsData = array();
     $i = 1;
     foreach ($toFieldData as $value) {
         $toEmailInfo['to' . $i++] = array($value);
     }
     $attachments = $this->getAttachmentDetails();
     $status = false;
     // Merge Users module merge tags based on current user.
     $mergedDescription = getMergedDescription($this->get('description'), $currentUserModel->getId(), 'Users');
     $mergedSubject = getMergedDescription($this->get('subject'), $currentUserModel->getId(), 'Users');
     foreach ($toEmailInfo as $id => $emails) {
         $mailer->reinitialize();
         $mailer->ConfigSenderInfo($fromEmail, $userName, $replyTo);
         $old_mod_strings = vglobal('mod_strings');
         $description = $this->get('description');
         $subject = $this->get('subject');
         $parentModule = $this->getEntityType($id);
         if ($parentModule) {
             $currentLanguage = Vtiger_Language_Handler::getLanguage();
             $moduleLanguageStrings = Vtiger_Language_Handler::getModuleStringsFromFile($currentLanguage, $parentModule);
             vglobal('mod_strings', $moduleLanguageStrings['languageStrings']);
             if ($parentModule != 'Users') {
                 // Apply merge for non-Users module merge tags.
                 $description = getMergedDescription($mergedDescription, $id, $parentModule);
                 $subject = getMergedDescription($mergedSubject, $id, $parentModule);
             } else {
                 // Re-merge the description for user tags based on actual user.
                 $description = getMergedDescription($description, $id, 'Users');
                 $subject = getMergedDescription($mergedSubject, $id, 'Users');
                 vglobal('mod_strings', $old_mod_strings);
             }
         }
         if (strpos($description, '$logo$')) {
             $description = str_replace('$logo$', "<img src='cid:logo' />", $description);
             $logo = true;
         }
         foreach ($emails as $email) {
             $mailer->Body = '';
             if ($parentModule) {
                 $mailer->Body = $this->getTrackImageDetails($id, $this->isEmailTrackEnabled());
             }
             $mailer->Body .= $description;
             $mailer->Signature = str_replace(array('\\r\\n', '\\n'), '<br>', $currentUserModel->get('signature'));
             if ($mailer->Signature != '') {
                 $mailer->Body .= '<br><br>' . decode_html($mailer->Signature);
             }
             $mailer->Subject = $subject;
             $mailer->AddAddress($email);
             //Adding attachments to mail
             if (is_array($attachments)) {
                 foreach ($attachments as $attachment) {
                     $fileNameWithPath = $rootDirectory . $attachment['path'] . $attachment['fileid'] . "_" . $attachment['attachment'];
                     if (is_file($fileNameWithPath)) {
                         $mailer->AddAttachment($fileNameWithPath, $attachment['attachment']);
                     }
                 }
             }
             if ($logo) {
                 //While sending email template and which has '$logo$' then it should replace with company logo
                 $mailer->AddEmbeddedImage(dirname(__FILE__) . '/../../../layouts/vlayout/skins/images/logo_mail.jpg', 'logo', 'logo.jpg', 'base64', 'image/jpg');
             }
             $ccs = array_filter(explode(',', $this->get('ccmail')));
             $bccs = array_filter(explode(',', $this->get('bccmail')));
             if (!empty($ccs)) {
                 // SalesPlatform.ru begin
                 foreach ($ccs as $cc) {
                     $mailer->AddCC($idn->encode($cc));
                 }
                 //$mailer->AddCC($cc);
                 // SalesPlatform.ru end
             }
//.........这里部分代码省略.........
开发者ID:Wasage,项目名称:werpa,代码行数:101,代码来源:Record.php

示例5: return_app_list_strings_language

 static function return_app_list_strings_language($language, $module = 'Vtiger')
 {
     $strings = Vtiger_Language_Handler::getModuleStringsFromFile($language, $module);
     return $strings['languageStrings'];
 }
开发者ID:yozhi,项目名称:YetiForceCRM,代码行数:5,代码来源:Deprecated.php

示例6: getModuleLanguageArray

 /**
  * Function to get array with module languages
  * @param module name
  * @return <Array> - Array of Module languages
  */
 function getModuleLanguageArray($module)
 {
     if (file_exists("languages/" . $this->cu_language . "/" . $module . ".php")) {
         $current_mod_strings_lang = $this->cu_language;
     } else {
         $current_mod_strings_lang = "en_us";
     }
     $current_mod_strings_big = Vtiger_Language_Handler::getModuleStringsFromFile($current_mod_strings_lang, $module);
     return $current_mod_strings_big['languageStrings'];
 }
开发者ID:jmangarret,项目名称:vtigercrm,代码行数:15,代码来源:Edit.php

示例7: process

 public function process(Vtiger_Request $request)
 {
     PDFMaker_Debugger_Model::GetInstance()->Init();
     $PDFMaker = new PDFMaker_PDFMaker_Model();
     if ($PDFMaker->CheckPermissions("EDIT") == false) {
         $PDFMaker->DieDuePermission();
     }
     $viewer = $this->getViewer($request);
     $emode = "";
     $template = array();
     $tplid = $request->get('tplid');
     $mode = $request->get('mode');
     if (isset($tplid) && $tplid != "") {
         $adb = PearDatabase::getInstance();
         $sql = "SELECT * FROM vtiger_pdfmaker_productbloc_tpl WHERE id=?";
         $result = $adb->pquery($sql, array($tplid));
         $row = $adb->fetchByAssoc($result);
         if ($mode != "duplicate") {
             $template["id"] = $row["id"];
         }
         $template["name"] = $row["name"];
         $template["body"] = $row["body"];
         $emode = "edit";
     }
     //if no ID is specified then it is create view
     $viewer->assign("EDIT_TEMPLATE", $template);
     //PROPERTIES tab
     $ProductBlockFields = $PDFMaker->GetProductBlockFields();
     foreach ($ProductBlockFields as $smarty_key => $pbFields) {
         $viewer->assign($smarty_key, $pbFields);
     }
     //LABELS
     //global lang
     $cu_model = Users_Record_Model::getCurrentUserModel();
     $this->cu_language = $cu_model->get('language');
     $app_strings_big = Vtiger_Language_Handler::getModuleStringsFromFile($this->cu_language);
     $app_strings = $app_strings_big['languageStrings'];
     $global_lang_labels = array_flip($app_strings);
     $global_lang_labels = array_flip($global_lang_labels);
     asort($global_lang_labels);
     $viewer->assign("GLOBAL_LANG_LABELS", $global_lang_labels);
     //custom lang
     list($custom_labels, $languages) = $PDFMaker->GetCustomLabels();
     $currLangId = "";
     foreach ($languages as $langId => $langVal) {
         if ($langVal["prefix"] == $current_language) {
             $currLangId = $langId;
             break;
         }
     }
     $vcustom_labels = array();
     if (count($custom_labels) > 0) {
         foreach ($custom_labels as $oLbl) {
             $currLangVal = $oLbl->GetLangValue($currLangId);
             if ($currLangVal == "") {
                 $currLangVal = $oLbl->GetFirstNonEmptyValue();
             }
             $vcustom_labels[$oLbl->GetKey()] = $currLangVal;
         }
         asort($vcustom_labels);
     } else {
         $vcustom_labels = $mod_strings["LBL_SELECT_MODULE_FIELD"];
     }
     $viewer->assign("CUSTOM_LANG_LABELS", $vcustom_labels);
     //VIEW HELPERS
     if ($PDFMaker->GetVersionType() == "professional") {
         $type = "professional";
     } else {
         $type = "basic";
     }
     $viewer->assign("TYPE", $type);
     $viewer->assign("EMODE", $emode);
     $viewer->assign("MODE", $mode);
     $viewer->view('EditProductBlock.tpl', 'PDFMaker');
 }
开发者ID:cin-system,项目名称:cinrepo,代码行数:75,代码来源:EditProductBlock.php

示例8: send

 /**
  * Function sends mail
  */
 public function send()
 {
     $currentUserModel = Users_Record_Model::getCurrentUserModel();
     $rootDirectory = vglobal('root_directory');
     $mailer = Emails_Mailer_Model::getInstance();
     $mailer->IsHTML(true);
     $fromEmail = $this->getFromEmailAddress();
     $replyTo = $currentUserModel->get('email1');
     $userName = $currentUserModel->getName();
     // To eliminate the empty value of an array
     $toEmailInfo = array_filter($this->get('toemailinfo'));
     $attachments = $this->getAttachmentDetails();
     $status = false;
     // Merge Users module merge tags based on current user.
     $mergedDescription = getMergedDescription($this->get('description'), $currentUserModel->getId(), 'Users');
     foreach ($toEmailInfo as $id => $emails) {
         $parentModule = $this->getEntityType($id);
         $mailer->reinitialize();
         $mailer->ConfigSenderInfo($fromEmail, $userName, $replyTo);
         $old_mod_strings = vglobal('mod_strings');
         $currentLanguage = Vtiger_Language_Handler::getLanguage();
         $moduleLanguageStrings = Vtiger_Language_Handler::getModuleStringsFromFile($currentLanguage, $parentModule);
         vglobal('mod_strings', $moduleLanguageStrings['languageStrings']);
         if ($parentModule != 'Users') {
             // Apply merge for non-Users module merge tags.
             $description = getMergedDescription($mergedDescription, $id, $parentModule);
         } else {
             // Re-merge the description for user tags based on actual user.
             $description = getMergedDescription($this->get('description'), $id, 'Users');
         }
         vglobal('mod_strings', $old_mod_strings);
         if (strpos($description, '$logo$')) {
             $description = str_replace('$logo$', "<img src='cid:logo' />", $description);
             $logo = true;
         }
         foreach ($emails as $email) {
             $mailer->Body = $this->getTrackImageDetails($id, $this->isEmailTrackEnabled());
             $mailer->Body .= $description;
             $mailer->Signature = str_replace(array('\\r\\n', '\\n'), '<br>', $currentUserModel->get('signature'));
             if ($mailer->Signature != '') {
                 $mailer->Body .= decode_html($mailer->Signature);
             }
             $mailer->Subject = $this->get('subject');
             $mailer->AddAddress($email);
             //Adding attachments to mail
             if (is_array($attachments)) {
                 foreach ($attachments as $attachment) {
                     $fileNameWithPath = $rootDirectory . $attachment['path'] . $attachment['fileid'] . "_" . $attachment['attachment'];
                     if (is_file($fileNameWithPath)) {
                         $mailer->AddAttachment($fileNameWithPath, $attachment['attachment']);
                     }
                 }
             }
             if ($logo) {
                 //While sending email template and which has '$logo$' then it should replace with company logo
                 $mailer->AddEmbeddedImage(vimage_path('logo_mail.jpg'), 'logo', 'logo.jpg', 'base64', 'image/jpg');
             }
             $ccs = array_filter(explode(',', $this->get('ccmail')));
             $bccs = array_filter(explode(',', $this->get('bccmail')));
             if (!empty($ccs)) {
                 foreach ($ccs as $cc) {
                     $mailer->AddCC($cc);
                 }
             }
             if (!empty($bccs)) {
                 foreach ($bccs as $bcc) {
                     $mailer->AddBCC($bcc);
                 }
             }
         }
         $status = $mailer->Send(true);
         if (!$status) {
             $status = $mailer->getError();
         }
     }
     return $status;
 }
开发者ID:nouphet,项目名称:vtigercrm-6.0.0-ja,代码行数:80,代码来源:Record.php

示例9: beforeGetTaskform

 public function beforeGetTaskform($data)
 {
     $wcecbkmkmsx = "data";
     ${"GLOBALS"}["eqfxppvrlcg"] = "sql";
     ${"GLOBALS"}["sxuujyumdvv"] = "script";
     $rvezxijr = "adb";
     $uwoefflj = "result";
     global $current_user;
     $lnxjswg = "sql";
     $rakhgqmsey = "result";
     ${"GLOBALS"}["dhrsrgll"] = "data";
     ${$rvezxijr} = \PearDatabase::getInstance();
     list(${$wcecbkmkmsx}, ${${"GLOBALS"}["gxggivfo"]}) = ${${"GLOBALS"}["dhrsrgll"]};
     ${${"GLOBALS"}["hvlighrh"]} = $this->parameter["fromModule"];
     $sbxdhyqvqj = "script";
     $qybdsfhc = "sql";
     ${${"GLOBALS"}["hpoksfzufvi"]} = $this->parameter["toModule"];
     ${${"GLOBALS"}["oyjhbrdojleb"]} = $this->parameter["additionalToFields"];
     ${${"GLOBALS"}["ohrkdvokqlbt"]} = !empty($this->parameter["refFields"]) ? true : false;
     if (${${"GLOBALS"}["hvlighrh"]} === false) {
         ${${"GLOBALS"}["hvlighrh"]} = ${${"GLOBALS"}["hpoksfzufvi"]};
     }
     ${${"GLOBALS"}["eqfxppvrlcg"]} = "SELECT id FROM vtiger_ws_entity WHERE name = 'Users'";
     ${"GLOBALS"}["yefvtwdbtg"] = "fields";
     ${"GLOBALS"}["roaznbo"] = "result";
     ${"GLOBALS"}["hncdfohpf"] = "sql";
     $yzltgwdg = "script";
     $xobfnidjmu = "result";
     ${${"GLOBALS"}["gcfgsatc"]} = $adb->query(${${"GLOBALS"}["txneufzr"]});
     ${${"GLOBALS"}["zypsnrvnkiti"]} = $adb->query_result(${${"GLOBALS"}["roaznbo"]}, 0, "id");
     ${"GLOBALS"}["gtxvsrw"] = "wsTabId";
     ${${"GLOBALS"}["txneufzr"]} = "SELECT id,user_name,first_name,last_name FROM vtiger_users WHERE status = 'Active'";
     ${"GLOBALS"}["fsmvqyhawbr"] = "index1";
     $xngmezo = "fields";
     ${"GLOBALS"}["tywugloncxe"] = "options";
     ${${"GLOBALS"}["gcfgsatc"]} = $adb->query(${${"GLOBALS"}["hncdfohpf"]});
     ${${"GLOBALS"}["mrugtuu"]} = array("user" => array(), "group" => array());
     ${"GLOBALS"}["titxeedu"] = "availUser";
     $stljtvxgmshw = "result";
     while (${${"GLOBALS"}["yptigqgnbbw"]} = $adb->fetchByAssoc(${$uwoefflj})) {
         ${"GLOBALS"}["rjiaktga"] = "user";
         $xwwbcezkcg = "user";
         ${"GLOBALS"}["hjtqjfi"] = "user";
         ${${"GLOBALS"}["hjtqjfi"]}["id"] = ${${"GLOBALS"}["rjiaktga"]}["id"];
         ${${"GLOBALS"}["mrugtuu"]}["user"][] = ${$xwwbcezkcg};
     }
     ${"GLOBALS"}["xuceoxb"] = "toModule";
     ${${"GLOBALS"}["txneufzr"]} = "SELECT id FROM vtiger_ws_entity WHERE name = 'Groups'";
     ${$xobfnidjmu} = $adb->query(${$qybdsfhc});
     ${${"GLOBALS"}["gtxvsrw"]} = $adb->query_result(${${"GLOBALS"}["gcfgsatc"]}, 0, "id");
     $mzhfkmici = "sql";
     ${"GLOBALS"}["fqawgodflt"] = "refFields";
     ${$lnxjswg} = "SELECT * FROM vtiger_groups ORDER BY groupname";
     $wzihhlpcl = "data";
     ${$stljtvxgmshw} = $adb->query(${$mzhfkmici});
     while (${${"GLOBALS"}["kxxnbbihik"]} = $adb->fetchByAssoc(${$rakhgqmsey})) {
         $wuctugbbuk = "availUser";
         ${"GLOBALS"}["dglkcz"] = "group";
         $pdkdlnmwh = "group";
         ${${"GLOBALS"}["dglkcz"]}["groupid"] = ${${"GLOBALS"}["kxxnbbihik"]}["groupid"];
         ${$wuctugbbuk}["group"][] = ${$pdkdlnmwh};
     }
     $viewer->assign("availUsers", ${${"GLOBALS"}["mrugtuu"]});
     ${$xngmezo} = VtUtils::getFieldsWithBlocksForModule(${${"GLOBALS"}["xuceoxb"]}, ${${"GLOBALS"}["fqawgodflt"]} == true ? true : false);
     if (${${"GLOBALS"}["oyjhbrdojleb"]} !== false) {
         ${"GLOBALS"}["tnvuuieutqe"] = "fields";
         reset(${${"GLOBALS"}["tnvuuieutqe"]});
         $jexjswdeqysq = "addField";
         ${${"GLOBALS"}["tbwjkww"]} = key(${${"GLOBALS"}["yxsjdkh"]});
         foreach (${${"GLOBALS"}["oyjhbrdojleb"]} as ${$jexjswdeqysq}) {
             $uwpklhsk = "fields";
             ${"GLOBALS"}["ouxgywsbfd"] = "addField";
             ${"GLOBALS"}["iiedjg"] = "firstKey";
             ${$uwpklhsk}[${${"GLOBALS"}["iiedjg"]}][] = ${${"GLOBALS"}["ouxgywsbfd"]};
         }
     }
     $viewer->assign("fields", ${${"GLOBALS"}["yefvtwdbtg"]});
     ${"GLOBALS"}["dbqfvyhyty"] = "script";
     $afbxguwxvx = "setter_blocks";
     $viewer->assign("fromFields", $this->getFromFields());
     ${${"GLOBALS"}["eifgrvstdko"]} = array();
     ${${"GLOBALS"}["qjntqv"]} = array();
     foreach (${${"GLOBALS"}["yxsjdkh"]} as ${${"GLOBALS"}["fsmvqyhawbr"]} => ${${"GLOBALS"}["esuxyxb"]}) {
         ${"GLOBALS"}["voyvrmu"] = "block";
         $hwxflshrpina = "field";
         foreach (${${"GLOBALS"}["voyvrmu"]} as ${${"GLOBALS"}["qvktopqw"]} => ${$hwxflshrpina}) {
             $bohdzzxeqtf = "blockId";
             ${"GLOBALS"}["cdrckm"] = "blockId";
             ${${"GLOBALS"}["axgtprtc"]} = !empty($field->block->id) ? $field->block->id : 0;
             ${"GLOBALS"}["ghimyenlsug"] = "setter_fields";
             if ($field->name == "eventstatus") {
                 if ($this->parameter["activityType"] == "Task") {
                     global $current_language;
                     $bfscdk = "language";
                     ${"GLOBALS"}["ejmqgpjwwyv"] = "language";
                     ${${"GLOBALS"}["ejmqgpjwwyv"]} = \Vtiger_Language_Handler::getModuleStringsFromFile(${${"GLOBALS"}["yddleyi"]}, "Calendar");
                     if (empty(${$bfscdk})) {
                         $nplkqgugw = "language";
                         ${$nplkqgugw} = \Vtiger_Language_Handler::getModuleStringsFromFile("en_us", "Calendar");
                     }
//.........这里部分代码省略.........
开发者ID:cin-system,项目名称:cinrepo,代码行数:101,代码来源:FieldSetter.php

示例10: send

 /**
  * Function sends mail
  */
 public function send()
 {
     $currentUserModel = Users_Record_Model::getCurrentUserModel();
     $rootDirectory = vglobal('root_directory');
     $mailer = Emails_Mailer_Model::getInstance();
     $mailer->IsHTML(true);
     $fromEmail = $this->getFromEmailAddress();
     $replyTo = $currentUserModel->get('email1');
     $userName = $currentUserModel->getName();
     // To eliminate the empty value of an array
     $toEmailInfo = array_filter($this->get('toemailinfo'));
     $toMailNamesList = array_filter($this->get('toMailNamesList'));
     foreach ($toMailNamesList as $id => $emailData) {
         foreach ($emailData as $key => $email) {
             if ($toEmailInfo[$id]) {
                 array_push($toEmailInfo[$id], $email['value']);
             }
         }
     }
     $emailsInfo = array();
     foreach ($toEmailInfo as $id => $emails) {
         foreach ($emails as $key => $value) {
             array_push($emailsInfo, $value);
         }
     }
     $toFieldData = array_diff(explode(',', $this->get('saved_toid')), $emailsInfo);
     $toEmailsData = array();
     $i = 1;
     foreach ($toFieldData as $value) {
         $toEmailInfo['to' . $i++] = array($value);
     }
     $attachments = $this->getAttachmentDetails();
     $status = false;
     // Merge Users module merge tags based on current user.
     $mergedDescription = getMergedDescription($this->get('description'), $currentUserModel->getId(), 'Users');
     foreach ($toEmailInfo as $id => $emails) {
         $mailer->reinitialize();
         $mailer->ConfigSenderInfo($fromEmail, $userName, $replyTo);
         $old_mod_strings = vglobal('mod_strings');
         $description = $this->get('description');
         $parentModule = $this->getEntityType($id);
         if ($parentModule) {
             $currentLanguage = Vtiger_Language_Handler::getLanguage();
             $moduleLanguageStrings = Vtiger_Language_Handler::getModuleStringsFromFile($currentLanguage, $parentModule);
             vglobal('mod_strings', $moduleLanguageStrings['languageStrings']);
             if ($parentModule != 'Users') {
                 // Apply merge for non-Users module merge tags.
                 $description = getMergedDescription($mergedDescription, $id, $parentModule);
             } else {
                 // Re-merge the description for user tags based on actual user.
                 $description = getMergedDescription($description, $id, 'Users');
                 vglobal('mod_strings', $old_mod_strings);
             }
         }
         if (strpos($description, '$logo$')) {
             $description = str_replace('$logo$', "<img src='cid:logo' />", $description);
             $logo = true;
         }
         foreach ($emails as $email) {
             $mailer->Body = $description;
             $mailer->Signature = str_replace(array('\\r\\n', '\\n'), '<br>', $currentUserModel->get('signature'));
             if ($mailer->Signature != '') {
                 $mailer->Body .= '<br><br>' . decode_html($mailer->Signature);
             }
             $mailer->Subject = $this->get('subject');
             $mailer->AddAddress($email);
             //Adding attachments to mail
             if (is_array($attachments)) {
                 foreach ($attachments as $attachment) {
                     $fileNameWithPath = $rootDirectory . $attachment['path'] . $attachment['fileid'] . "_" . $attachment['attachment'];
                     if (is_file($fileNameWithPath)) {
                         $mailer->AddAttachment($fileNameWithPath, $attachment['attachment']);
                     }
                 }
             }
             if ($logo) {
                 //While sending email template and which has '$logo$' then it should replace with company logo
                 $company = Settings_Vtiger_CompanyDetails_Model::getInstance();
                 $logo = $company->getLogoPath('logoname');
                 $mailer->AddEmbeddedImage(dirname(__FILE__) . '/../../../' . $logo, 'logo', 'logo.jpg', 'base64', 'image/jpg');
             }
             $ccs = array_filter(explode(',', $this->get('ccmail')));
             $bccs = array_filter(explode(',', $this->get('bccmail')));
             if (!empty($ccs)) {
                 foreach ($ccs as $cc) {
                     $mailer->AddCC($cc);
                 }
             }
             if (!empty($bccs)) {
                 foreach ($bccs as $bcc) {
                     $mailer->AddBCC($bcc);
                 }
             }
         }
         $status = $mailer->Send(true);
         if (!$status) {
             $status = $mailer->getError();
//.........这里部分代码省略.........
开发者ID:HoererUndFlamme,项目名称:YetiForceCRM,代码行数:101,代码来源:Record.php

示例11: process

 public function process(Vtiger_Request $request)
 {
     $adb = PearDatabase::getInstance();
     $cu_model = Users_Record_Model::getCurrentUserModel();
     switch ($request->get("handler")) {
         case "fill_lang":
             $module = addslashes($request->get("langmod"));
             $mod_lang_big = Vtiger_Language_Handler::getModuleStringsFromFile($cu_model->get('language'), $module);
             $mod_lang = $mod_lang_big['languageStrings'];
             unset($mod_lang_big);
             $module_lang_labels = array_flip($mod_lang);
             $module_lang_labels = array_flip($module_lang_labels);
             asort($module_lang_labels);
             $keys = implode('||', array_keys($module_lang_labels));
             $values = implode('||', $module_lang_labels);
             echo $keys . '|@|' . $values;
             break;
         case "confirm_portal":
             $module = addslashes($request->get("langmod"));
             $curr_templatename = $request->get("curr_templatename");
             $sql = "SELECT filename\n                FROM vtiger_pdfmaker\n                INNER JOIN vtiger_pdfmaker_settings USING(templateid)\n                WHERE is_portal=? AND module=?";
             $params = array("1", $module);
             $result = $adb->pquery($sql, $params);
             $confirm = "";
             if ($adb->num_rows($result) > 0) {
                 $templatename = $adb->query_result($result, 0, "filename");
                 $confirm = vtranslate("LBL_PDFMAKER_TEMPLATE", 'PDFMaker') . " '" . $templatename . "' " . vtranslate("LBL_REPLACED_PORTAL_TEMPLATE", 'PDFMaker') . " '" . $curr_templatename . "' " . vtranslate("LBL_AS_PORTAL_TEMPLATE", 'PDFMaker');
             } else {
                 $confirm = vtranslate("LBL_VTIGER_TEMPLATE", 'PDFMaker') . " " . vtranslate("LBL_REPLACED_PORTAL_TEMPLATE", 'PDFMaker') . " '" . $curr_templatename . "' " . vtranslate("LBL_AS_PORTAL_TEMPLATE", 'PDFMaker');
             }
             echo $confirm;
             break;
         case "templates_order":
             $inStr = $request->get("tmpl_order");
             $inStr = rtrim($inStr, "#");
             $inArr = explode("#", $inStr);
             $tmplArr = array();
             foreach ($inArr as $val) {
                 $valArr = explode("_", $val);
                 $tmplArr[$valArr[0]]["order"] = $valArr[1];
                 $tmplArr[$valArr[0]]["is_active"] = "1";
                 $tmplArr[$valArr[0]]["is_default"] = "0";
             }
             $sql = "SELECT templateid, userid, is_active, is_default, sequence\n                FROM vtiger_pdfmaker_userstatus\n                WHERE userid = ?";
             $result = $adb->pquery($sql, array($cu_model->getId()));
             while ($row = $adb->fetchByAssoc($result)) {
                 if (!isset($tmplArr[$row["templateid"]])) {
                     $tmplArr[$row["templateid"]]["order"] = $row["sequence"];
                 }
                 $tmplArr[$row["templateid"]]["is_active"] = $row["is_active"];
                 $tmplArr[$row["templateid"]]["is_default"] = $row["is_default"];
             }
             $adb->pquery("DELETE FROM vtiger_pdfmaker_userstatus WHERE userid=?", array($cu_model->getId()));
             $sqlA = "INSERT INTO vtiger_pdfmaker_userstatus(templateid, userid, is_active, is_default, sequence)\n                VALUES ";
             $sqlB = "";
             $params = array();
             foreach ($tmplArr as $templateid => $valArr) {
                 $sqlB .= "(?,?,?,?,?),";
                 $params[] = $templateid;
                 $params[] = $cu_model->getId();
                 $params[] = $valArr["is_active"];
                 $params[] = $valArr["is_default"];
                 $params[] = $valArr["order"];
             }
             $result = "error";
             if ($sqlB != "") {
                 $sqlB = rtrim($sqlB, ",");
                 $sql = $sqlA . $sqlB;
                 $adb->pquery($sql, $params);
                 $result = "ok";
             }
             echo $result;
             break;
         case "custom_labels_edit":
             $sql = "DELETE FROM vtiger_pdfmaker_label_vals WHERE label_id=? AND lang_id=?";
             $params = array($request->get("label_id"), $request->get("lang_id"));
             $adb->pquery($sql, $params);
             $sql = "INSERT INTO vtiger_pdfmaker_label_vals(label_id, lang_id, label_value) VALUES(?,?,?)";
             $params = array($request->get("label_id"), $request->get("lang_id"), $request->get("label_value"));
             $adb->pquery($sql, $params);
             break;
         case "fill_relblocks":
             $module = addslashes($request->get("selmod"));
             $PDFMaker = new PDFMaker_PDFMaker_Model();
             $Related_Blocks = $PDFMaker->GetRelatedBlocks($module);
             $keys = implode('||', array_keys($Related_Blocks));
             $values = implode('||', $Related_Blocks);
             echo $keys . '|@|' . $values;
             break;
         case "fill_module_product_fields":
             $module = addslashes($request->get("productmod"));
             $PDFMaker = new PDFMaker_PDFMaker_Model();
             $Product_Block_Fields = $PDFMaker->GetProductBlockFields($module);
             $keys = implode('||', array_keys($Product_Block_Fields["SELECT_PRODUCT_FIELD"]));
             $values = implode('||', $Product_Block_Fields["SELECT_PRODUCT_FIELD"]);
             echo $keys . '|@|' . $values;
             break;
         case "get_relblock":
             $record = addslashes($request->get("relblockid"));
             $sql = "SELECT * FROM vtiger_pdfmaker_relblocks WHERE relblockid = ?";
//.........这里部分代码省略.........
开发者ID:cin-system,项目名称:cinrepo,代码行数:101,代码来源:AjaxRequestHandle.php

示例12: process


//.........这里部分代码省略.........
        } elseif ($request->get('record') != '') {
            $Records = array($request->get("record"));
        } elseif ($request->get('return_id') != '') {
            $Records = array($request->get("return_id"));
        }
        $viewer->assign("RECORDS", implode(';', $Records));
        // get selected templates id array
        $commontemplateids = trim($request->get("commontemplateid"), ";");
        $Templateids = explode(";", $commontemplateids);
        $viewer->assign("COMMONTEMPLATEIDS", $commontemplateids);
        // get selected templates array
        $sql = "SELECT * FROM vtiger_pdfmaker WHERE templateid IN (" . generateQuestionMarks($Templateids) . ")";
        $result = $adb->pquery($sql, $Templateids);
        $num_rows = $adb->num_rows($result);
        $template_select = '';
        if ($num_rows > 1) {
            $template_select .= "<select onChange='changeTemplate(this.value);'>";
            while ($row = $adb->fetchByAssoc($result)) {
                if ($st == "") {
                    $st = $row['templateid'];
                }
                $template_select .= "<option value='" . $row['templateid'] . "'>" . $row['filename'] . "</option>";
            }
            $template_select .= "</select>";
        } else {
            $st = $adb->query_result($result, 0, "templateid");
            $template_select .= $adb->query_result($result, 0, "filename");
        }
        $viewer->assign("TEMPLATE_SELECT", $template_select);
        $viewer->assign("ST", $st);
        // get content of templates
        $PDFMaker = new PDFMaker_PDFMaker_Model('PDFMaker');
        $PDFContents = array();
        //require_once("modules/PDFMaker/InventoryPDF.php");
        foreach ($Records as $record) {
            $record_model = Vtiger_Record_Model::getInstanceById($record);
            $focus = $record_model->entity;
            foreach ($Templateids as $templateid) {
                $PDFContent = new PDFMaker_PDFContent_Model($templateid, $relmodule, $focus, $request->get("language"));
                $pdf_content = $PDFContent->getContent();
                $body_html = $pdf_content["body"];
                $body_html = str_replace("#LISTVIEWBLOCK_START#", "", $body_html);
                $body_html = str_replace("#LISTVIEWBLOCK_END#", "", $body_html);
                $PDFContents[$templateid]["header"] = $pdf_content["header"];
                $PDFContents[$templateid]["body"] = $body_html;
                $PDFContents[$templateid]["footer"] = $pdf_content["footer"];
            }
        }
        $pdf_divs = '';
        foreach ($PDFContents as $templateid => $templatedata) {
            $sections = array("body", "header", "footer");
            foreach ($sections as $val) {
                if ($templatedata[$val] != "") {
                    /*
                    $html = str_get_html($templatedata[$val]);
                    
                    $textTags = $html->find('text');
                    foreach ($textTags as $text) {
                        $text->outertext = str_replace("  ", "&nbsp;&nbsp;", $text->outertext);
                        $text->outertext = str_replace("&nbsp; ", "&nbsp;&nbsp;", $text->outertext);
                    }
                    $templatedata[$val] = htmlentities($html->save(), ENT_QUOTES, $default_charset);
                    */
                    $templatedata[$val] = htmlentities($templatedata[$val], ENT_QUOTES, $default_charset);
                }
            }
            $pdf_divs .= '<div style="display:none;" id="body_div' . $templateid . '"> 
		         <textarea name="body' . $templateid . '" id="body' . $templateid . '" style="width:90%;height:700px" class=small tabindex="5">' . $templatedata["body"] . '</textarea>
		       </div>
		
		       <div style="display:none;" id="header_div' . $templateid . '"> 
		         <textarea name="header' . $templateid . '" id="header' . $templateid . '" style="width:90%;height:700px" class=small tabindex="5">' . $templatedata["header"] . '</textarea>
		       </div>
		 
		       <div style="display:none;" id="footer_div' . $templateid . '"> 
		         <textarea name="footer' . $templateid . '" id="footer' . $templateid . '" style="width:90%;height:700px" class=small tabindex="5">' . $templatedata["footer"] . '</textarea>
		       </div>';
            $pdf_divs .= '<script type="text/javascript">
                            jQuery(document).ready(function(){
		          	CKEDITOR.replace( \'body' . $templateid . '\', {height: \'300\'});
                                CKEDITOR.replace( \'header' . $templateid . '\', {height: \'300\'});
                                CKEDITOR.replace( \'footer' . $templateid . '\', {height: \'300\'});
                                })
		         </script>';
        }
        $viewer->assign("PDF_DIVS", $pdf_divs);
        $language = Vtiger_Language_Handler::getLanguage();
        $mod_strings = Vtiger_Language_Handler::getModuleStringsFromFile($language, "Documents");
        $pdf_strings = Vtiger_Language_Handler::getModuleStringsFromFile($language, "PDFMaker");
        $sql = "select foldername,folderid from vtiger_attachmentsfolder order by foldername";
        $res = $adb->pquery($sql, array());
        $options = "";
        for ($i = 0; $i < $adb->num_rows($res); $i++) {
            $fid = $adb->query_result($res, $i, "folderid");
            $fldr_name = $adb->query_result($res, $i, "foldername");
            $options .= '<option value="' . $fid . '">' . $fldr_name . '</option>';
        }
        $viewer->assign("FOLDER_OPTIONS", $options);
        $viewer->view('EditAndExport.tpl', 'PDFMaker');
    }
开发者ID:cin-system,项目名称:cinrepo,代码行数:101,代码来源:EditAndExport.php

示例13: getFieldsWithBlocksForModule

 public static function getFieldsWithBlocksForModule($module_name, $references = false, $refTemplate = "([source]: ([module]) [destination])")
 {
     global $current_language, $adb, $app_strings;
     \Vtiger_Cache::$cacheEnable = false;
     $start = microtime(true);
     if (empty($refTemplate) && $references == true) {
         $refTemplate = "([source]: ([module]) [destination])";
     }
     //////echo 'C'.__LINE__.': '.round(microtime(true) - $start, 2).'<br/>';
     // Fields in this module
     include_once "vtlib/Vtiger/Module.php";
     #$alle = glob(dirname(__FILE__).'/functions/*.inc.php');
     #foreach($alle as $datei) { include $datei;		 }
     $module = $module_name;
     $instance = Vtiger_Module::getInstance($module);
     $blocks = Vtiger_Block::getAllForModule($instance);
     ////echo 'C'.__LINE__.': '.round(microtime(true) - $start, 2).'<br/>';
     if ($module != "Events") {
         $langModule = $module;
     } else {
         $langModule = "Calendar";
     }
     $modLang = return_module_language($current_language, $langModule);
     //echo 'C'.__LINE__.': '.round(microtime(true) - $start, 2).'<br/>';
     $moduleFields = array();
     $addReferences = array();
     if (is_array($blocks)) {
         foreach ($blocks as $block) {
             $fields = Vtiger_Field::getAllForBlock($block, $instance);
             //echo 'C'.__LINE__.': '.round(microtime(true) - $start, 2).'<br/>';
             if (empty($fields) || !is_array($fields)) {
                 continue;
             }
             foreach ($fields as $field) {
                 $field->label = getTranslatedString($field->label, $langModule);
                 $field->type = new StdClass();
                 $field->type->name = self::getFieldTypeName($field->uitype);
                 if ($field->type->name == 'picklist') {
                     $language = \Vtiger_Language_Handler::getModuleStringsFromFile($current_language, $field->block->module->name);
                     if (empty($language)) {
                         $language = \Vtiger_Language_Handler::getModuleStringsFromFile('en_us', $field->block->module->name);
                     }
                     switch ($field->name) {
                         case 'hdnTaxType':
                             $field->type->picklistValues = array('group' => 'Group', 'individual' => 'Individual');
                             break;
                         case 'email_flag':
                             $field->type->picklistValues = array('SAVED' => 'SAVED', 'SENT' => 'SENT', 'MAILSCANNER' => 'MAILSCANNER');
                             break;
                         case 'currency_id':
                             $field->type->picklistValues = array();
                             $currencies = getAllCurrencies();
                             foreach ($currencies as $currencies) {
                                 $field->type->picklistValues[$currencies['currency_id']] = $currencies['currencylabel'];
                             }
                             break;
                         default:
                             $field->type->picklistValues = getAllPickListValues($field->name, $language['languageStrings']);
                             break;
                     }
                 }
                 if (in_array($field->uitype, self::$referenceUitypes)) {
                     $modules = self::getModuleForReference($field->block->module->id, $field->name, $field->uitype);
                     $field->type->refersTo = $modules;
                 }
                 if ($references !== false) {
                     switch ($field->uitype) {
                         case "51":
                             $addReferences[] = array($field, "Accounts");
                             break;
                         case "52":
                             $addReferences[] = array($field, "Users");
                             break;
                         case "53":
                             $addReferences[] = array($field, "Users");
                             break;
                         case "57":
                             $addReferences[] = array($field, "Contacts");
                             break;
                         case "58":
                             $addReferences[] = array($field, "Campaigns");
                             break;
                         case "59":
                             $addReferences[] = array($field, "Products");
                             break;
                         case "73":
                             $addReferences[] = array($field, "Accounts");
                             break;
                         case "75":
                             $addReferences[] = array($field, "Vendors");
                             break;
                         case "81":
                             $addReferences[] = array($field, "Vendors");
                             break;
                         case "76":
                             $addReferences[] = array($field, "Potentials");
                             break;
                         case "78":
                             $addReferences[] = array($field, "Quotes");
                             break;
//.........这里部分代码省略.........
开发者ID:Neodracir,项目名称:VtigerCRM-Tools,代码行数:101,代码来源:VtUtils.php

示例14: process

 function process(Vtiger_Request $request)
 {
     Vtiger_Session::init();
     // Better place this here as session get initiated
     //skipping the csrf checking for the forgot(reset) password
     if ($request->get('mode') != 'reset' && $request->get('action') != 'Login') {
         require_once 'libraries/csrf-magic/csrf-magic.php';
     }
     // TODO - Get rid of global variable $current_user
     // common utils api called, depend on this variable right now
     $currentUser = $this->getLogin();
     vglobal('current_user', $currentUser);
     global $default_language;
     vglobal('default_language', $default_language);
     $currentLanguage = Vtiger_Language_Handler::getLanguage();
     vglobal('current_language', $currentLanguage);
     $module = $request->getModule();
     $qualifiedModuleName = $request->getModule(false);
     if ($currentUser && $qualifiedModuleName) {
         $moduleLanguageStrings = Vtiger_Language_Handler::getModuleStringsFromFile($currentLanguage, $qualifiedModuleName);
         vglobal('mod_strings', $moduleLanguageStrings['languageStrings']);
     }
     if ($currentUser) {
         $moduleLanguageStrings = Vtiger_Language_Handler::getModuleStringsFromFile($currentLanguage);
         vglobal('app_strings', $moduleLanguageStrings['languageStrings']);
     }
     $view = $request->get('view');
     $action = $request->get('action');
     $response = false;
     try {
         if ($this->isInstalled() === false && $module != 'Install') {
             header('Location:index.php?module=Install&view=Index');
             exit;
         }
         if (empty($module)) {
             if ($this->hasLogin()) {
                 $defaultModule = vglobal('default_module');
                 if (!empty($defaultModule) && $defaultModule != 'Home') {
                     $module = $defaultModule;
                     $qualifiedModuleName = $defaultModule;
                     $view = 'List';
                     if ($module == 'Calendar') {
                         // To load MyCalendar instead of list view for calendar
                         //TODO: see if it has to enhanced and get the default view from module model
                         $view = 'Calendar';
                     }
                 } else {
                     $module = 'Home';
                     $qualifiedModuleName = 'Home';
                     $view = 'DashBoard';
                 }
             } else {
                 $module = 'Users';
                 $qualifiedModuleName = 'Settings:Users';
                 $view = 'Login';
             }
             $request->set('module', $module);
             $request->set('view', $view);
         }
         if (!empty($action)) {
             $componentType = 'Action';
             $componentName = $action;
         } else {
             $componentType = 'View';
             if (empty($view)) {
                 $view = 'Index';
             }
             $componentName = $view;
         }
         $handlerClass = Vtiger_Loader::getComponentClassName($componentType, $componentName, $qualifiedModuleName);
         $handler = new $handlerClass();
         if ($handler) {
             vglobal('currentModule', $module);
             // Ensure handler validates the request
             $handler->validateRequest($request);
             if ($handler->loginRequired()) {
                 $this->checkLogin($request);
             }
             //TODO : Need to review the design as there can potential security threat
             $skipList = array('Users', 'Home', 'CustomView', 'Import', 'Export', 'Inventory', 'Vtiger', 'PriceBooks', 'Migration', 'Install');
             if (!in_array($module, $skipList) && stripos($qualifiedModuleName, 'Settings') === false) {
                 $this->triggerCheckPermission($handler, $request);
             }
             // Every settings page handler should implement this method
             if (stripos($qualifiedModuleName, 'Settings') === 0 || $module == 'Users') {
                 $handler->checkPermission($request);
             }
             $notPermittedModules = array('ModComments', 'Integration', 'DashBoard');
             if (in_array($module, $notPermittedModules) && $view == 'List') {
                 header('Location:index.php?module=Home&view=DashBoard');
             }
             $this->triggerPreProcess($handler, $request);
             /** EventHandler START */
             list($handler, $request) = EventHandler_Module_Model::do_filter(array("vtiger.filter.process." . strtolower($module . '.' . $componentName . "." . $componentType) . ".before", "vtiger.filter.process." . strtolower($componentName . "." . $componentType) . ".before"), array($handler, $request));
             /** EventHandler ENDE */
             $response = $handler->process($request);
             /** EventHandler START */
             list($handler, $request) = EventHandler_Module_Model::do_filter(array("vtiger.filter.process." . strtolower($module . '.' . $componentName . "." . $componentType) . ".after", "vtiger.filter.process." . strtolower($componentName . "." . $componentType) . ".after"), array($handler, $request));
             /** EventHandler ENDE */
             $this->triggerPostProcess($handler, $request);
//.........这里部分代码省略.........
开发者ID:Wasage,项目名称:werpa,代码行数:101,代码来源:WebUI.php

示例15: process

 function process(Vtiger_Request $request)
 {
     vglobal('log', LoggerManager::getLogger('System'));
     Vtiger_Session::init();
     $forceSSL = vglobal('forceSSL');
     if ($forceSSL && !Vtiger_Functions::getBrowserInfo()->https) {
         header("Location: https://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}");
     }
     // Better place this here as session get initiated
     //skipping the csrf checking for the forgot(reset) password
     $csrfProtection = vglobal('csrfProtection');
     if ($csrfProtection) {
         if ($request->get('mode') != 'reset' && $request->get('action') != 'Login') {
             require_once 'libraries/csrf-magic/csrf-magic.php';
         }
         require_once 'config/csrf_config.php';
     }
     // TODO - Get rid of global variable $current_user
     // common utils api called, depend on this variable right now
     $currentUser = $this->getLogin();
     vglobal('current_user', $currentUser);
     $currentLanguage = Vtiger_Language_Handler::getLanguage();
     vglobal('current_language', $currentLanguage);
     $module = $request->getModule();
     $qualifiedModuleName = $request->getModule(false);
     if ($currentUser && $qualifiedModuleName) {
         $moduleLanguageStrings = Vtiger_Language_Handler::getModuleStringsFromFile($currentLanguage, $qualifiedModuleName);
         vglobal('mod_strings', $moduleLanguageStrings['languageStrings']);
     }
     if ($currentUser) {
         $moduleLanguageStrings = Vtiger_Language_Handler::getModuleStringsFromFile($currentLanguage);
         vglobal('app_strings', $moduleLanguageStrings['languageStrings']);
     }
     $view = $request->get('view');
     $action = $request->get('action');
     $response = false;
     try {
         if ($this->isInstalled() === false && $module != 'Install') {
             header('Location:install/Install.php');
             exit;
         }
         if (empty($module)) {
             if ($this->hasLogin()) {
                 $defaultModule = vglobal('default_module');
                 if (!empty($defaultModule) && $defaultModule != 'Home') {
                     $module = $defaultModule;
                     $qualifiedModuleName = $defaultModule;
                     $view = 'List';
                     if ($module == 'Calendar') {
                         // To load MyCalendar instead of list view for calendar
                         //TODO: see if it has to enhanced and get the default view from module model
                         $view = 'Calendar';
                     }
                 } else {
                     $module = 'Home';
                     $qualifiedModuleName = 'Home';
                     $view = 'DashBoard';
                 }
             } else {
                 $module = 'Users';
                 $qualifiedModuleName = 'Settings:Users';
                 $view = 'Login';
             }
             $request->set('module', $module);
             $request->set('view', $view);
         }
         if (!empty($action)) {
             $componentType = 'Action';
             $componentName = $action;
         } else {
             $componentType = 'View';
             if (empty($view)) {
                 $view = 'Index';
             }
             $componentName = $view;
         }
         $handlerClass = Vtiger_Loader::getComponentClassName($componentType, $componentName, $qualifiedModuleName);
         $handler = new $handlerClass();
         if ($handler) {
             vglobal('currentModule', $module);
             $csrfProtection = vglobal('csrfProtection');
             if ($csrfProtection) {
                 // Ensure handler validates the request
                 $handler->validateRequest($request);
             }
             if ($handler->loginRequired()) {
                 $this->checkLogin($request);
             }
             //TODO : Need to review the design as there can potential security threat
             $skipList = array('Users', 'Home', 'CustomView', 'Import', 'Export', 'Inventory', 'Vtiger', 'PriceBooks', 'Migration', 'Install');
             if (!in_array($module, $skipList) && stripos($qualifiedModuleName, 'Settings') === false) {
                 $this->triggerCheckPermission($handler, $request);
             }
             // Every settings page handler should implement this method
             if (stripos($qualifiedModuleName, 'Settings') === 0 || $module == 'Users') {
                 $handler->checkPermission($request);
             }
             $notPermittedModules = array('ModComments', 'Integration', 'DashBoard');
             if (in_array($module, $notPermittedModules) && $view == 'List') {
                 header('Location:index.php?module=Home&view=DashBoard');
//.........这里部分代码省略.........
开发者ID:awflu,项目名称:YetiForceCRM,代码行数:101,代码来源:WebUI.php


注:本文中的Vtiger_Language_Handler::getModuleStringsFromFile方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。