将新模块导入Vtiger 6.0.0Beta时出错


Getting error while importing a new module to Vtiger 6.0.0Beta

我创建了一个模块,只是为了使用以下教程打印消息:

http://www.zbeanztech.com/blog/create-simple-module-vtiger-crm

我将语言文件的内容更改为数组格式。它能够导入模块并在 Vtiger 5.4.0 中运行良好。但是当我尝试在Vtiger 6.0.0Beta中安装它时,它引发了错误:

"为模块导入提供的文件无效!再试一次。

有人解决了同样的问题吗?

我不知道

你用的是什么代码。因此,使用此代码创建一个新模块。希望这对您有所帮助。

<?php
$Vtiger_Utils_Log = true;
include_once 'vtlib/Vtiger/Module.php';
$myExtensionModule = Vtiger_Module::getInstance('MyExtension');
if ($myExtensionModule) {
Vtiger_Utils::Log("Module already exits.");
} else {
$myExtensionModule = new Vtiger_Module();
$myExtensionModule->name = 'MyExtension';
$myExtensionModule->label= 'My Extension';
$myExtensionModule->parent='Tools';
$myExtensionModule->save();
}
?>

并在vtigercrm/modules/MyExtension/MyExtension的位置创建一个文件.php

使用以下代码

<?php
/** License Text Here **/
class MyExtension {
/**
 * Invoked when special actions are performed on the module.
 * @param String Module name
 * @param String Event Type (module.postinstall, module.disabled, module.enabled, module.preuninstall)
 */
function vtlib_handler($modulename, $event_type) {
    if($event_type == 'module.postinstall') {
        // TODO Handle post installation actions
    } else if($event_type == 'module.disabled') {
        // TODO Handle actions when this module is disabled.
    } else if($event_type == 'module.enabled') {
        // TODO Handle actions when this module is enabled.
    } else if($event_type == 'module.preuninstall') {
        // TODO Handle actions when this module is about to be deleted.
    } else if($event_type == 'module.preupdate') {
        // TODO Handle actions before this module is updated.
    } else if($event_type == 'module.postupdate') {
        // TODO Handle actions after this module is updated.
    }
}
}
?>

在此处添加代码 vtigercrm/modules/MyExtension/language/en_us.lang.php

<?php
/** License Text Here **/
$mod_strings = array(
'My Extension'=> 'My Extension'
);

vtigercrm/vtiger6/modules/MyExtension/views/List.php

<?php
/** License Text Here **/
class MyExtension_List_View extends Vtiger_Index_View {
public function process(Vtiger_Request $request) {
    $viewer = $this->getViewer($request);
    $viewer->view('Index.tpl', $request->getModule());
}
}
?>

vtigercrm/vtiger6/layouts/default/modules/MyExtension/IndexViewPreProcess.tpl

{include file="Header.tpl"|vtemplate_path:$MODULE}
{include file="BasicHeader.tpl"|vtemplate_path:$MODULE}
<div class="bodyContents">
<div class="mainContainer row-fluid">
    <div class="contentsDiv span12">

vtigercrm/vtiger6/layouts/default/modules/MyExtension/Index.tpl

<h2>{$MODULE} module <small>working now.</small></h2>

vtigercrm/vtiger6/languages/en_us/MyExtension.php

<?php
/** License Text Here **/
$languageStrings = array(  
'My Extension' => 'My Extension'
);