<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://sugarclub.sugarcrm.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor</link><pubDate>Tue, 22 Nov 2022 13:57:45 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Current Revision posted to Dev Tutorials by Rafael Fernandes on 11/22/2022 1:57:45 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;Scripts&lt;/h2&gt;
&lt;p&gt;Set of scripts to help you easily identify any customizations in your filesystem or any addon/&lt;a href="https://support.sugarcrm.com/SmartLinks/Developer_Guide/Architecture/Module_Loader/"&gt;MLP&lt;/a&gt;&amp;nbsp;you may have created or installed in your instances.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3iliqq0"&gt;Search on File System&lt;/h3&gt;
&lt;p&gt;You can execute the following script to search possible impacts through grep.&amp;nbsp;Note that this script will search for terms in a wider range to make sure it catches most scenarios such as&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span class="s1"&gt;&lt;code&gt;custom/Extension/application/Ext/clients/base/layouts/footer&lt;/code&gt; and not only&amp;nbsp;&lt;/span&gt;&lt;code&gt;&lt;span class="s1"&gt;custom/clients/base/layouts/footer&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#search for folders in current directory
find . -type d | grep -i &amp;#39;clients/.*/header\|clients/.*/footer\|clients/.*/module\|modules/.*/module\|clients/.*/quicksearch\|clients/.*/notifications\|clients/.*/profileactions\|clients/.*/quickcreate\|clients/.*/omnichannel\|clients/.*/mobile\|clients/.*/merge-widget\|clients/.*/language-actions&amp;#39;

#look for any occurence (most likely in manifest.php) in files
grep -i &amp;#39;clients/.*/header\|clients/.*/footer\|clients/.*/module\|modules/.*/module\|clients/.*/quicksearch\|clients/.*/notifications\|clients/.*/profileactions\|clients/.*/quickcreate\|clients/.*/omnichannel\|clients/.*/mobile\|clients/.*/merge-widget\|clients/.*/language-actions&amp;#39; -R *

#easier to read version (will not execute)
#find . -type d | 
#    grep -i &amp;#39;
#        clients/.*/header\|
#        clients/.*/footer\|
#        clients/.*/module\|
#        modules/.*/module\|
#        clients/.*/quicksearch\|
#        clients/.*/notifications\|
#        clients/.*/profileactions\|
#        clients/.*/quickcreate\|
#        clients/.*/omnichannel\|
#        clients/.*/mobile\|
#        clients/.*/merge-widget\|
#        clients/.*/language-actions
#        &amp;#39;&lt;/pre&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3i5ppg0"&gt;Search on&amp;nbsp;MLP Zip files&lt;/h3&gt;
&lt;p&gt;Copy all of your addons/MLPs into a directory in their zip format and execute the following script. It unzips the files in place, scans for possible customizations (using the same script as the previous section), and if found, returns its name (zip filename).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#!/bin/sh
find . -name *.zip |
while read filename
do
    path=$(echo $filename | sed &amp;#39;s/ /\\ /g&amp;#39;)
    if ( unzip -c &amp;quot;$filename&amp;quot; | grep -i -q &amp;quot;clients/.*/header\|clients/.*/footer\|clients/.*/module\|modules/.*/module\|clients/.*/quicksearch\|clients/.*/notifications\|clients/.*/profileactions\|clients/.*/quickcreate\|clients/.*/omnichannel\|clients/.*/mobile\|clients/.*/merge-widget\|clients/.*/language-actions&amp;quot;); then
            o1=`ls -l &amp;quot;$filename&amp;quot; | awk &amp;#39;{print $6,$7,$8}&amp;#39; | column -t`
            o2=`echo &amp;quot;$filename&amp;quot; | sed &amp;#39;s|^[^/]*\(/[^/]*/\).*$|\1|&amp;#39; | sed &amp;#39;s|/||g&amp;#39;`
            echo &amp;quot;$filename&amp;quot; | column -t
    fi
done
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; we&amp;#39;re targeting manifest files on their copy commands for MLPs.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/8</link><pubDate>Fri, 18 Nov 2022 13:34:19 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 8 posted to Dev Tutorials by Rafael Fernandes on 11/18/2022 1:34:19 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;Scripts&lt;/h2&gt;
&lt;p&gt;Set of scripts to help you easily identify any customizations in your filesystem or any addon/&lt;a href="https://support.sugarcrm.com/SmartLinks/Developer_Guide/Architecture/Module_Loader/"&gt;MLP&lt;/a&gt;&amp;nbsp;you may have created or installed in your instances.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3iliqq0"&gt;Search on File System&lt;/h3&gt;
&lt;p&gt;You can execute the following script to search possible impacts through grep.&amp;nbsp;Note that this script will search for terms in a wider range to make sure it catches most scenarios such as&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span class="s1"&gt;&lt;code&gt;custom/Extension/application/Ext/clients/base/layouts/footer&lt;/code&gt; and not only&amp;nbsp;&lt;/span&gt;&lt;code&gt;&lt;span class="s1"&gt;custom/clients/base/layouts/footer&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#the executable command
find . -type d | grep -i &amp;#39;clients/.*/header\|clients/.*/footer\|clients/.*/module\|modules/.*/module\|clients/.*/quicksearch\|clients/.*/notifications\|clients/.*/profileactions\|clients/.*/quickcreate\|clients/.*/omnichannel\|clients/.*/mobile\|clients/.*/merge-widget\|clients/.*/language-actions&amp;#39;

#easier to read version (will not execute)
#find . -type d | 
#    grep -i &amp;#39;
#        clients/.*/header\|
#        clients/.*/footer\|
#        clients/.*/module\|
#        modules/.*/module\|
#        clients/.*/quicksearch\|
#        clients/.*/notifications\|
#        clients/.*/profileactions\|
#        clients/.*/quickcreate\|
#        clients/.*/omnichannel\|
#        clients/.*/mobile\|
#        clients/.*/merge-widget\|
#        clients/.*/language-actions
#        &amp;#39;&lt;/pre&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3i5ppg0"&gt;Search on&amp;nbsp;MLP Zip files&lt;/h3&gt;
&lt;p&gt;Copy all of your addons/MLPs into a directory in their zip format and execute the following script. It unzips the files in place, scans for possible customizations (using the same script as the previous section), and if found, returns its name (zip filename).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#!/bin/sh
find . -name *.zip |
while read filename
do
    path=$(echo $filename | sed &amp;#39;s/ /\\ /g&amp;#39;)
    if ( unzip -c &amp;quot;$filename&amp;quot; | grep -i -q &amp;quot;clients/.*/header\|clients/.*/footer\|clients/.*/module\|modules/.*/module\|clients/.*/quicksearch\|clients/.*/notifications\|clients/.*/profileactions\|clients/.*/quickcreate\|clients/.*/omnichannel\|clients/.*/mobile\|clients/.*/merge-widget\|clients/.*/language-actions&amp;quot;); then
            o1=`ls -l &amp;quot;$filename&amp;quot; | awk &amp;#39;{print $6,$7,$8}&amp;#39; | column -t`
            o2=`echo &amp;quot;$filename&amp;quot; | sed &amp;#39;s|^[^/]*\(/[^/]*/\).*$|\1|&amp;#39; | sed &amp;#39;s|/||g&amp;#39;`
            echo &amp;quot;$filename&amp;quot; | column -t
    fi
done
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; we&amp;#39;re targeting manifest files on their copy commands for MLPs.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/7</link><pubDate>Thu, 17 Nov 2022 20:21:02 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 7 posted to Dev Tutorials by Rafael Fernandes on 11/17/2022 8:21:02 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;Scripts&lt;/h2&gt;
&lt;p&gt;Set of scripts to help you easily identify any customizations in your filesystem or any addon/&lt;a href="https://support.sugarcrm.com/SmartLinks/Developer_Guide/Architecture/Module_Loader/"&gt;MLP&lt;/a&gt;&amp;nbsp;you may have created or installed in your instances.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3iliqq0"&gt;Search on File System&lt;/h3&gt;
&lt;p&gt;You can execute the following script to search possible impacts through grep.&amp;nbsp;Note that this script will search for terms in a wider range to make sure it catches most scenarios such as&amp;nbsp;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;span class="s1"&gt;&lt;code&gt;custom/Extension/application/Ext/clients/base/layouts/footer&lt;/code&gt; and not only&amp;nbsp;&lt;/span&gt;&lt;code&gt;&lt;span class="s1"&gt;custom/clients/base/layouts/footer&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;find . -type d | grep -i &amp;#39;clients/.*/header\|clients/.*/footer\|clients/.*/module\|modules/.*/module\|clients/.*/quicksearch\|clients/.*/notifications\|clients/.*/profileactions\|clients/.*/quickcreate\|clients/.*/omnichannel\|clients/.*/mobile\|clients/.*/merge-widget\|clients/.*/language-actions&amp;#39;
&lt;/pre&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3i5ppg0"&gt;Search on&amp;nbsp;MLP Zip files&lt;/h3&gt;
&lt;p&gt;Copy all of your addons/MLPs into a directory in their zip format and execute the following script. It unzips the files in place, scans for possible customizations (using the same script as the previous section), and if found, returns its name (zip filename).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#!/bin/sh
find . -name *.zip |
while read filename
do
    path=$(echo $filename | sed &amp;#39;s/ /\\ /g&amp;#39;)
    if ( unzip -c &amp;quot;$filename&amp;quot; | grep -i -q &amp;quot;clients/.*/header\|clients/.*/footer\|clients/.*/module\|modules/.*/module\|clients/.*/quicksearch\|clients/.*/notifications\|clients/.*/profileactions\|clients/.*/quickcreate\|clients/.*/omnichannel\|clients/.*/mobile\|clients/.*/merge-widget\|clients/.*/language-actions&amp;quot;); then
            o1=`ls -l &amp;quot;$filename&amp;quot; | awk &amp;#39;{print $6,$7,$8}&amp;#39; | column -t`
            o2=`echo &amp;quot;$filename&amp;quot; | sed &amp;#39;s|^[^/]*\(/[^/]*/\).*$|\1|&amp;#39; | sed &amp;#39;s|/||g&amp;#39;`
            echo &amp;quot;$filename&amp;quot; | column -t
    fi
done
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; we&amp;#39;re targeting manifest files on their copy commands for MLPs.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/6</link><pubDate>Thu, 17 Nov 2022 19:59:33 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 6 posted to Dev Tutorials by Rafael Fernandes on 11/17/2022 7:59:33 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;Scripts&lt;/h2&gt;
&lt;p&gt;Set of scripts to help you easily identify any customizations in your filesystem or any addon/&lt;a href="https://support.sugarcrm.com/SmartLinks/Developer_Guide/Architecture/Module_Loader/"&gt;MLP&lt;/a&gt;&amp;nbsp;you may have created or installed in your instances.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3iliqq0"&gt;Search on File System&lt;/h3&gt;
&lt;p&gt;You can execute the following script to search possible impacts through grep. It will, most likely, find occurencies&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;grep -R -i &amp;quot;clients/base/layouts/header\|clients/base/layouts/module-list\|clients/base/views/module-menu\|clients/base/layouts/quicksearch\|clients/base/views/quicksearch\|clients/base/views/notifications\|clients/base/views/profileactions/\|clients/base/views/quickcreate\|clients/base/layouts/footer\|clients/base/views/omnichannel\|clients/base/views/mobile-action\|clients/base/views/merge-widget-action\|clients/base/views/language-actions\|clients/base/views/footer-actions&amp;quot; *&lt;/pre&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3i5ppg0"&gt;Search on&amp;nbsp;MLP Zip files&lt;/h3&gt;
&lt;p&gt;Copy all of your addons/MLPs into a directory in their zip format and execute the following script. It unzips the files in place, scans for possible customizations, and if found, returns its name (zip filename).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#!/bin/sh
find . -name *.zip |
while read filename
do
    path=$(echo $filename | sed &amp;#39;s/ /\\ /g&amp;#39;)
    if ( unzip -c &amp;quot;$filename&amp;quot; | grep -i -q &amp;quot;clients/base/layouts/header\|clients/base/layouts/module-list\|clients/base/views/module-menu\|clients/base/layouts/quicksearch\|clients/base/views/quicksearch\|clients/base/views/notifications\|clients/base/views/profileactions/\|clients/base/views/quickcreate\|clients/base/layouts/footer\|clients/base/views/omnichannel\|clients/base/views/mobile-action\|clients/base/views/merge-widget-action\|clients/base/views/language-actions\|clients/base/views/footer-actions&amp;quot;); then
            o1=`ls -l &amp;quot;$filename&amp;quot; | awk &amp;#39;{print $6,$7,$8}&amp;#39; | column -t`
            o2=`echo &amp;quot;$filename&amp;quot; | sed &amp;#39;s|^[^/]*\(/[^/]*/\).*$|\1|&amp;#39; | sed &amp;#39;s|/||g&amp;#39;`
            echo &amp;quot;$filename&amp;quot; | column -t
    fi
done
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; we&amp;#39;re targeting manifest files on their copy commands for MLPs.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/5</link><pubDate>Thu, 17 Nov 2022 19:51:08 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 5 posted to Dev Tutorials by Rafael Fernandes on 11/17/2022 7:51:08 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;Scripts&lt;/h2&gt;
&lt;p&gt;Set of scripts to help you easily identify any customizations in your filesystem or any addon/&lt;a href="https://support.sugarcrm.com/SmartLinks/Developer_Guide/Architecture/Module_Loader/"&gt;MLP&lt;/a&gt;&amp;nbsp;you may have created or installed in your instances.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3i5ppg0"&gt;Search for MLPs&lt;/h3&gt;
&lt;p&gt;Copy all of your addons/MLPs into a directory in their zip format and execute the following script. It unzips the files in place, scans for possible customizations, and if found, returns its name (zip filename).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#!/bin/sh
find . -name *.zip |
while read filename
do
    path=$(echo $filename | sed &amp;#39;s/ /\\ /g&amp;#39;)
    if ( unzip -c &amp;quot;$filename&amp;quot; | grep -i -q &amp;quot;clients/base/layouts/header\|clients/base/layouts/module-list\|clients/base/views/module-menu\|clients/base/layouts/quicksearch\|clients/base/views/quicksearch\|clients/base/views/notifications\|clients/base/views/profileactions/\|clients/base/views/quickcreate\|clients/base/layouts/footer\|clients/base/views/omnichannel\|clients/base/views/mobile-action\|clients/base/views/merge-widget-action\|clients/base/views/language-actions\|clients/base/views/footer-actions&amp;quot;); then
            o1=`ls -l &amp;quot;$filename&amp;quot; | awk &amp;#39;{print $6,$7,$8}&amp;#39; | column -t`
            o2=`echo &amp;quot;$filename&amp;quot; | sed &amp;#39;s|^[^/]*\(/[^/]*/\).*$|\1|&amp;#39; | sed &amp;#39;s|/||g&amp;#39;`
            echo &amp;quot;$filename&amp;quot; | column -t
    fi
done
&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/4</link><pubDate>Thu, 17 Nov 2022 19:50:21 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 4 posted to Dev Tutorials by Rafael Fernandes on 11/17/2022 7:50:21 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;Scripts&lt;/h2&gt;
&lt;p&gt;Set of scripts to help you easily identify any customizations in your filesystem or any addon/&lt;a href="https://support.sugarcrm.com/SmartLinks/Developer_Guide/Architecture/Module_Loader/"&gt;MLP&lt;/a&gt;&amp;nbsp;you may have created or installed in your instances.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3i5ppg0"&gt;Search for MLPs&lt;/h3&gt;
&lt;p&gt;Copy all of your addons/MLPs into a directory in their zip format and execute the following script.&lt;/p&gt;
&lt;p&gt;It unzips the files in-place, scans for possible customizations and if any is found, it returns its name (zip filename).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#!/bin/sh
find . -name *.zip |
while read filename
do
    path=$(echo $filename | sed &amp;#39;s/ /\\ /g&amp;#39;)
    if ( unzip -c &amp;quot;$filename&amp;quot; | grep -i -q &amp;quot;clients/base/layouts/header\|clients/base/layouts/module-list\|clients/base/views/module-menu\|clients/base/layouts/quicksearch\|clients/base/views/quicksearch\|clients/base/views/notifications\|clients/base/views/profileactions/\|clients/base/views/quickcreate\|clients/base/layouts/footer\|clients/base/views/omnichannel\|clients/base/views/mobile-action\|clients/base/views/merge-widget-action\|clients/base/views/language-actions\|clients/base/views/footer-actions&amp;quot;); then
            o1=`ls -l &amp;quot;$filename&amp;quot; | awk &amp;#39;{print $6,$7,$8}&amp;#39; | column -t`
            o2=`echo &amp;quot;$filename&amp;quot; | sed &amp;#39;s|^[^/]*\(/[^/]*/\).*$|\1|&amp;#39; | sed &amp;#39;s|/||g&amp;#39;`
            echo &amp;quot;$filename&amp;quot; | column -t
    fi
done
&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/3</link><pubDate>Thu, 17 Nov 2022 19:49:03 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 3 posted to Dev Tutorials by Rafael Fernandes on 11/17/2022 7:49:03 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;Scripts&lt;/h2&gt;
&lt;p&gt;Set of scripts to help you easily identify any customizations in your filesystem or any addon/&lt;a href="https://support.sugarcrm.com/SmartLinks/Developer_Guide/Architecture/Module_Loader/"&gt;MLP&lt;/a&gt;&amp;nbsp;you may have created or installed in your instances.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3i5ppg0"&gt;Search for MLPs&lt;/h3&gt;
&lt;p&gt;Copy all of your addons/MLPs into a directory in their zip format and execute the following script:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="batchfile"&gt;#!/bin/sh
find . -name *.zip |
while read filename
do
    path=$(echo $filename | sed &amp;#39;s/ /\\ /g&amp;#39;)
    if ( unzip -c &amp;quot;$filename&amp;quot; | grep -i -q &amp;quot;clients/base/layouts/header\|clients/base/layouts/module-list\|clients/base/views/module-menu\|clients/base/layouts/quicksearch\|clients/base/views/quicksearch\|clients/base/views/notifications\|clients/base/views/profileactions/\|clients/base/views/quickcreate\|clients/base/layouts/footer\|clients/base/views/omnichannel\|clients/base/views/mobile-action\|clients/base/views/merge-widget-action\|clients/base/views/language-actions\|clients/base/views/footer-actions&amp;quot;); then
            o1=`ls -l &amp;quot;$filename&amp;quot; | awk &amp;#39;{print $6,$7,$8}&amp;#39; | column -t`
            o2=`echo &amp;quot;$filename&amp;quot; | sed &amp;#39;s|^[^/]*\(/[^/]*/\).*$|\1|&amp;#39; | sed &amp;#39;s|/||g&amp;#39;`
            echo &amp;quot;$filename&amp;quot; | column -t
    fi
done
&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/2</link><pubDate>Thu, 17 Nov 2022 19:42:58 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 2 posted to Dev Tutorials by Rafael Fernandes on 11/17/2022 7:42:58 PM&lt;br /&gt;
&lt;h2 id="mcetoc_1gi3hfsnf0"&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;This guide will help you identify customizations that could possibly be impacted by the UI/UX Redesign in the&amp;nbsp;overall header and footer contains and layouts.&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Header Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;Overall header container files&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Module list files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quicksearch files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notifications files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profile dropdown files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick create files&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3 id="mcetoc_1gi3hk8c01"&gt;Footer&amp;nbsp;Customizations&lt;/h3&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall footer container files&lt;/td&gt;
&lt;td&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer logo side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Footer button side files&lt;/td&gt;
&lt;td&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;/span&gt;&lt;br /&gt;&lt;span&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item><item><title>How to identify customizations to Refactor</title><link>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor/revision/1</link><pubDate>Thu, 17 Nov 2022 19:33:04 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:c6787042-3b7d-4d84-9a83-bb10c07dd362</guid><dc:creator>Rafael Fernandes</dc:creator><comments>https://sugarclub.sugarcrm.com/dev-club/w/dev-tutorials/787/how-to-identify-customizations-to-refactor#comments</comments><description>Revision 1 posted to Dev Tutorials by Rafael Fernandes on 11/17/2022 7:33:04 PM&lt;br /&gt;
&lt;h2&gt;What&amp;nbsp;are we looking for?&lt;/h2&gt;
&lt;p&gt;Sugar is implementing a customer-inspired, research-based redesign of the user interface and navigation. This redesign gives you more visual real estate, serving up more relevant data to your fingertips to help increase your productivity and accelerate goal achievements.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Overall header container files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/layouts/header/header.php&lt;br /&gt;custom/clients/base/layouts/header/header.js&lt;br /&gt;custom/clients/base/layouts/header/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Module list files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/layouts/module-list/module-list.js&lt;br /&gt;custom/clients/base/layouts/module-list/*.hbs&lt;br /&gt;custom/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/clients/base/views/module-menu/*.hbs&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.js&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/module-menu.php&lt;br /&gt;custom/modules/*/clients/base/views/module-menu/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Quicksearch files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.php&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.js&lt;br /&gt;custom/clients/base/layouts/quicksearch/quicksearch.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/quicksearch-modulelist.js&lt;br /&gt;custom/clients/base/views/quicksearch-modulelist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/quicksearch-taglist.js&lt;br /&gt;custom/clients/base/views/quicksearch-taglist/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.js&lt;br /&gt;custom/clients/base/views/quicksearch-bar/quicksearch-bar.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.js&lt;br /&gt;custom/clients/base/views/quicksearch-tags/quicksearch-tags.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-results/quicksearch-results.js&lt;br /&gt;custom/clients/base/views/quicksearch-results/*.hbs&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.js&lt;br /&gt;custom/clients/base/views/quicksearch-button/quicksearch-button.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Notifications files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/views/notifications/notifications.php&lt;br /&gt;custom/clients/base/views/notifications/notifications.js&lt;br /&gt;custom/clients/base/views/notifications/*.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Profile dropdown files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.php&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.js&lt;br /&gt;custom/clients/base/views/profileactions/profileactions.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Quick create files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.js&lt;br /&gt;custom/clients/base/views/quickcreate/quickcreate.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Overall footer container files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/layouts/footer/footer.php&lt;br /&gt;custom/clients/base/layouts/footer/footer.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Footer logo side files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/layouts/footer-logos/footer-logos.php&lt;br /&gt;custom/clients/base/layouts/footer-logos/footer-logos.js&lt;br /&gt;custom/clients/base/layouts/footer-logos/footer-logos.hbs&lt;br /&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.js&lt;br /&gt;custom/clients/base/views/omnichannel-button/omnichannel-button.hbs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Footer button side files&lt;/strong&gt;&lt;br /&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.php&lt;br /&gt;custom/clients/base/layouts/footer-buttons/footer-buttons.js&lt;br /&gt;custom/clients/base/views/mobile-action/mobile-action.js&lt;br /&gt;custom/clients/base/views/mobile-action/mobile-action.hbs&lt;br /&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.js&lt;br /&gt;custom/clients/base/views/merge-widget-action/merge-widget-action.hbs&lt;br /&gt;custom/clients/base/views/language-actions/language-actions.js&lt;br /&gt;custom/clients/base/views/language-actions/language-actions.hbs&lt;br /&gt;custom/clients/base/views/footer-actions/footer-actions.js&lt;br /&gt;custom/clients/base/views/footer-actions/footer-actions.hbs&lt;br /&gt;custom/clients/base/views/footer-actions/footer-actions.php&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;
</description></item></channel></rss>