Conditions | 4 |
Paths | 4 |
Total Lines | 79 |
Code Lines | 66 |
Lines | 0 |
Ratio | 0 % |
Changes | 2 | ||
Bugs | 0 | Features | 0 |
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
1 | <?php |
||
12 | public static function importModule() |
||
13 | { |
||
14 | $ret = []; |
||
15 | $moduleName = Request::getString('moduleName', 'newModule', 'POST'); |
||
16 | $moduleNewName = Request::getString('moduleNewName', $moduleName, 'POST'); |
||
17 | $moduleDirname = \preg_replace('/[^a-zA-Z0-9]\s+/', '', \mb_strtolower($moduleNewName)); |
||
18 | if ('' === $moduleDirname) { |
||
19 | $ret['result'] = false; |
||
20 | $ret['error'] = \_AM_MODULEBUILDER_ERROR_MNAME; |
||
21 | return $ret; |
||
22 | } |
||
23 | |||
24 | $helper = Helper::getInstance(); |
||
25 | $modulesHandler = $helper->getHandler('Modules'); |
||
26 | $newModuleObj = $modulesHandler->create(); |
||
27 | |||
28 | $newModuleObj->setVar('mod_name', $moduleNewName); |
||
29 | $newModuleObj->setVar('mod_release', date('Y-m-d')); |
||
30 | $newModuleObj->setVar('mod_dirname', $moduleDirname); |
||
31 | |||
32 | $newModuleObj->setVar('mod_version', $helper->getConfig('version')); //$GLOBALS['xoopsModuleConfig']['version']); |
||
33 | |||
34 | $newModuleObj->setVar('mod_since', $helper->getConfig('since')); |
||
35 | $newModuleObj->setVar('mod_min_php', $helper->getConfig('min_php')); |
||
36 | $newModuleObj->setVar('mod_min_xoops', $helper->getConfig('min_xoops')); |
||
37 | $newModuleObj->setVar('mod_min_admin', $helper->getConfig('min_admin')); |
||
38 | $newModuleObj->setVar('mod_min_mysql', $helper->getConfig('min_mysql')); |
||
39 | |||
40 | $newModuleObj->setVar('mod_description', $helper->getConfig('description')); |
||
41 | $newModuleObj->setVar('mod_author', $helper->getConfig('author')); |
||
42 | $newModuleObj->setVar('mod_author_mail', $helper->getConfig('author_email')); |
||
43 | $newModuleObj->setVar('mod_author_website_url', $helper->getConfig('author_website_url')); |
||
44 | $newModuleObj->setVar('mod_author_website_name', $helper->getConfig('author_website_name')); |
||
45 | $newModuleObj->setVar('mod_credits', $helper->getConfig('credits')); |
||
46 | $newModuleObj->setVar('mod_license', $helper->getConfig('license')); |
||
47 | $newModuleObj->setVar('mod_display_admin', $helper->getConfig('display_admin')); |
||
48 | $newModuleObj->setVar('mod_display_user', $helper->getConfig('display_user')); |
||
49 | $newModuleObj->setVar('mod_active_search', $helper->getConfig('active_search')); |
||
50 | $newModuleObj->setVar('mod_active_comments', $helper->getConfig('active_comments')); |
||
51 | $newModuleObj->setVar('mod_release_info', $helper->getConfig('release_info')); |
||
52 | $newModuleObj->setVar('mod_release_file', $helper->getConfig('release_file')); |
||
53 | $newModuleObj->setVar('mod_manual', $helper->getConfig('manual')); |
||
54 | $newModuleObj->setVar('mod_manual_file', $helper->getConfig('manual_file')); |
||
55 | $newModuleObj->setVar('mod_image', 'empty.png'); |
||
56 | $newModuleObj->setVar('mod_demo_site_url', $helper->getConfig('demo_site_url')); |
||
57 | $newModuleObj->setVar('mod_demo_site_name', $helper->getConfig('demo_site_name')); |
||
58 | $newModuleObj->setVar('mod_support_url', $helper->getConfig('support_url')); |
||
59 | $newModuleObj->setVar('mod_support_name', $helper->getConfig('support_name')); |
||
60 | $newModuleObj->setVar('mod_website_url', $helper->getConfig('website_url')); |
||
61 | $newModuleObj->setVar('mod_website_name', $helper->getConfig('website_name')); |
||
62 | $newModuleObj->setVar('mod_status', $helper->getConfig('status')); |
||
63 | |||
64 | $newModuleObj->setVar('mod_admin', $helper->getConfig('display_admin')); |
||
65 | $newModuleObj->setVar('mod_user', $helper->getConfig('display_user')); |
||
66 | $newModuleObj->setVar('mod_search', $helper->getConfig('active_search')); |
||
67 | $newModuleObj->setVar('mod_comments', $helper->getConfig('active_comments')); |
||
68 | $newModuleObj->setVar('mod_notifications', $helper->getConfig('active_notifications')); |
||
69 | $newModuleObj->setVar('mod_permissions', $helper->getConfig('active_permissions')); |
||
70 | $newModuleObj->setVar('mod_donations', $helper->getConfig('donations')); |
||
71 | $newModuleObj->setVar('mod_subversion', $helper->getConfig('subversion')); |
||
72 | |||
73 | if ($modulesHandler->insert($newModuleObj)) { |
||
74 | // get the ID of the new module |
||
75 | $criteria = new \Criteria('mod_name', $moduleNewName); |
||
76 | $moduleObject = $modulesHandler->getObjects($criteria, false, true); |
||
77 | $moduleId = $moduleObject[0]->getVar('mod_id'); |
||
78 | $tables = self::importTables($moduleId, $moduleName); |
||
79 | if (false === $tables ) { |
||
|
|||
80 | $ret['result'] = false; |
||
81 | $ret['error'] = \_AM_MODULEBUILDER_ERROR_IMPTABLES; |
||
82 | } else { |
||
83 | $ret['result'] = true; |
||
84 | $ret['tables'] = $tables; |
||
85 | } |
||
86 | } else { |
||
87 | $ret['result'] = false; |
||
88 | $ret['error'] = \_AM_MODULEBUILDER_ERROR_MCREATE . $GLOBALS['xoopsDB']->error(); |
||
89 | } |
||
90 | return $ret; |
||
91 | } |
||
308 |