<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Step8CreatingModuleFiles</title><link>https://sourceforge.net/p/vteddy/wiki/Step8CreatingModuleFiles/</link><description>Recent changes to Step8CreatingModuleFiles</description><atom:link href="https://sourceforge.net/p/vteddy/wiki/Step8CreatingModuleFiles/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 06 Feb 2015 16:18:28 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/vteddy/wiki/Step8CreatingModuleFiles/feed" rel="self" type="application/rss+xml"/><item><title>Step8CreatingModuleFiles modified by Federico</title><link>https://sourceforge.net/p/vteddy/wiki/Step8CreatingModuleFiles/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -18,7 +18,7 @@
     g. Update $default_order_by, $default_sort_order
     h. Update $required_fields
     i. Update $customFieldTable
-    j. Rename function ModuleClass to function &amp;lt;NewModuleName&amp;gt; [This is the Constructor Class]
+    j. Rename function ModuleClass to function &amp;lt;NewModuleName&amp;gt; (This is the Constructor Class)

 *NOTE: Other files under modules/&amp;lt;NewModuleName&amp;gt; need not be changed.*

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Federico</dc:creator><pubDate>Fri, 06 Feb 2015 16:18:28 -0000</pubDate><guid>https://sourceforge.net51473dc99772e9529dd6881891062af951040ceb</guid></item><item><title>Step8CreatingModuleFiles modified by Federico</title><link>https://sourceforge.net/p/vteddy/wiki/Step8CreatingModuleFiles/</link><description>&lt;div class="markdown_content"&gt;&lt;h4 id="step-8-creating-module-files-frontend"&gt;Step 8: Creating module files (Frontend)&lt;/h4&gt;
&lt;p&gt;Each new module should have a directory under modules/folder. To help speed up the module code creation, vtlib comes bundled with skeleton module structure based on the 'InstalledBase' module. This code is include in vtlib/ModuleDir folder which can be used as a template for new module that is created. It contains source files that needs to be changed as explained below.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;NOTE: ModuleDir has sub-directories specific to vteddy version, please make sure to use the right one.&lt;/em&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Copy ModuleDir/&amp;lt;target_vtiger_version&amp;gt; contents to newly created modules/&amp;lt;NewModuleName&amp;gt; folder.&lt;/li&gt;
&lt;li&gt;Rename &amp;lt;NewModuleName&amp;gt;/ModuleFile.php as &amp;lt;NewModuleName&amp;gt;/&amp;lt;NewModuleName&amp;gt;.php (as noted in the table below)&lt;/li&gt;
&lt;li&gt;Rename &amp;lt;NewModuleName&amp;gt;/ModuleFileAjax.php as &amp;lt;NewModuleName&amp;gt;/&amp;lt;NewModuleName&amp;gt;Ajax.php&lt;/li&gt;
&lt;li&gt;Rename &amp;lt;NewModuleName&amp;gt;/ModuleFile.js to &amp;lt;NewModuleName&amp;gt;/&amp;lt;NewModuleName&amp;gt;.js&lt;/li&gt;
&lt;li&gt;Edit &amp;lt;NewModuleName&amp;gt;/&amp;lt;NewModuleName&amp;gt;.php&lt;br /&gt;
    a. Rename Class ModuleClass to &amp;lt;NewModuleName&amp;gt;&lt;br /&gt;
    b. Update $table_name and $table_index (Module table name and table index column)&lt;br /&gt;
    c. Update $groupTable&lt;br /&gt;
    d. Update $tab_name, $tab_name_index&lt;br /&gt;
    e. Update $list_fields, $list_fields_name, $sortby_fields, $list_link_field&lt;br /&gt;
    f. Update $detailview_links&lt;br /&gt;
    g. Update $default_order_by, $default_sort_order&lt;br /&gt;
    h. Update $required_fields&lt;br /&gt;
    i. Update $customFieldTable&lt;br /&gt;
    j. Rename function ModuleClass to function &amp;lt;NewModuleName&amp;gt; &lt;span&gt;[This is the Constructor Class]&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;em&gt;NOTE: Other files under modules/&amp;lt;NewModuleName&amp;gt; need not be changed.&lt;/em&gt;&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Example ModuleDir&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;th&gt;File under Payslip&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ModuleFile.php&lt;/td&gt;
&lt;td&gt;Module class definition file.&lt;/td&gt;
&lt;td&gt;Payslip.php&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ModuleFileAjax.php&lt;/td&gt;
&lt;td&gt;Base file for ajax actions used under Listview etc...&lt;/td&gt;
&lt;td&gt;PayslipAjax.php&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ModuleFile.js&lt;/td&gt;
&lt;td&gt;Module specific javascript function can be written here&lt;/td&gt;
&lt;td&gt;Payslip.js&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CallRelatedList.php&lt;/td&gt;
&lt;td&gt;More Information Detail view handler&lt;/td&gt;
&lt;td&gt;CallRelatedList.php&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DetailViewAjax.php&lt;/td&gt;
&lt;td&gt;Detail view ajax edit handler&lt;/td&gt;
&lt;td&gt;DetailViewAjax.php&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EditView.php&lt;/td&gt;
&lt;td&gt;Edit view handler&lt;/td&gt;
&lt;td&gt;EditView.php&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Save.php&lt;/td&gt;
&lt;td&gt;Module record save handler&lt;/td&gt;
&lt;td&gt;Save.php&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Federico</dc:creator><pubDate>Fri, 06 Feb 2015 16:18:05 -0000</pubDate><guid>https://sourceforge.net6d160d011949c3fef2e623e3570d7d4ab365bb03</guid></item></channel></rss>