| Conditions | 17 |
| Paths | 144 |
| Total Lines | 77 |
| Code Lines | 48 |
| 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 |
||
| 52 | function displayList($layout_def) |
||
| 53 | { |
||
| 54 | |||
| 55 | global $app_strings; |
||
| 56 | global $subpanel_item_count; |
||
| 57 | |||
| 58 | $unique_id = $layout_def['subpanel_id'] . "_remove_" . $subpanel_item_count; //bug 51512 |
||
| 59 | |||
| 60 | $parent_record_id = $_REQUEST['record']; |
||
| 61 | $parent_module = $_REQUEST['module']; |
||
| 62 | |||
| 63 | $action = 'DeleteRelationship'; |
||
| 64 | $record = $layout_def['fields']['ID']; |
||
| 65 | $current_module=$layout_def['module']; |
||
| 66 | //in document revisions subpanel ,users are now allowed to |
||
| 67 | //delete the latest revsion of a document. this will be tested here |
||
| 68 | //and if the condition is met delete button will be removed. |
||
| 69 | $hideremove=false; |
||
| 70 | if ($current_module==='DocumentRevisions') { |
||
| 71 | if ($layout_def['fields']['ID']===$layout_def['fields']['LATEST_REVISION_ID']) { |
||
| 72 | $hideremove=true; |
||
| 73 | } |
||
| 74 | }elseif ($_REQUEST['module'] === 'Teams' && $current_module === 'Users') { |
||
| 75 | // Implicit Team-memberships are not "removeable" |
||
| 76 | |||
| 77 | if($layout_def['fields']['UPLINE'] !== translate('LBL_TEAM_UPLINE_EXPLICIT', 'Users')) { |
||
| 78 | $hideremove = true; |
||
| 79 | } |
||
| 80 | |||
| 81 | //We also cannot remove the user whose private team is set to the parent_record_id value |
||
| 82 | $user = new User(); |
||
| 83 | $user->retrieve($layout_def['fields']['ID']); |
||
| 84 | if($parent_record_id === $user->getPrivateTeamID()){ |
||
| 85 | |||
| 86 | $hideremove = true; |
||
| 87 | }} elseif ($current_module === 'ACLRoles' && (!ACLController::checkAccess($current_module, 'edit', true))) { |
||
| 88 | $hideremove = true; |
||
| 89 | }elseif ($current_module === 'ACLRoles' && (!ACLController::checkAccess($current_module, 'edit', true))) { |
||
| 90 | $hideremove = true; |
||
| 91 | } |
||
| 92 | |||
| 93 | $return_module = $_REQUEST['module']; |
||
| 94 | $return_action = 'SubPanelViewer'; |
||
| 95 | $subpanel = $layout_def['subpanel_id']; |
||
| 96 | $return_id = $_REQUEST['record']; |
||
| 97 | if (isset($layout_def['linked_field_set']) && !empty($layout_def['linked_field_set'])) { |
||
| 98 | $linked_field= $layout_def['linked_field_set'] ; |
||
| 99 | } else { |
||
| 100 | $linked_field = $layout_def['linked_field']; |
||
| 101 | } |
||
| 102 | $refresh_page = 0; |
||
| 103 | if(!empty($layout_def['refresh_page'])){ |
||
| 104 | $refresh_page = 1; |
||
| 105 | } |
||
| 106 | $return_url = "index.php?module=$return_module&action=$return_action&subpanel=$subpanel&record=$return_id&sugar_body_only=1&inline=1"; |
||
| 107 | |||
| 108 | $icon_remove_text = $app_strings['LBL_ID_FF_REMOVE']; |
||
| 109 | |||
| 110 | if ($linked_field === 'get_emails_by_assign_or_link') { |
||
| 111 | $linked_field = 'emails'; |
||
| 112 | } |
||
| 113 | //based on listview since that lets you select records |
||
| 114 | if ($layout_def['ListView'] && !$hideremove) { |
||
| 115 | $retStr = "<a href=\"javascript:sub_p_rem('$subpanel', '$linked_field'" |
||
| 116 | . ", '$record', $refresh_page);\"" |
||
| 117 | . ' class="listViewTdToolsS1"' |
||
| 118 | . "id=$unique_id" |
||
| 119 | . " onclick=\"return sp_rem_conf();\"" |
||
| 120 | . ">$icon_remove_text</a>"; |
||
| 121 | |||
| 122 | return $retStr; |
||
| 123 | |||
| 124 | } |
||
| 125 | |||
| 126 | return ''; |
||
| 127 | |||
| 128 | } |
||
| 129 | } |
||
| 130 |