| Conditions | 9 |
| Paths | 16 |
| Total Lines | 125 |
| Code Lines | 80 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 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 namespace XoopsModules\Tdmcreate\Files\Blocks; |
||
| 79 | private function getBlocksShow($moduleDirname, $tableName, $tableFieldname, $fields, $fieldId, $fieldParent = 0) |
||
| 80 | { |
||
| 81 | $stuModuleDirname = mb_strtoupper($moduleDirname); |
||
| 82 | $ucfModuleDirname = ucfirst($moduleDirname); |
||
| 83 | $ret = <<<EOT |
||
| 84 | include_once XOOPS_ROOT_PATH.'/modules/{$moduleDirname}/include/common.php'; |
||
| 85 | // Function show block |
||
| 86 | function b_{$moduleDirname}_{$tableName}_show(\$options) |
||
| 87 | { |
||
| 88 | include_once XOOPS_ROOT_PATH.'/modules/{$moduleDirname}/class/{$tableName}.php'; |
||
| 89 | \$myts = MyTextSanitizer::getInstance(); |
||
| 90 | \$GLOBALS['xoopsTpl']->assign('{$moduleDirname}_upload_url', {$stuModuleDirname}_UPLOAD_URL); |
||
| 91 | \$block = array(); |
||
| 92 | \$typeBlock = \$options[0]; |
||
| 93 | \$limit = \$options[1]; |
||
| 94 | \$lenghtTitle = \$options[2]; |
||
| 95 | \${$moduleDirname} = {$ucfModuleDirname}Helper::getInstance(); |
||
| 96 | \${$tableName}Handler = \${$moduleDirname}->getHandler('{$tableName}'); |
||
| 97 | \$criteria = new \CriteriaCompo(); |
||
| 98 | array_shift(\$options); |
||
| 99 | array_shift(\$options); |
||
| 100 | array_shift(\$options);\n |
||
| 101 | EOT; |
||
| 102 | if (1 == $fieldParent) { |
||
| 103 | $ret .= <<<EOT |
||
| 104 | \${$tableName} = {$moduleDirname}_getMyItemIds('{$moduleDirname}_view', '{$moduleDirname}'); |
||
| 105 | \$criteria->add(new \Criteria('cid', '(' . implode(',', \${$tableName}) . ')','IN')); |
||
| 106 | if (1 != (count(\$options) && 0 == \$options[0])) { |
||
| 107 | \$criteria->add(new \Criteria('{$fieldId}', {$moduleDirname}_block_addCatSelect(\$options), 'IN')); |
||
| 108 | } |
||
| 109 | |||
| 110 | if (\$typeBlock) |
||
| 111 | { |
||
| 112 | \$criteria->add(new \Criteria('{$fieldId}', 0, '!=')); |
||
| 113 | \$criteria->setSort('{$fieldId}'); |
||
| 114 | \$criteria->setOrder('ASC'); |
||
| 115 | }\n |
||
| 116 | EOT; |
||
| 117 | } else { |
||
| 118 | $ret .= <<<EOT |
||
| 119 | switch(\$typeBlock) |
||
| 120 | { |
||
| 121 | // For the block: {$tableName} last |
||
| 122 | case 'last': |
||
| 123 | \$criteria->add(new \Criteria('{$tableFieldname}_display', 1)); |
||
| 124 | \$criteria->setSort('{$tableFieldname}_created'); |
||
| 125 | \$criteria->setOrder('DESC'); |
||
| 126 | break; |
||
| 127 | // For the block: {$tableName} new |
||
| 128 | case 'new': |
||
| 129 | \$criteria->add(new \Criteria('{$tableFieldname}_display', 1)); |
||
| 130 | \$criteria->add(new \Criteria('{$tableFieldname}_created', strtotime(date(_SHORTDATESTRING)), '>=')); |
||
| 131 | \$criteria->add(new \Criteria('{$tableFieldname}_created', strtotime(date(_SHORTDATESTRING))+86400, '<=')); |
||
| 132 | \$criteria->setSort('{$tableFieldname}_created'); |
||
| 133 | \$criteria->setOrder('ASC'); |
||
| 134 | break; |
||
| 135 | // For the block: {$tableName} hits |
||
| 136 | case 'hits': |
||
| 137 | \$criteria->setSort('{$tableFieldname}_hits'); |
||
| 138 | \$criteria->setOrder('DESC'); |
||
| 139 | break; |
||
| 140 | // For the block: {$tableName} top |
||
| 141 | case 'top': |
||
| 142 | \$criteria->setSort('{$tableFieldname}_top'); |
||
| 143 | \$criteria->setOrder('ASC'); |
||
| 144 | break; |
||
| 145 | // For the block: {$tableName} random |
||
| 146 | case 'random': |
||
| 147 | \$criteria->add(new \Criteria('{$tableFieldname}_display', 1)); |
||
| 148 | \$criteria->setSort('RAND()'); |
||
| 149 | break; |
||
| 150 | }\n |
||
| 151 | EOT; |
||
| 152 | } |
||
| 153 | $ret .= <<<EOT |
||
| 154 | \$criteria->setLimit(\$limit); |
||
| 155 | \${$tableName}All = \${$tableName}Handler->getAll(\$criteria); |
||
| 156 | unset(\$criteria); |
||
| 157 | foreach(array_keys(\${$tableName}All) as \$i) |
||
| 158 | {\n |
||
| 159 | EOT; |
||
| 160 | foreach (array_keys($fields) as $f) { |
||
| 161 | $fieldName = $fields[$f]->getVar('field_name'); |
||
| 162 | // Verify if table_fieldname is not empty |
||
| 163 | //$lpFieldName = !empty($tableFieldname) ? substr($fieldName, 0, strpos($fieldName, '_')) : $tableName; |
||
| 164 | $rpFieldName = $this->getRightString($fieldName); |
||
| 165 | $fieldElement = $fields[$f]->getVar('field_element'); |
||
| 166 | if (1 == $fields[$f]->getVar('field_block')) { |
||
| 167 | switch ($fieldElement) { |
||
| 168 | case 2: |
||
| 169 | $ret .= <<<EOT |
||
| 170 | \$block[\$i]['{$rpFieldName}'] = \$myts->htmlSpecialChars(\${$tableName}All[\$i]->getVar('{$fieldName}'));\n |
||
| 171 | EOT; |
||
| 172 | break; |
||
| 173 | case 3: |
||
| 174 | case 4: |
||
| 175 | $ret .= <<<EOT |
||
| 176 | \$block[\$i]['{$rpFieldName}'] = strip_tags(\${$tableName}All[\$i]->getVar('{$fieldName}'));\n |
||
| 177 | EOT; |
||
| 178 | break; |
||
| 179 | case 8: |
||
| 180 | $ret .= <<<EOT |
||
| 181 | \$block[\$i]['{$rpFieldName}'] = \XoopsUser::getUnameFromId(\${$tableName}All[\$i]->getVar('{$fieldName}'));\n |
||
| 182 | EOT; |
||
| 183 | break; |
||
| 184 | case 15: |
||
| 185 | $ret .= <<<EOT |
||
| 186 | \$block[\$i]['{$rpFieldName}'] = formatTimeStamp(\${$tableName}All[\$i]->getVar('{$fieldName}'));\n |
||
| 187 | EOT; |
||
| 188 | break; |
||
| 189 | default: |
||
| 190 | $ret .= <<<EOT |
||
| 191 | \$block[\$i]['{$rpFieldName}'] = \${$tableName}All[\$i]->getVar('{$fieldName}');\n |
||
| 192 | EOT; |
||
| 193 | break; |
||
| 194 | } |
||
| 195 | } |
||
| 196 | } |
||
| 197 | $ret .= <<<EOT |
||
| 198 | } |
||
| 199 | return \$block; |
||
| 200 | }\n\n |
||
| 201 | EOT; |
||
| 202 | |||
| 203 | return $ret; |
||
| 204 | } |
||
| 292 |