Sonar Scans and Role Centralization; clean nl 83/15183/1
authorChristopher Lott (cl778h) <clott@research.att.com>
Mon, 25 Sep 2017 19:52:24 +0000 (15:52 -0400)
committerChristopher Lott (cl778h) <clott@research.att.com>
Mon, 25 Sep 2017 19:53:55 +0000 (15:53 -0400)
PORTAL-21: centralized user role management
PORTAL-72: Address Sonar Scan code issues for ONAP - mostly on raptor
PORTAL-86: ONAP - Remove internal att.com usages from tests and otherfiles
PORTAL-90: Add debug statements to demo app's class; no functional change

Issue: PORTAL-21 PORTAL-72 PORTAL-86 PORTAL-90
Change-Id: I72a6c812009f51446330bf42bab6d3338d053805
Signed-off-by: Christopher Lott (cl778h) <clott@research.att.com>
46 files changed:
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ActionHandler.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/Controller.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/WizardProcessor.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/ReportHandler.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/ReportLoader.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/base/ReportSecurity.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/base/ReportWrapper.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/FormField.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ReportRuntime.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/scheduler/SchedulerUtil.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/AntBuild.java
ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/adapter/Lookup.java
ecomp-sdk/epsdk-app-common/README.md
ecomp-sdk/epsdk-app-common/src/main/java/org/onap/portalapp/controller/core/RoleController.java
ecomp-sdk/epsdk-app-os/README.md
ecomp-sdk/epsdk-app-os/src/main/resources/logback.xml
ecomp-sdk/epsdk-app-os/src/main/webapp/WEB-INF/fusion/jsp/ds2/left-menu.jsp
ecomp-sdk/epsdk-app-os/src/main/webapp/static/fusion/sample/html/data/worddata.csv
ecomp-sdk/epsdk-app-overlay/README.md
ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz/ebz_header.jsp
ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/ebz_template_report_embedded.jsp
ecomp-sdk/epsdk-app-overlay/src/main/webapp/WEB-INF/fusion/jsp/webrtc/collaboration.jsp
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/admin-controller.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-profile/self-profile-controller.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-controllers/ds2-workflows/workflowApp.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-services/modalService.js [deleted file]
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-view-models/ds2-admin/modals/role-functions-modal.html
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/network/net_map.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/header.html [deleted file]
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/left_menu.html [deleted file]
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/reportdashboard-page/src/report-dashboard.html
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/webrtc/RTCMultiConnection.js
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/global.css [deleted file]
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/workflows/workflows.css
ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusionapp/drools/view-models/droolsSinglePage.html [deleted file]
ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/fusion/sample/html/data/worddata.csv
ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/js/search.js [deleted file]
ecomp-sdk/epsdk-core/README.md
ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/domain/RoleFunction.java
ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/logging/format/ErrorCodesEnum.java
ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/onboarding/ueb/Publisher.java
ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/service/BroadcastServiceImpl.java
ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/service/PostSearchService.java
ecomp-sdk/epsdk-core/src/main/java/org/onap/portalsdk/core/service/PostSearchServiceImpl.java
ecomp-sdk/epsdk-fw/src/main/java/org/onap/portalsdk/core/onboarding/crossapi/PortalRestAPIProxy.java
ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/services/WorkflowScheduleExecutor.java

index f8f0629..1ffbde2 100644 (file)
@@ -913,7 +913,7 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject {
                    return jsonInString;
                        }
                        //nextPage = (new ErrorHandler()).processFatalError(request, e);
-               } catch (Throwable t) {
+               } catch (Exception t) {
                        t.printStackTrace();
                        ErrorJSONRuntime errorJSONRuntime = new ErrorJSONRuntime();
                        errorJSONRuntime.setErrormessage(t.toString());
@@ -1146,7 +1146,7 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject {
                    try {
                        DbUtils.rollbackTransaction(connection);
                    } catch (Exception e1) {e1.printStackTrace();}
-                       } catch (Throwable t) {
+                       } catch (Exception t) {
                                t.printStackTrace();
                        }
                        finally {
@@ -1243,7 +1243,7 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject {
                            try {
                                DbUtils.rollbackTransaction(connection);
                            } catch (Exception e1) {e1.printStackTrace();}
-                               } catch (Throwable t) {
+                               } catch (Exception t) {
                                        t.printStackTrace();
                                }
                                finally {
@@ -1284,7 +1284,7 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject {
                        (new ErrorHandler()).processError(request, ve);
                } catch (RaptorException e) {
                        nextPage = (new ErrorHandler()).processFatalError(request, e);
-               } catch (Throwable t) {
+               } catch (Exception t) {
                        t.printStackTrace();
                }
 
index eb6b469..f8ecd5c 100644 (file)
@@ -72,8 +72,6 @@ public class Controller extends org.onap.portalsdk.analytics.RaptorObject {
                } catch (RaptorException e) {
                        logger.debug(EELFLoggerDelegate.debugLogger, ("[Controller.processRequest]Invalid raptor action [" + actionKey
                                                + "]. RaptorException: " + e.getMessage()));
-//                     if (actionKey.equals("system_upgrade")) // System override
-//                             return att.raptor.util.upgrade.SystemUpgrade.upgradeDB(request);
 
                        return (new ErrorHandler()).processFatalError(request, new RaptorRuntimeException(
                                        "[Controller.processRequest]Invalid raptor action [" + actionKey
index 1496b9f..6800706 100644 (file)
@@ -2329,43 +2329,46 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject {
                        useDefaultSize = "N";
                if (repMap == null)
                                rdef.setReportMap(new ObjectFactory().createReportMap());
-               repMap.setAddressColumn(addressColumn);
-               repMap.setDataColumn(dataColumn);
-               repMap.setIsMapAllowedYN(isMapAllowed);
-               repMap.setUseDefaultSize(useDefaultSize);
-               repMap.setMarkerColor(color);
-               repMap.setAddAddressInDataYN(addAddress);
-               repMap.setLatColumn(latCol);
-               repMap.setLongColumn(longCol);
-               repMap.setColorColumn(colorCol);
-               repMap.setHeight(height.trim());
-               repMap.setWidth(width.trim());
-               repMap.setLegendColumn(legendColumn);
-               //repMap.setLegendDisplayName(legendDisplayName);
-               
-               Marker m = new ObjectFactory().createMarker();
-               m.setAddressColumn(addressColumn);
-               m.setDataColumn(dataColumn);
-               repMap.getMarkers().add(m);
-               String markerCountString = AppUtils.getRequestNvlValue(request, "markerCount");
-               int markerCount = 0;
-               if (markerCountString != null && markerCountString.equals("") == false){
-                       markerCount = new Integer(markerCountString).intValue();
-               }
-               for (int i = 1; i < markerCount; i ++){
-                       String additionalAddressColumn = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "addressColumn" + i));
-                       String additionalDataHeader = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "dataHeader" + i));
-                       String additionalData = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "dataColumn" + i));
-                       String additionalColor = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "markerColor" + i));
-                       if (additionalAddressColumn.equals("1") == false){
-                               m = new ObjectFactory().createMarker();
-                               m.setAddressColumn(additionalAddressColumn);
-                               m.setDataHeader(additionalDataHeader);
-                               m.setDataColumn(additionalData);
-                               m.setMarkerColor(additionalColor);
-                               repMap.getMarkers().add(m);
+               if(repMap!=null){
+                       repMap.setAddressColumn(addressColumn);
+                       repMap.setDataColumn(dataColumn);
+                       repMap.setIsMapAllowedYN(isMapAllowed);
+                       repMap.setUseDefaultSize(useDefaultSize);
+                       repMap.setMarkerColor(color);
+                       repMap.setAddAddressInDataYN(addAddress);
+                       repMap.setLatColumn(latCol);
+                       repMap.setLongColumn(longCol);
+                       repMap.setColorColumn(colorCol);
+                       repMap.setHeight(height.trim());
+                       repMap.setWidth(width.trim());
+                       repMap.setLegendColumn(legendColumn);
+                       //repMap.setLegendDisplayName(legendDisplayName);
+                       
+                       Marker m = new ObjectFactory().createMarker();
+                       m.setAddressColumn(addressColumn);
+                       m.setDataColumn(dataColumn);
+                       repMap.getMarkers().add(m);
+                       String markerCountString = AppUtils.getRequestNvlValue(request, "markerCount");
+                       int markerCount = 0;
+                       if (markerCountString != null && markerCountString.equals("") == false){
+                               markerCount = new Integer(markerCountString).intValue();
+                       }
+                       for (int i = 1; i < markerCount; i ++){
+                               String additionalAddressColumn = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "addressColumn" + i));
+                               String additionalDataHeader = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "dataHeader" + i));
+                               String additionalData = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "dataColumn" + i));
+                               String additionalColor = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "markerColor" + i));
+                               if (additionalAddressColumn.equals("1") == false){
+                                       m = new ObjectFactory().createMarker();
+                                       m.setAddressColumn(additionalAddressColumn);
+                                       m.setDataHeader(additionalDataHeader);
+                                       m.setDataColumn(additionalData);
+                                       m.setMarkerColor(additionalColor);
+                                       repMap.getMarkers().add(m);
+                               }
                        }
                }
+               
                return true;
        } // processMap
        /*****For Report Maps - End******/
index c81ac0c..8a5e7e3 100644 (file)
@@ -321,7 +321,7 @@ public class ReportHandler extends org.onap.portalsdk.analytics.RaptorObject {
                                                cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);
                                                hashMapStyles.put(fmt.getFormatId(), cellStyle);
                                        } else {
-                                               hashMapStyles.put(fmt.getFormatId(), styleDefault);
+                                       //      hashMapStyles.put(fmt.getFormatId(), styleDefault);  //fmt is null here
                                                hashMapStyles.put("default", styleDefault);
                                        }
                                }
@@ -2783,9 +2783,11 @@ public class ReportHandler extends org.onap.portalsdk.analytics.RaptorObject {
                                                AppConstants.SI_REPORT_RUNTIME);
                        HSSFWorkbook wb = new HSSFWorkbook();
                        HashMap styles = new HashMap();
-                       if (rr != null)
+                       String xlsFName="";
+                       if (rr != null){
                                styles = loadStyles(rr, wb);
-                       String xlsFName = AppUtils.generateUniqueFileName(request, rr.getReportName(), AppConstants.FT_XLS);
+                               xlsFName = AppUtils.generateUniqueFileName(request, rr.getReportName(), AppConstants.FT_XLS);
+                       }
                        logger.debug(EELFLoggerDelegate.debugLogger, ("Xls File name " +
                                          AppUtils.getTempFolderPath()
                                         + xlsFName));
@@ -3354,11 +3356,13 @@ public class ReportHandler extends org.onap.portalsdk.analytics.RaptorObject {
                                                readTemplate = new FileInputStream(AppUtils.getTempFolderPath()+ filename+"."+ nvls(extension, "xlsx"));
                                        wb=new XSSFWorkbook(readTemplate);
                                        }
-                                       if(rrDashRep!=null)
-                                               styles = loadXSSFStyles(rrDashRep, wb, styles);
-                                       String reportSheetName = new HtmlStripper().stripSpecialCharacters(rrDashRep.getReportName());
-                                       if(nvl(reportSheetName).length()>28)
-                                               reportSheetName = reportSheetName.substring(0, 28);
+                                       String reportSheetName = "";
+                                       if(rrDashRep!=null){
+                                               styles = loadXSSFStyles(rrDashRep, wb, styles);
+                                               reportSheetName = new HtmlStripper().stripSpecialCharacters(rrDashRep.getReportName());
+                                       }
+                               if(nvl(reportSheetName).length()>28)
+                                       reportSheetName = reportSheetName.substring(0, 28);
                                        sheet = wb.createSheet(count+"-"+reportSheetName);
                                if(!Globals.printExcelInLandscapeMode())
                                        sheet.getPrintSetup().setLandscape(false);
@@ -4051,22 +4055,24 @@ public class ReportHandler extends org.onap.portalsdk.analytics.RaptorObject {
                        buf.available(); 
                        sos.write (bOut, 0, readBytes); 
                    }
-                        
-       }  catch (IOException ex) { 
-                ex.printStackTrace(); 
-       }
-       catch(Exception e) {
+
+               } catch (IOException ex) {
+                       ex.printStackTrace();
+               } catch (Exception e) {
                        e.printStackTrace();
-        finally {
-                try {
-                     if (sos != null)
-                               sos.close();
-                             if (buf != null)
-                               buf.close();
-                           } catch (Exception e1) {
-                               e1.printStackTrace();
+               } finally {
+                       try {
+                               if (sos != null)
+                                       sos.close();
+                               if (buf != null)
+                                       buf.close();
+                               if (fileIn!=null) {
+                                       fileIn.close();
                            }
-       }
+                       } catch (Exception e1) {
+                               e1.printStackTrace();
+                       }
+               }
                                
                        File f = new File (AppUtils.getTempFolderPath()
                                                        + fName); 
@@ -6460,15 +6466,17 @@ public class ReportHandler extends org.onap.portalsdk.analytics.RaptorObject {
                                for (rd.reportColumnHeaderRows.resetNext(); rd.reportColumnHeaderRows.hasNext();) {
                                        chr = rd.reportColumnHeaderRows.getNext();
                                        csvOut.println("<TR>");
-                                       for (chr.resetNext(); chr.hasNext();) {
-                                               ColumnHeader ch = chr.getNext();
-                                               if(ch.isVisible()) {
-                                                       csvOut.print("<TD bgColor=\"8F9381\">" + ch.getColumnTitle() + "</TD>");
-                                                       //for (int i = 1; i < ch.getColSpan(); i++)
-                                                       //      csvOut.print(",");
-                                                       
-                                               }
-                                       } // for
+                                       if(chr!=null){
+                                               for (chr.resetNext(); chr.hasNext();) {
+                                                       ColumnHeader ch = chr.getNext();
+                                                       if(ch.isVisible()) {
+                                                               csvOut.print("<TD bgColor=\"8F9381\">" + ch.getColumnTitle() + "</TD>");
+                                                               //for (int i = 1; i < ch.getColSpan(); i++)
+                                                               //      csvOut.print(",");
+                                                               
+                                                       }
+                                               } // for
+                                       }           
                                        csvOut.println("</TR>");
                                } // for
                        
@@ -6606,15 +6614,18 @@ public class ReportHandler extends org.onap.portalsdk.analytics.RaptorObject {
            if(row==null){
                sheet.createRow(rowNum);
            }
-           for(int colNum=region.getFirstColumn();colNum<=region.getLastColumn();colNum++){
-               XSSFCell currentCell = row.getCell(colNum); 
-              if(currentCell==null){
-                  currentCell = row.createCell(colNum);
-              }    
+           if(row!=null){
+                  for(int colNum=region.getFirstColumn();colNum<=region.getLastColumn();colNum++){
+                   XSSFCell currentCell = row.getCell(colNum); 
+                  if(currentCell==null){
+                      currentCell = row.createCell(colNum);
+                  }    
 
-              currentCell.setCellStyle(cellStyle);
+                  currentCell.setCellStyle(cellStyle);
 
+               }
            }
+           
        }
 
 
index c772d30..0d416ae 100644 (file)
@@ -927,8 +927,10 @@ public class ReportLoader extends org.onap.portalsdk.analytics.RaptorObject {
                        throw new ReportSQLException (ex.getMessage(), ex.getCause());
                } finally {
                           try {        
-                                       stmt.close();
-                                       connection.close();
+                                   if(stmt!=null)
+                                       stmt.close();
+                                   if(connection!=null)
+                                       connection.close();
                                        DbUtils.clearConnection(connection);
                                   } catch (SQLException ex) {
                                                throw new ReportSQLException (ex.getMessage(), ex.getCause());
index a9abd55..ecfd40a 100644 (file)
@@ -328,8 +328,8 @@ public class ReportSecurity extends org.onap.portalsdk.analytics.RaptorObject {
                        if (nvl(reportID).equals("-1"))
                                return;
        
-                       if (true) //todo: replace with proper check isPublic
-                               return;
+                       /*if (true) //todo: replace with proper check isPublic
+                               return;*/
        
                        if (userID.equals(ownerID))
                                return;
index a17e411..0ba8d4c 100644 (file)
@@ -1887,7 +1887,9 @@ public class ReportWrapper extends org.onap.portalsdk.analytics.RaptorObject {
                                        for (Iterator iter1 = getFormFieldList().getFormField().iterator(); iter1.hasNext();) {
                                                FormFieldType fft = (FormFieldType) iter1.next();
                                                String fieldDisplay = getFormFieldDisplayName(fft);
-                                               String fieldId = fft.getFieldId();
+                                               String fieldId = "";
+                                               if(fft!=null)
+                                                       fieldId = fft.getFieldId();
                                                if(!fft.getFieldType().equals(FormField.FFT_BLANK) && !fft.getFieldType().equals(FormField.FFT_LIST_MULTI) && !fft.getFieldType().equals(FormField.FFT_TEXTAREA)) {
                                                        String paramValue = Utils.oracleSafe(nvl(reportParamValues.getParamValue(fieldId)));
                                                        chartYAxis = Utils.replaceInString(chartYAxis, fieldDisplay, nvl(
index b8c681a..7884e61 100644 (file)
@@ -675,8 +675,10 @@ public class FormField extends org.onap.portalsdk.analytics.RaptorObject impleme
                                    break;
                                    
                                }
-                               fieldDefValue = nvl(idNamevalue.getId());
-                           fieldDefDisplay = nvl(idNamevalue.getName());                       
+                               if(idNamevalue!=null){
+                                       fieldDefValue = nvl(idNamevalue.getId());
+                                   fieldDefDisplay = nvl(idNamevalue.getName());         
+                               }                                            
                        }  else {
                        try {
                                                // -2 indicates to run the whole sql for matching value
@@ -700,7 +702,7 @@ public class FormField extends org.onap.portalsdk.analytics.RaptorObject impleme
                                                        fieldDefDisplay = nvl(fieldDefValue);
                                                }
                                                
-                                   if(oldSQL != null && !oldSQL.equals("")) {
+                                   if(oldSQL != null && !oldSQL.equals("") && lookup!=null) {
                                        ((IdNameSql)lookup).setSQL(oldSQL);
                                    }
 
index 2b01821..f9d58fe 100644 (file)
@@ -2815,7 +2815,7 @@ public List getMapMarkers(ReportData rd, org.onap.portalsdk.analytics.xmlobj.Rep
                                }
                        }
                if(!ff.hasPredefinedList) {
-            if(oldSQL != null && !oldSQL.equals("")) {
+            if(oldSQL != null && !oldSQL.equals("") && lookup!=null) {
                ((IdNameSql)lookup).setSQL(oldSQL);
             }
                }
@@ -2970,7 +2970,7 @@ public List getMapMarkers(ReportData rd, org.onap.portalsdk.analytics.xmlobj.Rep
                                                }
                                        }
                                if(!ff.hasPredefinedList) {
-                           if(oldSQL != null && !oldSQL.equals("")) {
+                           if(oldSQL != null && !oldSQL.equals("") && lookup!=null) {
                                ((IdNameSql)lookup).setSQL(oldSQL);
                            }
                                }
index 88dc98a..8404dc2 100644 (file)
@@ -91,7 +91,8 @@ public class SchedulerUtil {
                        stat.executeUpdate(sql);
                        
                } finally{
-                       stat.close();
+                       if(stat!=null)
+                               stat.close();
                        //conn.close();
                }
        }
@@ -113,7 +114,8 @@ public class SchedulerUtil {
                stat.executeUpdate();
        
        } finally{
-                       stat.close();
+               if(stat!=null)
+                       stat.close();
                }
                
     }
@@ -195,7 +197,8 @@ public class SchedulerUtil {
                        stat.executeUpdate();
                        
                } finally{
-                       stat.close();
+                       if(stat!=null)
+                               stat.close();
                        //conn.close();
                }
        }
index e9a03ee..cc038ca 100644 (file)
@@ -57,8 +57,9 @@ public class AntBuild {
        }
 
        public static void readManifest() {
+               JarFile jar = null;
                try {
-                       JarFile jar = new JarFile("./raptor_fusion.jar");
+                       jar = new JarFile("./raptor_fusion.jar");
                        Manifest manifest = jar.getManifest();
 
                        Attributes attribs = manifest.getMainAttributes();
@@ -80,6 +81,14 @@ public class AntBuild {
                } catch (IOException e) {
                        System.err.println("Cannot read jar-file manifest: "
                                        + e.getMessage());
+               } finally {
+                       if (jar != null) {
+                               try {
+                                       jar.close();
+                               } catch (IOException e) {
+                       throw new RuntimeException("Failed to close jar '");
+                               }
+                       }
                }
        }
 }
\ No newline at end of file
index ff5fc27..f544728 100644 (file)
@@ -93,7 +93,7 @@ public class Lookup extends FusionVo implements Serializable {
       boolean equivalent = false;
       
       Lookup lookup = (Lookup)obj;
-      if( lookup.getValue().equals(getValue()) &&  lookup.getLabel().equals(getLabel())) {
+      if(lookup!=null && lookup.getValue().equals(getValue()) &&  lookup.getLabel().equals(getLabel())) {
         equivalent = true;
       }  
 
index e3cb67c..1823262 100644 (file)
@@ -29,6 +29,8 @@ Version 1.4.0
 - PORTAL-42 Use OParent as parent POM
 - PORTAL-72 Address Sonar Scan code issues
 - PORTAL-90 Use approved ONAP license text
+- Portal-86 Remove application specific usages from tests and other files
+
 
 Version 1.3.0, 28 August 2017
 - Portal-19 Renaming the Group Id in the POM file to org.onap.portal.sdk
index b137700..69a25e6 100644 (file)
@@ -42,6 +42,7 @@ import java.io.PrintWriter;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.TreeSet;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -176,13 +177,13 @@ public class RoleController extends RestrictedBaseController {
                                                domainRole.addChildRole((Role) childRole);
                                        }
                                }
-                               if (role.getRoleFunctions() != null && role.getRoleFunctions().size() > 0) {
-                                       for (Object roleFunction : roleFunctions) {
-                                               domainRole.addRoleFunction((RoleFunction) roleFunction);
-                                       }
+                       }
+                       if (role.getRoleFunctions() != null && role.getRoleFunctions().size() > 0) {
+                               domainRole.setRoleFunctions(new TreeSet());
+                               for (Object roleFunction : roleFunctions) {
+                                       domainRole.addRoleFunction((RoleFunction) roleFunction);
                                }
                        }
-
                        roleService.saveRole(user.getOrgUserId(), domainRole);
 
                        String responseString = mapper.writeValueAsString(domainRole);
index 0028225..70875b6 100644 (file)
@@ -19,6 +19,8 @@ Version 1.4.0, <?day> <?month> 2017
 - PORTAL-72 Address Sonar Scan code issues
 - PORTAL-79 remove unwanted SDK left menu under Report-sample dashboard
 - PORTAL-90 Use approved ONAP license text
+- Portal-86 Remove application specific usages from tests and other files
+
 * Put new entries here *
 
 Version 1.3.0, 28 August 2017
index cc4d0e9..2cb5fb7 100644 (file)
   </appender>
  
   
-  <!-- ============================================================================ -->
-  <!--  EELF loggers; prefix com.att matches EELF implementation packages!          -->
-  <!-- ============================================================================ -->
 
-  <logger name="com.att.eelf" level="info" additivity="false">
+  <logger name="org.onap.eelf" level="info" additivity="false">
     <appender-ref ref="asyncEELF" />
   </logger>
 
-  <logger name="com.att.eelf.audit" level="info" additivity="false">
+  <logger name="org.onap.eelf.audit" level="info" additivity="false">
     <appender-ref ref="asyncEELFAudit" />
   </logger>
   
-  <logger name="com.att.eelf.debug" level="debug" additivity="false">
+  <logger name="org.onap.eelf.debug" level="debug" additivity="false">
     <appender-ref ref="asyncEELFDebug" />
   </logger>
        
-  <logger name="com.att.eelf.error" level="info" additivity="false">
+  <logger name="org.onap.eelf.error" level="info" additivity="false">
     <appender-ref ref="asyncEELFError" />
   </logger>
 
-  <logger name="com.att.eelf.metrics" level="info" additivity="false">
+  <logger name="org.onap.eelf.metrics" level="info" additivity="false">
     <appender-ref ref="asyncEELFMetrics" />
   </logger>      
     
index 48c2631..c0e1b6e 100644 (file)
 <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/style.css" >
 
 
-<!-- <script src= "app/fusion/external/ebz/angular_js/angular.js"></script> 
-<script src= "app/fusion/external/ebz/angular_js/angular-route.min.js"></script>
-<script src= "app/fusion/external/ebz/angular_js/angular-sanitize.js"></script>
-<script src= "app/fusion/external/ebz/angular_js/angular-cookies.js"></script>
-<script src= "app/fusion/external/ebz/angular_js/app.js"></script>
-<script src= "app/fusion/external/ebz/angular_js/gestures.js"></script>
-<script src="static/js/jquery-1.10.2.js"></script>
-<script src="app/fusion/scripts/modalService.js"></script>
-<script src="static/js/jquery.mask.min.js" type="text/javascript"></script>
-<script src="static/js/jquery-ui.js" type="text/javascript"></script>
-<script src="app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
-<script src="static/fusion/js/att_angular_gridster/ui-gridster-tpls.js"></script>
-<script src="static/fusion/js/att_angular_gridster/angular-gridster.js"></script>
-<script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
-<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/0.10.0/lodash.min.js"></script>
-<script src="app/fusion/external/angular-ui/ui-bootstrap-tpls-1.1.2.min.js"></script>
-<script src="app/fusion/scripts/services/userInfoService.js"></script>
-<script src="app/fusion/scripts/services/leftMenuService.js"></script> -->
-
-
 <jsp:include page="/WEB-INF/fusion/jsp/ebz/loginSnippet.html" ></jsp:include> 
 
 
                                        <div parentmenu-tabs mega-menu="true" menu-items="megaMenuDataObject" style="height:55px;">
                                                                <div style="float:left">
                                                                        <li class="megamenu__item" style="line-height:55px;" onclick="returnToPortal()">
-                                                                               <img src="app/fusion/external/ebz/images/att_logo.png" class="ATTLogo"   ></span>
-                                                                               <strong style="font-weight: 400 !important; font-family: "Omnes-ECOMP-W02", Arial !important; font-size: 18px;" id='returnPortal' >ECOMP Portal</strong>
+                                                                               <div ng-include src="'app/fusion/scripts/DS2-view-models/header-logo.html'"></div>             
                                                                        </li>                                                                           
                                                                        <div menu-tabs mega-menu="true" tab-name="item.text" menu-item="item" active-menu="activeClickMenu.x" 
                                                                        ng-repeat="item in megaMenuDataObject" style="font-size: 18px;" ng-mousedown="loadFavorites()" >
index 762cb42..13f0d02 100644 (file)
@@ -1 +1,127 @@
-text,frequency\rservice,98\rportal,70\rmanagement,70\rvirtual,56\rdesign,56\rVNF,56\rstudio,42\roperations,42\rinventory,42\rPOLO,42\rD2.0,42\rASDC,42\rrouter,28\rrestart,28\rprocess,28\rplatform,28\rmanage,28\rloop,28\rlicensing,28\rlicense,28\rintegrated,28\rflow-through,28\renable,28\rdata,28\rcontroller,28\rcontrol,28\rconfigure,28\rcomponent,28\rcommon,28\rasset,28\rapplication,28\rECOMP,28\rworkflow,14\rwaterfall,14\rvisual,14\rview,14\rvCTS,14\rutilization,14\ruser,14\rusage,14\rtroubleshoot,14\rtransformation,14\rtrack,14\rtopolgies,14\rtopics,14\rtime,14\rtickets,14\rthresholds,14\rtemplates,14\rstructures,14\rstandards-based,14\rsoftware,14\rreuse,14\rrepository,14\rreports,14\rrelease,14\rrecipes,14\rreal-time,14\rprovisioning,14\rproperties,14\rproject-based,14\rprocesses,14\rphysical,14\roversight,14\ropenl-loop,14\rnetwork,14\rmonitor,14\rmodeling,14\rmodel-driven,14\rmodel,14\rmessage,14\rmaximize,14\rmanually,14\rmachine,14\rlayer,14\rinteract,14\rinstances,14\rinitiate,14\rincrease,14\rimported,14\rimpacts,14\rhost,14\rfunction,14\rfeeds,14\rfeatures,14\rfaults,14\rextended,14\rengines,14\rengine,14\rdynamic,14\rdocument-driven,14\rdetermine,14\rdashboard,14\rcurrent,14\rcreation,14\rcreated,14\rcreate,14\rconfiguration,14\rcomposer,14\rcomponents,14\rcollective,14\rcertification,14\rbus,14\rbasis,14\ravailable,14\rautomation,14\rautomated,14\rassociated,14\rassignment,14\rappropriate,14\ragainst,14\raervice,14\radminstrators,14\ractivation,14\raction,14\rVMs,14\rVM,14\rVLAN,14\rSDN,14\rSDK,14\rSBG,14\rSAM,14\rRUBY,14\rPolicy,14\rPODS,14\rOps,14\rGFP,14\rF5FW,14\rDMaaP,14\rDCAE,14\rDBC,14\rCPADS,14\rAT&T,14\rAPP-C,14\rAOTS-TM,14\rALTS,14\rA&AI,14
+text,frequency
+service,98
+portal,70
+management,70
+virtual,56
+design,56
+studio,42
+operations,42
+inventory,42
+router,28
+restart,28
+process,28
+platform,28
+manage,28
+loop,28
+licensing,28
+license,28
+integrated,28
+flow-through,28
+enable,28
+data,28
+controller,28
+control,28
+configure,28
+component,28
+common,28
+asset,28
+application,28
+ECOMP,28
+workflow,14
+waterfall,14
+visual,14
+view,14
+workflow,14
+waterfall,14
+visual,14
+view,14
+utilization,14
+user,14
+usage,14
+troubleshoot,14
+transformation,14
+track,14
+topolgies,14
+topics,14
+time,14
+tickets,14
+thresholds,14
+templates,14
+structures,14
+standards-based,14
+software,14
+reuse,14
+repository,14
+reports,14
+release,14
+recipes,14
+real-time,14
+provisioning,14
+properties,14
+project-based,14
+processes,14
+physical,14
+oversight,14
+openl-loop,14
+network,14
+monitor,14
+modeling,14
+model-driven,14
+model,14
+message,14
+maximize,14
+manually,14
+machine,14
+layer,14
+interact,14
+instances,14
+initiate,14
+increase,14
+imported,14
+impacts,14
+host,14
+function,14
+feeds,14
+features,14
+faults,14
+extended,14
+engines,14
+engine,14
+dynamic,14
+document-driven,14
+determine,14
+dashboard,14
+current,14
+creation,14
+created,14
+create,14
+configuration,14
+composer,14
+components,14
+collective,14
+certification,14
+bus,14
+basis,14
+available,14
+automation,14
+automated,14
+associated,14
+assignment,14
+appropriate,14
+against,14
+aervice,14
+adminstrators,14
+activation,14
+action,14
+VMs,14
+VM,14
+VLAN,14
+SDK,14
+SBG,14
+SAM,14
+RUBY,14
+Policy,14
+PODS,14
+Ops,14
+GFP,14
+F5FW,14
index c6a1012..5f03cb9 100644 (file)
@@ -22,6 +22,8 @@ Version 1.4.0
 - PORTAL-42 Use OParent as parent POM
 - PORTAL-72 Address Sonar Scan code issues
 - PORTAL-90 Use approved ONAP license text
+- Portal-86 Remove application specific usages from tests and other files
+
 * Put new entries here *
 
 Version 1.3.0, 28 August 2017
index 0c94add..a1128ed 100644 (file)
@@ -57,7 +57,6 @@
 <script src="app/fusion/scripts/modalService.js"></script>
 <script src="static/js/jquery.mask.min.js" type="text/javascript"></script>
 <script src="static/js/jquery-ui.js" type="text/javascript"></script>
-<script src="app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
 <script src="static/fusion/js/att_angular_gridster/ui-gridster-tpls.js"></script>
 <script src="static/fusion/js/att_angular_gridster/angular-gridster.js"></script>
 <script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
index e4d2d1e..159932c 100644 (file)
@@ -49,7 +49,6 @@
 <script src="static/js/modalService.js"></script>
 <script src="static/js/jquery.mask.min.js" type="text/javascript"></script>
 <script src="static/js/jquery-ui.js" type="text/javascript"></script>
-<script src="app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
 <script src="static/fusion/js/att_angular_gridster/ui-gridster-tpls.js"></script>
 <script src="static/fusion/js/att_angular_gridster/angular-gridster.js"></script>
 <script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
index f99712e..f392ed5 100644 (file)
        
        <%@ include file="/WEB-INF/fusion/jsp/popup_modal.html" %>
        <script src="app/fusion/scripts/modalService.js"></script>
-       <script src="app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
        <script src="app/fusion/scripts/att_angular_gridster/ui-gridster-tpls.js"></script>
        <script src="app/fusion/scripts/att_angular_gridster/angular-gridster.js"></script>
        <script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
index 0c6105c..0d95e72 100644 (file)
@@ -704,7 +704,7 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
        
                },function(error){
                        console.log("roleControllerDS2 failed: " + error);
-                       reloadPageOnce();
+               //      reloadPageOnce();
                }).finally(function() {
                        $scope.showLoader=false; // Always execute this on both error and success
                });
@@ -727,7 +727,13 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
        })
 
        $scope.roleFnInit();
-       
+       $scope.updateRoleFunction = function(){
+               $scope.role.roleFunctions=[];
+               for(var i=0;i<$scope.ociavailableRoleFunctions.length;i++){
+                       if($scope.ociavailableRoleFunctions[i].selected)
+                               $scope.role.roleFunctions.push($scope.ociavailableRoleFunctions[i]);
+               }
+       }
        $scope.saveRole = function() {
                var errorMsg;
                $scope.showLoader=true; 
@@ -841,6 +847,9 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
                 }
                }
                });
+               modalInstance.result.finally(function () {
+                    $scope.updateRoleFunction();
+           });
        }
                
        $scope.addNewChildRoleFunctionModalPopup = function(data, role,info) {  
@@ -860,6 +869,9 @@ appDS2.controller('adminController', function($scope, $http,AdminService, $modal
                 }
                }
                });
+               modalInstance.result.finally(function () {
+                alert();
+           });
        }
        
        // remove role function associated to a role on Role Edit page
index efe2b74..2c00536 100644 (file)
@@ -25,8 +25,7 @@ appDS2.controller('selfProfileController', function($scope, $http, $modal, $rout
                $scope.pageType=2;
        }
        
-       $scope.sbcid=$scope.profile.sbcid;
-       $scope.managerAttuid=$scope.profile.managerAttuid;
+       
        
        /***********************************************************functions***********************************************/
        $scope.getProfileDetail = function(profileIdParam){
@@ -42,8 +41,7 @@ appDS2.controller('selfProfileController', function($scope, $http, $modal, $rout
                        $scope.ociTimeZones=JSON.parse($scope.data.timeZones);
                        $scope.ociCountries=JSON.parse($scope.data.countries);
                        stateList=JSON.parse($scope.data.stateList);
-                       $scope.sbcid=$scope.profile.sbcid;
-                       $scope.managerAttuid=$scope.profile.managerAttuid;
+                       
                        
                        if($scope.ociavailableRoles)
                                $.each($scope.ociavailableRoles, function(i, a){ 
@@ -100,9 +98,7 @@ appDS2.controller('selfProfileController', function($scope, $http, $modal, $rout
                        $scope.ociTimeZones=JSON.parse($scope.data.timeZones);
                        $scope.ociCountries=JSON.parse($scope.data.countries);
                        stateList=JSON.parse($scope.data.stateList);
-                       $scope.sbcid=$scope.profile.sbcid;
-                       $scope.managerAttuid=$scope.profile.managerAttuid;
-
+               
                        if($scope.ociavailableRoles)
                                $.each($scope.ociavailableRoles, function(i, a){ 
                                        var availableRole = a;
index a349678..2ae2b1b 100644 (file)
@@ -1,5 +1,6 @@
-angular.module('att.abs.helper', []);
+/*angular.module('att.abs.helper', []);
 angular.module('quantum', []);
 //angular.module('ui.bootstrap', []);
 appDS2=angular.module("workflowApp", ["ngRoute", 'ngMessages', 'ngCookies', 'b2b.att.tpls', 'ddh.att.tpls','ddh.att.dropdowns', 'ddh.att.switches', 'b2b.att.footer', 'b2b.att.header','gridster','ui.bootstrap']);
-
+*/
+var appDS2=angular.module("workflowApp", ["ngRoute", 'ngMessages','ngCookies','modalServices', 'ngCookies', 'b2b.att','gridster','ui.bootstrap','ui.bootstrap.modal']);
\ No newline at end of file
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-services/modalService.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/DS2-services/modalService.js
deleted file mode 100644 (file)
index cb85ffc..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-
-angular.module("template/modalsAndAlerts/window2.html", []).run(["$templateCache", function($templateCache) {
-         $templateCache.put("template/modalsAndAlerts/window.html",
-           "<div class=\"modalwrapper active {{windowClass}}\" ng-class=\"{'modal-landscape': isModalLandscape}\" role=\"dialog\" tabindex=\"-1\" aria-labelledby=\"{{title}}\" aria-describedby=\"{{content}}\">\n" +
-           "    <div class=\"modal fade {{sizeClass}}\">sdfdsfsfd</div>\n" +
-           "</div>");
-       }]);
-
-angular.module('ddh.att.modalsAndAlerts')
-.controller('modalsAndAlertsController', function ($scope, $modal, $log) {
-       $scope.name='eeee';
-    $scope.items = ['item1', 'item2', 'item3'];
-    $scope.dt = new Date("March 10, 2014 00:00:00");
-    $scope.helperText = "The date you selected is $date. Double tap to open calendar. Select a date to close the calendar.";
-    $scope.open = function (event) {
-        var modalInstance = $modal.open({
-            templateUrl: 'template/modalsAndAlerts/modal-demo.html',
-            controller: ModalInstanceCtrl,
-            sizeClass: 'modal-long-adjust', 
-            resolve: {
-                items: function () {
-                    return $scope.items;
-                }
-            }
-        });
-        modalInstance.result.then(function (selectedItem) {
-            $scope.selected = selectedItem;
-            event.target.focus();
-        }, function () {
-            $log.info('Modal dismissed at: ' + new Date());
-            event.target.focus();
-        });
-    };
-    $scope.ok = function () {
-        //add the  ok functionality
-        console.log("ok");
-    };
-    $scope.cancel = function () {
-        //add the cancel functionality
-        console.log("cancel");
-    };
-}) 
-var ModalInstanceCtrl = function ($scope, $modalInstance, items) {
-    $scope.items = items;
-    $scope.selected = {
-        item: $scope.items[0]
-    };
-    $scope.ok = function () {
-        $modalInstance.close($scope.selected.item);
-    };
-    $scope.cancel = function () {
-        $modalInstance.dismiss('cancel');
-    };
-};
index 48044da..1ecf192 100644 (file)
@@ -18,7 +18,7 @@
                                        <tr>
                                                <td>
                                                        <label class="btn-switch-label" tabindex="0" role="option"> 
-                                                               <input ng-click="activateRoleConfirmPopUp(roleFunction.selected,roleFunction);" type="checkbox" b2b-switches ng-model="roleFunction.selected" size-class="modal-small modal-alert">
+                                                               <input type="checkbox" b2b-switches ng-model="roleFunction.selected" size-class="modal-small modal-alert">
                                                        </label>
                                                </td>
                                                <td>{{roleFunction.name}}</td>
index 4959950..421e511 100644 (file)
@@ -243,7 +243,7 @@ plotHeader = function(attributes,cssType){
 plotElement = function(element) {
    
        if(element.left){
-         if(!element.id.startsWith("com.att.trinity.ue")){
+         if(!element.id.startsWith("ue")){
          left = element.left ;
          var thisColor = element.bgColor;
          var thisElement = new joint.shapes.basic.newRect({
@@ -325,7 +325,7 @@ plotElementIcon = function(element) {
          
          left = element.left ;
          uetop = element.top;
-         if(element.id.startsWith("com.att.trinity.ue")) {
+         if(element.id.startsWith("ue")) {
                 uetop = element.top - 30;
          } else {
                  uetop = element.top ;
@@ -368,7 +368,7 @@ plotElementIcon = function(element) {
                  });
              
          }
-         if(element.id.startsWith("com.att.trinity.ue")){
+         if(element.id.startsWith("ue")){
              thisElement.attr({
                       rect: {fill: 'white', style:{'pointer-events':'none'}},
                       image: { style:{'pointer-events':'none'}}
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/header.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/header.html
deleted file mode 100644 (file)
index e7616d9..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-<div style="position: relative; z-index: 999;">
-    <div class="headerContainer" id="headerContainer" ng-show="{{showHeader}}">
-        <div style="position: relative; z-index: 999;">
-            <div class="headerContainer" id="headerContainer">
-                <div id="megaMenuContainer" class="megaMenuContainer" style="margin-top: 0; overflow: visible;">
-                    <!--for mega Menu-->
-                    <!-- Mega Menu parent-tab directive with three models menu-items, active-sub-menu, active-menu -->
-                    <div id="topMenu" class="top-megamenu" ng-mouseleave="activeClickSubMenu.x.active=false; activeClickMenu.x.active=false" >
-                        <div style="float:left;width:100%;"parent-tab menu-items="megaMenuDataObject" active-sub-menu='activeClickSubMenu.x' active-menu='activeClickMenu.x'>
-                            <div parentmenu-tabs mega-menu="true" menu-items="megaMenuDataObject" style="height:55px;">
-                                <div style="float:left">
-                                    <li class="megamenu__item" style="line-height:55px;" ng-click="returnToPortal()">
-                                       
-                                        <strong        style="font-weight: 400 !important; font-family: clearview_att_bold !important; font-size: 18px;" >ECOMP Portal</strong>
-                                    </li>
-                                    <div menu-tabs mega-menu="true" tab-name="item.text" menu-item="item"
-                                         active-menu="activeClickMenu.x"
-                                         ng-repeat="item in megaMenuDataObject"
-                                         style="font-size: 18px;"
-                                         ng-mousedown="loadFavorites()">
-                                        <div parentmenu-tabs sub-menu="true" ng-show="activeClickMenu.x.active && item.active"
-                                             menu-items="activeClickMenu.x.children">
-
-                              <!-- Second level menu -->
-                                            <div menu-tabs sub-menu="true" tab-name="subItem.text"
-                                                 tab-url="subItem.url"  menu-item="subItem"
-                                                 ng-repeat="subItem in activeClickMenu.x.children | orderBy : 'column'" active-menu="activeClickSubMenu.x"
-                                                 sub-item-active="{{subItem.active}}" style="float:left;" aria-label="{{subItem.text}}"
-                                                 ng-mouseenter="submenuLevelAction(subItem.text,subItem.column)"
-                                                 ng-mouseleave="submenuLevelAction(subItem.text,subItem.column)"
-                                                 ng-click="submenuLevelAction(subItem.text,subItem.column)"  >
-                                                <i ng-if="subItem.text=='Favorites'" id="favorite-star"
-                                                   class="icon-star favorites-icon-active">
-                                                </i>
-                                                                                       </div>
-                                                <div class="sub__menu" ng-mouseleave="activeClickSubMenu.x.active=false" >
-                                                    <ul ng-show="activeClickSubMenu.x.active"  role="menubar" class="columns">
-                                                        <!-- Third level menu -->
-                                                        <div menu-tabs
-                                                             menu-item="subItem"
-                                                             class="columns-div"
-                                                             ng-repeat="subItem in activeClickSubMenu.x.children | orderBy : 'column'"
-                                                             ng-show="activeClickSubMenu.x.active">
-
-                                                            <i id="favorite-selector-third-level"
-                                                               ng-show="isUrlFavorite(subItem.menuId)==false"
-                                                               class="icon-star favorites-icon-inactive"
-                                                               ng-if="subItem.url.length > 1">
-                                                            </i>
-                                                            <i id="favorite-selector-third-level"
-                                                               ng-show="isUrlFavorite(subItem.menuId)"
-                                                               class="icon-star favorites-icon-active"
-                                                               ng-if="subItem.url.length > 1">
-                                                            </i>
-                                                                                                                       <span class="title" aria-label="{{subItem.text}}"
-                                                                  ng-click="goToUrl(subItem)">{{subItem.text}}</span>
-                                                            <!-- Fourth level menus -->
-                                                            <div att-links-list="">
-                                                                <i id="favorite-selector-fourth-level"
-                                                                   class="icon-star favorites-icon-inactive"
-                                                                   ng-show="isUrlFavorite(tabValue.menuId)==false"
-                                                                   ng-if="tabValue.url.length > 1">
-
-                                                                </i>
-                                                                <i id="favorite-selector-fourth-level"
-                                                                   class="icon-star favorites-icon-active"
-                                                                   ng-show="isUrlFavorite(tabValue.menuId)"
-                                                                   ng-if="tabValue.url.length > 1">
-
-                                                                </i>
-                                                                                   <span role="menuitem" att-links-list-item=""
-                                                                      ng-repeat="tabValue in subItem.children"
-                                                                      ng-click="goToUrl(tabValue)"
-                                                                      att-accessibility-click="13,32"
-                                                                      ng-class="{'disabled': tabValue.disabled}">{{tabValue.text}}</span>
-                                                            </div>
-                                                            <hr ng-show="!$last"/>
-                                                        </div>
-                                                    </ul>
-                                                                       <!-- Favorites level menu -->
-                                                    <div class="favorites-window" ng-show='favoritesWindow' ng-mouseleave="hideFavoritesWindow()">
-                                                        <div id="favorites-menu-items" ng-show="showFavorites">
-                                                            <div ng-repeat="subItem in favoritesMenuItems"
-                                                                 att-links-list=""
-                                                                 style='display: inline'>
-                                                                <i id="favorite-selector-favorites-list"
-                                                                   class="icon-star favorites-icon-active"
-                                                                >
-                                                                </i>
-                                                                <a id="favorites-list" aria-label="{{subItem.text}}"
-                                                                   ng-click="goToUrl(subItem)"
-                                                                   style="margin-left: 3px; margin-right: 20px; text-decoration: none; color: #666666;">
-                                                                    {{subItem.text}}
-                                                                </a>
-                                                            </div>
-                                                            <div>
-                                                                <br>
-                                                                <p style='font-weight: 400; font-family: clearview_att_bold !important;
-                                                                                                                           font-size: 18px; text-align: center; background-color: lightgray;
-                                                                                                                           width: 400px; margin-left: 25%; margin-right: 25%;'>
-                                                                    Manage favorites on ECOMP Portal.
-                                                                </p>
-                                                            </div>
-                                                        </div>
-                                                        <!-- Favorites when empty -->
-                                                        <div id="favorites-empty" ng-show="emptyFavorites" class="favorites-window-empty">
-                                                            <div>
-                                                                <img src="app/fusion/external/ebz/images/no_favorites_star.png">
-                                                                <p class='favoritesLargeText'>No Favorites</p>
-                                                                <p class='favoritesNormalText'>Manage favorites on ECOMP Portal.</p>
-                                                            </div>
-                                                        </div>
-                                                    </div>
-                                                </div>
-                                            </div>
-                                        </div>
-                                    </div >
-                                    <li class="megamenu__item" style="line-height:55px;" ng-if="loadMenufail">
-                                        <strong        style="font-weight: 400 !important; font-family: clearview_att_bold !important; font-size: 18px;" >Unable to load menus</strong>
-                                    </li>
-                                    <div  style="float:right">
-                                           <li id="bcLoginSnippet" class="megamenu__item" style="width: 140px;" >
-                                               <div  popover="loginSnippet.html"  aria-label="Login Snippet"
-                                                     referby="loginSnippet" att-accessibility-click="13,32" popover-style="\" popover-placement="below" style="width: 200px;">
-                                                   <div class="icon-user-small login-snippet-icon"></div>
-                                                   <div class="login-snippet-text" style="display: inline-block; font-size:12px; margin-left:5px;overflow: hidden; max-height: 31px; overflow: hidden; max-height: 31px;   max-width:120px; padding-top: 0px; margin-top: 0px; white-space: nowrap;">{{userFirstName}}</div>
-                                               </div>
-                                           </li>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
-                        <div style="clear: both"></div>
-                    </div>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-<script type="text/ng-template" id="loginSnippet.html">
-    <div style="line-height: normal; right: 167px; min-height: 200px; height: auto; width: auto; " ng-controller="loginSnippetCtrl" >
-        <div id="reg-header-snippet">
-            <div class="reg-profilePicture" style="min-height: 215px; width: auto; " id="reg-profile-links">
-                <div id="reg-profileImage">
-                    <div style="clear: both; height: 80px; position: relative; width: 80px;">
-                        <span style="  background-position: -1px -1px; height: 81px;left: 0;position: absolute;top: 0;width: 81px;">&nbsp;</span>
-                    </div>
-                </div>
-                <div id="reg-logout-div">
-                    <a class="reg-logout-btn" href="logout.htm">Log Out</a>
-                </div>
-            </div>
-            <div tabindex="0" class="reg-profileDetails" id="reg-profiledetails-id">
-                <ul class="reg-Details-table" style="list-style: none;">
-                    <li><div class="reg-userName-table"><div id="reg-userName-table-row"><div id="reg-userName-table-cell"><h3 class="att-global-fonts" style="font-size:18px !important;" id="reg-userName">{{userProfile.fullName}}&nbsp;</h3><span class="visuallyhidden">.</span></div></div></div></li>
-                    <li><div class="reg-userEmail-label"><span class="reg-userEmail-label-spn">EMAIL<span class="visuallyhidden">:</span></span></div></li>
-                    <li><div class="reg-userEmail-value"><span class="reg-userEmail-value-spn">{{userProfile.email}}<span class="visuallyhidden">.</span></span></div></li>
-                 </ul>
-            </div>
-        </div>
-    </div>
-</script>
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/left_menu.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/scripts/view-models/left_menu.html
deleted file mode 100644 (file)
index ad4e5d9..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
- <div class="license-notification">
-       <a href="javascript:void(0)" style="background-color:#bbb;" class="button button--small" tooltip="Please contact ECOMP Portal team to get the license" tooltip-placement="below" tooltip-style="light"  tooltip-popup-delay="500" >
-               <span style="">{{app_name_full}}</span>
-       </a>                                                                    
-</div>
-<div ng-cloak>
-       <span ng-style="adjustHLeftMenu('burgerIcon')" style="z-index:998; position:fixed; left:0%; font-size:35px; margin-left:10px;text-decoration:none;">
-               <a ng-click="toggleDrawer();isOpen = !isOpen" href="javascript:void(0);" class="arrow-icon-left" >
-               <span class="icon-hamburger"></span></a>        
-               <span ng-init="isOpen = true" ng-show="isOpen" style="font-size:16px; position:relative; top:-8px; left:-15px;">&nbsp&nbsp&nbsp {{app_name}}</span>
-       </span>
-       <div att-drawer drawer-slide="left" drawer-custom-top="{{drawer_custom_top}}px" drawer-size="200px" drawer-open="drawerOpen" drawer-custom-height="100%" >
-               <div ng-style="adjustHLeftMenu('leftMenu')">
-                   <div class="attDrawer" style="z-index:998">   
-                       <div class="appLeftMenuAccordDiv">
-                               <accordion close-others="true" css="att-accordion--no-box">
-                                               <accordion-group ng-repeat="parent in leftMenuItems" heading="{{parent.parentLabel}}" parent-link="{{parent.parentAction}}" image-source="{{parent.parentImageSrc}}" child-length="{{parent.childItemList.length}}" is-open="parent.open">
-                                                       <div ng-repeat="subMenu in parent.childItemList" style="font-size:12px; margin-left:10px;">
-                                               <a href="{{subMenu.action}}" style="font-size:12px; color:#666666;" >{{subMenu.label}}</a>
-                                                       </div>
-                          </accordion-group>
-                                       </accordion>
-                               </div>
-                   </div>
-               </div>  
-       </div>
-</div>
\ No newline at end of file
index 8fecfb7..ecdccb6 100644 (file)
                <script src="app/fusion/scripts/modalService.js"></script>
                <script src="app/fusion/scripts/view-models/reportdashboard-page/src/app/report_whitelist.js"></script>
        <!-- Controller js -->
-<!--   <script src="app/fusion/scripts/controllers/fn_menu_add_popup_controller.js"></script>
-               <script src="app/fusion/scripts/controllers/admin_menu_edit.js"></script>
-               <script src="app/fusion/scripts/controllers/profile-search-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/profile-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/post-search-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/role-list-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/role-function-list-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/rolefunctionpopupController.js"></script>
-               <script src="app/fusion/scripts/controllers/modelpopupController.js"></script>
-               <script src="app/fusion/scripts/controllers/jcs-admin-controller.js"></script> 
-               <script src="app/fusion/scripts/controllers/broadcast-list-controller.js"></script> 
-               <script src="app/fusion/scripts/controllers/broadcast-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/usage-list-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/collaborate-list-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/role-controller.js"></script>
-               <script src="app/fusion/scripts/controllers/rolepopupmodelController.js"></script>-->
-       <!-- Header and Footer -->
-               <!-- <script src="app/fusion/external/ebz/js/attHeaderSnippet.js"></script>
-               <script src="app/fusion/external/ebz/js/attHeader.js"></script> -->
                <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/header.css">
                <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/footer.css" >
                <script src="app/fusion/scripts/directives/footer.js"></script>
index 3ce348b..daf6441 100644 (file)
             hark: 'https://cdn.webrtc-experiment.com/hark.js',
             firebase: 'https://cdn.webrtc-experiment.com/firebase.js',
             firebaseio: 'https://webrtc-signaling.firebaseio.com/',
-            
-            muted: 'static/fusion/images/ATT_Labs_Logo.png',
+           
            
             getConnectionStats: 'https://cdn.webrtc-experiment.com/getConnectionStats.js',
             FileBufferReader: 'https://cdn.webrtc-experiment.com/FileBufferReader.js'
             username: 'ambient'
         });
         
-        /* CHANGED: Fusion: These are non-att servers for testing purposes
-
-                iceServers.push({
-            url: 'stun:stun.l.google.com:19302'
-        });
-
-        iceServers.push({
-            url: 'stun:stun.anyfirewall.com:3478'
-        });
-
-        iceServers.push({
-            url: 'turn:turn.bistri.com:80',
-            credential: 'homeo',
-            username: 'homeo'
-        });
-
-        iceServers.push({
-            url: 'turn:turn.anyfirewall.com:443?transport=tcp',
-            credential: 'webrtc',
-            username: 'webrtc'
-        });
 
-               */
          //  CUSTOM CODE  // 
         connection.iceServers = iceServers;
 
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/global.css b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusion/styles/global.css
deleted file mode 100644 (file)
index 25d1c57..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-body{
-       margin: 0;
-       padding: 0;
-       padding-bottom: 0 !important;
-       min-width: 980px;
-}
-label {
-    display: inline-block;
-    margin-bottom: 5px;
-    font-weight: 700;
-}
-.footer-columns label {
-       color: #009fdb;
-       font-size: 18px;
-}
-
-.b2b-header-tabs .header__item.profile .profile-info{
-    border: 1px solid #d3d3d3;
-    max-width:400px;
-    width:300px;
-    padding: 20px;
-    pointer-events: auto;
-    -webkit-box-sizing: border-box;
-    -moz-box-sizing: border-box;
-    box-sizing: border-box;
-    font-size: 16px;
-    -webkit-transition: opacity .2s ease-out;
-    -moz-transition: opacity .2s ease-out;
-    transition: opacity .2s ease-out;
-    background: #fff;
-    border-radius: 5px;
-    box-shadow: 0 5px 6px 0 rgba(0,0,0,.25);
-    color: #333;
-    line-height: 20px;
-    position: absolute;
-    left:-123px;
-    top:38px;
-    display:none;
-}
-.b2b-header-tabs .header__item.profile .profile-info.open{
-  display:block;
-}
-.b2b-header-tabs .header__item.profile .profile-info label{
-    font-family:Omnes-ATT-W02;
-    display:block;
-    margin-top:20px;
-    font-size: 16px;
-}
-.b2b-header-tabs .header__item.profile .profile-info span{
-    font-family:Omnes_ATTW02Medium;
-    display:block;
-}
-
-.b2b-header-tabs .selectWrap button.awd-select{
-    height:36px;
-    line-height:31px;
-    font-size:1rem;
-    display:inline-block;
-}
-/* @font-face {
-       font-family: atticons;
-       src: url(../fonts/atticons.eot?#iefix) format("embedded-opentype"), url(../fonts/atticons.woff) format("woff"), url(../fonts/atticons.ttf) format("truetype"), url(../fonts/atticons.svg#atticons) format("svg");
-       font-weight: normal;
-       font-style: normal;
-} */
-[class*=" icon-"], [class^=icon-] {
-    font-family: atticons;
-    speak: none;
-    font-style: normal;
-    font-weight: 400;
-    font-variant: normal;
-    text-transform: none;
-    line-height: 40px;
-    -webkit-font-smoothing: antialiased;
-    -moz-osx-font-smoothing: grayscale;
-}
-
-.icon-user-small {
-    display: inline-block;
-    vertical-align: middle;
-    width: 20px;
-    font-size: 56px;
-    margin-right: 16px;
-    float: left;
-}
-.icon-user-small:before {
-    content: "\e60b";
-}
-.icon-local-search {
-    content: "\e685";
-}
-.header-container {
-       width: 100%;
-       float: left;
-}
-.menu-container {
-       width: 250px;
-       float: left;
-}
-.content-container {
-       float: left;
-       min-height: 650px;
-       width: calc(100% - 250px);
-}
-.footer-container {
-       float:left;
-       width: 100%;
-}
-.profile-info {
-    font-size: 16px;
-    color: #333;
-    line-height: 20px;
-}
-h6 {
-    font-weight: bold;
-    font-size: 1.125em;
-    line-height: 1.3333333333;
-}
-
-.icon-primary-accordion-plus, .icon-primary-accordion-minus {
-       float: right;
-       line-height: 20px;
-}
-.left-menu-collapsed {
-       width: 0px !important;
-}
-.menu-icon {
-       float: left;
-       line-height: 20px;
-       width: 25px;
-    height: 20px;
-    margin-top: -10px;
-}
-.b2b-footer-wrapper {
-       width: 100%;
-    background-color: #222;
-    height: 88px;
-}
-.icon-primary-right {
-       margin-left: -11px;
-}
-@media (max-width: 768px) {
-       .divider-bottom-footer .footerLogo {
-               margin: 10px 0 0 0px;   
-       }
-       .b2b-header-tabs .header__items {
-               width: 700px;
-       }
-}
-@media screen and (min-device-width: 769px) and (max-width: 1200px) {
-       .b2b-header-tabs .header__items {
-               width: 700px;
-       }
-}
-@media screen and (max-width: 1100px) {
-       .b2b-header-tabs .header__item.profile {
-           float: right;
-       }
-}
-@media screen and (min-width: 768px) and (max-width: 1105px) {
-       table th, table td{
-               padding: 19px 10px;
-       }
-}
-.icon-spinner {
-    animation: spinner 1s linear infinite;
-    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2036%2036%22%3E%0A%20%20%3Cpath%20fill%3D%22%230569AE%22%20d%3D%22M18%2036c-2.7%200-4.8-.6-6.2-1C8%2033.6%205.4%2031.1%204%2029.3%202.7%2027.6.9%2024.7.3%2020.8c-.3-2.1-.5-5.4.9-9.1C3%206.8%206.4%204.1%208.3%202.8%2011.8.5%2015.4%200%2017.8%200l.1%204.3c-1.8%200-4.6.4-7.3%202.2-1.4.9-4%203-5.4%206.7-1%202.8-.9%205.3-.7%206.9.5%203%201.8%205.1%202.9%206.4%201.1%201.4%203%203.2%206%204.3%201.5.5%204.6%201.3%208.3.3%203-.8%205-2.5%206.2-3.7%201.4-1.4%202.4-3.2%203.1-5%20.4-1.3.9-3.3.6-5.8-.5-4.2-2.8-7.1-4.2-8.5L30.5%205c1.8%201.8%204.8%205.6%205.4%2011.1.3%203.2-.3%205.9-.9%207.6-.8%202.4-2.2%204.8-4%206.7-1.5%201.6-4.2%203.8-8.1%204.9-1.8.5-3.4.7-4.9.7z%22%2F%3E%0A%20%20%3Cpath%20fill%3D%22%23FFF%22%20d%3D%22M17.8%202.2c1.8%200%204.9.3%208.2%202.2%201.2.7%202.2%201.5%203%202.3%22%2F%3E%0A%20%20%3Cpath%20fill%3D%22%23F2F2F3%22%20d%3D%22M27.5%208.1c-.8-.8-1.7-1.4-2.6-1.9-2.1-1.2-4.5-1.9-7.1-1.9V0c3.3%200%206.5.9%209.3%202.4%201.2.8%202.3%201.6%203.4%202.6l-3%203.1z%22%2F%3E%0A%3C%2Fsvg%3E");
-    height: 50px;
-    width: 50px;
-}
-.loader-container {
-       position: fixed;
-       top: calc(50vh - 25px);
-       left: calc(50vw - 25px);
-}
-.loader-container i {
-       float: left;
-}
\ No newline at end of file
index 2a740ec..0995a99 100644 (file)
     background-color:white;
 }
 
-.scrolling-table #att-scroll-table-content{
-    height:200px;
-    position: absolute !important;
-    width:700px;
-    padding-left: 0px;
-    padding-top: 0px;
-    padding-bottom: 0px;
-    padding-right:5px;
-}
-
 .workflow-popup-body{
        position: relative;
     padding: 30px;
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusionapp/drools/view-models/droolsSinglePage.html b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/app/fusionapp/drools/view-models/droolsSinglePage.html
deleted file mode 100644 (file)
index a1d0a5b..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<!DOCTYPE html>
-<html>
-       <head>
-               <meta http-equiv="X-UA-Compatible" content="IE=edge" />
-               <meta http-equiv="cache-control" content="max-age=0" />
-           <meta http-equiv="cache-control" content="no-cache" />
-           <meta http-equiv="expires" content="0" />
-           <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
-           <meta http-equiv="pragma" content="no-cache" />
-       <!-- CSS -->
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/fn-ebz.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/demo.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/base.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/btn.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/dtpk.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/frms.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/sldr.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/style.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/sandbox/styles/tbs.css" >
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/portal_ebz_header.css">
-               <link rel="stylesheet" type="text/css" href="static/fusion/css/jquery-ui.css">
-       <!-- Basic AngularJS -->
-               <script src= "app/fusion/external/ebz/angular_js/angular.js"></script> 
-               <script src= "app/fusion/external/ebz/angular_js/angular-sanitize.js"></script> 
-               <script src= "app/fusion/external/ebz/angular_js/angular-route.min.js"></script>
-               <script src= "app/fusion/external/ebz/angular_js/app.js"></script> 
-               <script src= "app/fusion/external/ebz/angular_js/gestures.js"></script>
-               <script src= "app/fusion/external/ebz/sandbox/att-abs-tpls.js" type="text/javascript"></script>
-               <script src="app/fusion/external/angular-ui/ui-bootstrap-tpls-1.1.2.min.js"></script>
-               <script src= "app/fusion/external/ebz/angular_js/angular-cookies.js"></script>
-       <!-- jQuery --> 
-               <script src="static/js/jquery-1.10.2.js"></script>
-               <script src="static/js/jquery.mask.min.js" type="text/javascript"></script>
-               <script src="static/js/jquery-ui.js" type="text/javascript"></script>
-       <!-- AngularJS Gridster -->
-               <script src="static/fusion/js/att_angular_gridster/ui-gridster-tpls.js"></script>
-               <script src="static/fusion/js/att_angular_gridster/angular-gridster.js"></script>
-       <!-- AngularJS Config -->
-               <script src= "app/fusion/external/ebz/angular_js/app.js"></script>
-               <script src= "app/fusion/external/ebz/angular_js/checklist-model.js"></script>
-       <!-- Utility -->
-               <script src="app/fusion/scripts/modalService.js"></script>
-       <!-- Controller js -->
-               <script src="app/fusion/scripts/controllers/rolefunctionpopupController.js"></script>
-               <script src="app/fusion/scripts/controllers/modelpopupController.js"></script>
-               <script src="app/fusionapp/drools/controller/droolsController.js"></script>
-               <script src="app/fusionapp/drools/controller/drools-list-controller.js"></script>
-               <script src="app/fusionapp/drools/controller/drools-view-controller.js"></script>
-       <!-- Header and Footer -->
-               <script src="app/fusion/external/ebz/js/attHeaderSnippet.js"></script>
-               <script src="app/fusion/external/ebz/js/attHeader.js"></script>
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/header.css">
-               <link rel="stylesheet" type="text/css" href="app/fusion/external/ebz/ebz_header/footer.css" >
-               <script src="app/fusion/scripts/directives/footer.js"></script>
-               <script src="app/fusion/external/ebz/js/footer.js"></script>
-               <script src="app/fusion/scripts/directives/header.js"></script>
-               <script src="app/fusion/scripts/directives/leftMenu.js"></script>
-               <script src="app/fusion/scripts/services/leftMenuService.js"></script>
-               
-       <!-- Services -->
-               <script src="app/fusionapp/drools/services/droolsService.js"></script>
-               <script src="app/fusion/scripts/services/userInfoService.js"></script>                                                                          
-       </head>
-       <body class="appBody" ng-app="abs">
-               <div ng-include src="'app/fusion/scripts/view-models/profile-page/popup_modal_rolefunction.html'"></div>
-               <div ng-include src="'app/fusion/scripts/view-models/profile-page/popup_modal.html'"></div>
-               <div q-header></div>
-               <div q-menu class="appLeftMenu"></div>
-               <div id="rightContentAdmin" ng-view style="min-height: 450px;margin-top:-50px;margin-left:210px;margin-right:10px;"></div>              
-               <div q-footer class="appFooter"></div>
-       </body>
-</html>
\ No newline at end of file
index 762cb42..13f0d02 100644 (file)
@@ -1 +1,127 @@
-text,frequency\rservice,98\rportal,70\rmanagement,70\rvirtual,56\rdesign,56\rVNF,56\rstudio,42\roperations,42\rinventory,42\rPOLO,42\rD2.0,42\rASDC,42\rrouter,28\rrestart,28\rprocess,28\rplatform,28\rmanage,28\rloop,28\rlicensing,28\rlicense,28\rintegrated,28\rflow-through,28\renable,28\rdata,28\rcontroller,28\rcontrol,28\rconfigure,28\rcomponent,28\rcommon,28\rasset,28\rapplication,28\rECOMP,28\rworkflow,14\rwaterfall,14\rvisual,14\rview,14\rvCTS,14\rutilization,14\ruser,14\rusage,14\rtroubleshoot,14\rtransformation,14\rtrack,14\rtopolgies,14\rtopics,14\rtime,14\rtickets,14\rthresholds,14\rtemplates,14\rstructures,14\rstandards-based,14\rsoftware,14\rreuse,14\rrepository,14\rreports,14\rrelease,14\rrecipes,14\rreal-time,14\rprovisioning,14\rproperties,14\rproject-based,14\rprocesses,14\rphysical,14\roversight,14\ropenl-loop,14\rnetwork,14\rmonitor,14\rmodeling,14\rmodel-driven,14\rmodel,14\rmessage,14\rmaximize,14\rmanually,14\rmachine,14\rlayer,14\rinteract,14\rinstances,14\rinitiate,14\rincrease,14\rimported,14\rimpacts,14\rhost,14\rfunction,14\rfeeds,14\rfeatures,14\rfaults,14\rextended,14\rengines,14\rengine,14\rdynamic,14\rdocument-driven,14\rdetermine,14\rdashboard,14\rcurrent,14\rcreation,14\rcreated,14\rcreate,14\rconfiguration,14\rcomposer,14\rcomponents,14\rcollective,14\rcertification,14\rbus,14\rbasis,14\ravailable,14\rautomation,14\rautomated,14\rassociated,14\rassignment,14\rappropriate,14\ragainst,14\raervice,14\radminstrators,14\ractivation,14\raction,14\rVMs,14\rVM,14\rVLAN,14\rSDN,14\rSDK,14\rSBG,14\rSAM,14\rRUBY,14\rPolicy,14\rPODS,14\rOps,14\rGFP,14\rF5FW,14\rDMaaP,14\rDCAE,14\rDBC,14\rCPADS,14\rAT&T,14\rAPP-C,14\rAOTS-TM,14\rALTS,14\rA&AI,14
+text,frequency
+service,98
+portal,70
+management,70
+virtual,56
+design,56
+studio,42
+operations,42
+inventory,42
+router,28
+restart,28
+process,28
+platform,28
+manage,28
+loop,28
+licensing,28
+license,28
+integrated,28
+flow-through,28
+enable,28
+data,28
+controller,28
+control,28
+configure,28
+component,28
+common,28
+asset,28
+application,28
+ECOMP,28
+workflow,14
+waterfall,14
+visual,14
+view,14
+workflow,14
+waterfall,14
+visual,14
+view,14
+utilization,14
+user,14
+usage,14
+troubleshoot,14
+transformation,14
+track,14
+topolgies,14
+topics,14
+time,14
+tickets,14
+thresholds,14
+templates,14
+structures,14
+standards-based,14
+software,14
+reuse,14
+repository,14
+reports,14
+release,14
+recipes,14
+real-time,14
+provisioning,14
+properties,14
+project-based,14
+processes,14
+physical,14
+oversight,14
+openl-loop,14
+network,14
+monitor,14
+modeling,14
+model-driven,14
+model,14
+message,14
+maximize,14
+manually,14
+machine,14
+layer,14
+interact,14
+instances,14
+initiate,14
+increase,14
+imported,14
+impacts,14
+host,14
+function,14
+feeds,14
+features,14
+faults,14
+extended,14
+engines,14
+engine,14
+dynamic,14
+document-driven,14
+determine,14
+dashboard,14
+current,14
+creation,14
+created,14
+create,14
+configuration,14
+composer,14
+components,14
+collective,14
+certification,14
+bus,14
+basis,14
+available,14
+automation,14
+automated,14
+associated,14
+assignment,14
+appropriate,14
+against,14
+aervice,14
+adminstrators,14
+activation,14
+action,14
+VMs,14
+VM,14
+VLAN,14
+SDK,14
+SBG,14
+SAM,14
+RUBY,14
+Policy,14
+PODS,14
+Ops,14
+GFP,14
+F5FW,14
diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/js/search.js b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/static/js/search.js
deleted file mode 100644 (file)
index c7b7ba6..0000000
+++ /dev/null
@@ -1,830 +0,0 @@
-
-// var app=angular.module("abs", ["att.abs"]);
-  
-  
- app.directive('afterRender', [ function() {
-    var def = {
-        restrict : 'A', 
-        terminal : true,
-        transclude : false,
-        link : function(scope, element, attrs) {
-            if (attrs) { scope.$eval(attrs.afterRender) }
-            scope.$emit('onAfterRender')
-        }
-    };
-    return def;
-    }]);
-    
- app.directive("search", function() {
-       return {
-               // replace custom element with html5 markup
-           template: '<div >'    
-               //+ '<c:set var="zeroidx" value="0" />' 
-               + '<div ng-repeat="a in optionsSizeArray track by $index">  ' 
-               + '<div id="{{sId}}{{a}}" >    ' 
-               + '             <div class="form-field form-field__glued pull-left size-onefourth" style=" width:25%;" >' 
-               + '                     <div att-search="options" ng-model="valueOptions[a]" placeholder="Select"></div>   '                                                              
-               + '      </div> ' 
-               + '      <div class="form-field form-field__glued pull-left size-onefourth" style="  width:25%;">   '       
-               + '           <div att-search="operators" ng-model="compareOptions[a]" placeholder="Select"></div> ' 
-               + '       </div> ' 
-               + '      <div class="form-field form-field__glued pull-left size-onefourth" style="  width:25%;">' 
-               + '          <input ng-model="searchValue[a]" type="text" placeholder="What are you looking for?" style=" border-radius:0px 5px 5px 0px" >  '                      
-               + '      </div>  ' 
-               + '      <div class="form-field form-field__glued pull-left size-onefourth" style="  width:25%; padding-left:5px;"> '   
-               + '                     <button ng-click="remove(sId,a)" class="myzkBtn"        >-</button>' 
-               + '             <button ng-if="$index==0" ng-click="addSearch(sId,a,optionsSizeArray)" class="myzkBtn"  >+</button>   '   
-               + '                     <button ng-if="$index==0" ng-click="updateparent({filter: { valueOptions: valueOptions, compareOptions: compareOptions, searchValue : searchValue }  })" class="myzkBtn" style="background-image:url(static/ebz/images/searchIcon.png);  background-repeat: no-repeat; background-position: center;">&nbsp;</button>'           
-               + '       </div>'  
-               + '     </div>  '             
-               + '</div>' 
-               + '</div> ' ,
-           replace: true,
-           // restrict usage to element only since we use attributes for APIs
-           restrict: 'EA',
-           require: 'ngModel',
-           // new isolate scope
-           scope: {
-               mSearch : '=ngModel'
-               ,updateparent: '&'
-               ,jsonForOption : '='
-               ,jsonForOperator : '='  
-               ,searchId : '=' 
-             },
-            link: function(scope, iElement, iAttrs){ 
-                scope.optionsSizeArray = [];
-                scope.sId = '';
-                //scope.options = JSON.parse(JSON.stringify(iAttrs.jsonForOption));
-                //scope.operators = JSON.parse(iAttrs.operators);
-                
-                scope.$watch("jsonForOption", function(newval, oldval) {
-                        scope.options = JSON.parse(JSON.stringify(oldval));
-                        console.log('1');
-                        scope.evalRepeatIndex(scope.options.length);
-                        console.log('2');
-
-                       });
-                
-                scope.evalRepeatIndex = function(size){
-                       for(index = 0; index < size; index++) {
-                        scope.optionsSizeArray.push(index);
-                       }
-                };
-                
-                scope.$watch("jsonForOperator", function(newval, oldval) {
-                        scope.operators = JSON.parse(JSON.stringify(oldval));
-               
-                       });
-                
-                if(getParameterByName("search")!=null && getParameterByName("search")!=''){
-                        if((getParameterByName("location")!=null && getParameterByName("location")!='')){
-                                scope.searchValue[0]=JSON.parse(JSON.stringify(getParameterByName("location")));
-                                scope.valueOptions[0]={index:0,value:'Location Name',title:"Location Name",alias:'Location Name'};
-                                scope.compareOptions[0]={index:1,value:'Contains',title:"Contains",alias:'Contains'};
-                        }else if((getParameterByName("userLastName")!=null && getParameterByName("userLastName")!='')){
-                                scope.searchValue[0]=JSON.parse(JSON.stringify(getParameterByName("userLastName")));
-                                scope.valueOptions[0]= {index: 0, value: 'Last Name', title: 'Last Name', alias:'Last Name'};
-                                scope.compareOptions[0]={index:1,value:'Contains',title:"Contains",alias:'Contains'};
-                        }
-                }
-                scope.$watch("searchId", function(newval, oldval) {
-                        scope.sId = oldval;
-                        scope.hideDiv();
-                       });
-                
-                scope.showHide = function(div){
-                       if(div != 0){
-                               $("#s1").css('display', 'none');
-                       }
-                        return true; 
-                };
-                
-                
-                scope.hideDiv = function(){
-                        console.log('3');
-                        console.log(scope.optionsSizeArray);
-
-
-                        for (i = 1; i < scope.optionsSizeArray.length; i++) {
-                                var element = "#"+scope.sId+i;
-                               $(element).css('display', 'none');
-                        }
-
-                        console.log('4');
-
-               };
-                
-                
-                $(function() {
-                                       scope.hideDiv();
-                               });
-                
-               },
-            
-            controller: function ($scope) {
-               
-                $scope.addSearch = function(searchId, index, optionsLength){
-                        console.log('5');
-
-                                 for(var i = 0; i<=optionsLength.length ;i++){
-                                        var element = "#"+searchId+i;  
-                                        if($(element).css('display') == 'none'){
-                                                $(element).css('display', 'inline');   
-                                                break;
-                                        }
-                                 };
-                                console.log('6');
-
-                       };
-                
-                       $scope.remove = function(searchId, index){ 
-                       var remove = "#"+searchId+index;        
-                       if(index!=0)
-                                       $(remove).css("display", "none");
-                                       var v  ={
-                                                       index: 0,
-                                                       value: '', 
-                                                       title: 'Select', 
-                                                       alias:''
-                                       };
-                                       $scope.valueOptions[index]=v;
-                                       $scope.compareOptions[index]=v;
-                                       $scope.searchValue[index]="";
-                   };
-        
-                   $scope.search = function() {        
-                               var data = {
-                                       valueOptions                            : $scope.valueOptions,
-                                       compareOptions                          : $scope.compareOptions,
-                                       searchValue                                     : $scope.searchValue
-                        };
-                   };
-                   
-                   var data = {
-                               valueOptions                            : $scope.valueOptions,
-                               compareOptions                          : $scope.compareOptions,
-                               searchValue                                     : $scope.searchValue
-                };     
-                   
-                   $scope.mSearch = data;
-                   $scope.valueOptions=[];
-                       $scope.compareOptions=[];
-                       $scope.searchValue=[];
-            }
-       }
-  
-  });
-
-  app.directive('phoneNumberMask', [function(){
-               return {
-                       restrict: 'A',
-                       require: '?ngModel',
-                       scope: {
-                               ngModel : '='
-                       },
-                   link: function(scope, el, attrs){
-                       scope.$watch(attrs.phoneNumberMask, function(newValue, oldValue) {
-                               
-                               if(scope.ngModel)
-                                       scope.ngModel= scope.ngModel.replace(/(\+1)?(\d{3})(\d{3})(\d{4})/, '$2.$3.$4');
-                        $(el).mask("999.999.9999");
-                   });      
-                     scope.$watch("ngModel", function() {
-                         var current = $(el).val();
-                         if(scope.ngModel && /^(\+1)?\d{3,}$/.test(scope.ngModel))
-                               scope.ngModel= scope.ngModel.replace(/(\+1)?(\d{3})(\d{3})(\d{4})/, '$2.$3.$4');
-                       
-                     });
-                   },
-               };
-       }]);
-  
-  app.directive('allowOnlyNumber', [function(){
-         return {
-                    require: 'ngModel',
-                    link: function(scope, element, attrs, modelCtrl) {
-                      modelCtrl.$parsers.push(function (inputValue) {
-                          if (inputValue == undefined) return '';
-                          var transformedInput = inputValue.replace(/[^0-9]/g, ''); 
-                          if (transformedInput!=inputValue) {
-                             modelCtrl.$setViewValue(transformedInput);
-                             modelCtrl.$render();
-                          }         
-
-                          return transformedInput;         
-                      });
-                    }
-                  };
-       }]);
-  
-  app.directive('showProcessing', function(){
-      return {
-          restrict: 'A',
-          link: function(scope, elem, attrs) {
-                 elem.bind('click', function() {
-                               $(".overlayed").css("display","inline");
-                               $(".loadingId").css("display","inline");
-                 });
-          }
-       }      
-    });
-app.directive("searchCriteria", function() {
-               return {
-                       // replace custom element with html5 markup
-                   template: '<div >'    
-                       + '<div ng-repeat="a in searchCriterion track by $index" ng-show="isShown[$index]">  ' 
-                           + '         <div class="form-field form-field__glued form-field__square size-onefourth left_round_border">' 
-                           + '                 <div att-search="availableOptions[$index]" ng-model="valueOptions[$index]"></div>   '                                                              
-                       + '      </div> ' 
-                       + '      <div class="form-field form-field__glued form-field__square size-onefourth">   '       
-                       + '           <div att-search="availableOperators[$index]" ng-model="compareOptions[$index]" > </div> ' 
-                       + '       </div> ' 
-                       + '      <div class="form-field form-field__glued form-field__square size-onefourth right_round_border">' 
-                       + '             <input ng-show="!availableValues[$index] || availableValues[$index].length===0" ng-model="searchValue[$index]" type="text" placeholder="What are you looking for?" class="fn-ebz-text" style="width:100%;" >  '   
-                       + '           <div ng-show="availableValues[$index] && availableValues[$index].length!==0" att-search="availableValues[$index]" ng-model="searchValue[$index]"></div> ' 
-                       + '      </div>  ' 
-                       + '      <div class="form-field form-field__glued form-field__square size-onefourth" style=" padding-left:5px;" > '   
-                       + '                             <button ng-show="$index!=0" ng-click="removeSearchCriteria($index)" class="myzkBtn">-</button>' 
-                       + '             <button ng-show="$index==0" ng-click="addSearchCriteria($index)" class="myzkBtn">+</button>   '   
-                       + '                     <button ng-show="$index==0" ng-click="search()" class="myzkBtn" style="background-image:url(static/ebz/images/searchIcon.png);  background-repeat: no-repeat; background-position: center;">&nbsp;</button>'    
-                       + '       </div>'  
-                       + '     </div>  '             
-                       + '</div> ' ,
-                   replace: true,
-                   // restrict usage to element only since we use attributes for APIs
-                   restrict: 'EA',
-                   require: 'ngModel',
-                   // new isolate scope
-                   scope: {
-                       mSearch : '=ngModel',
-                       updateparent: '&'
-                       ,options : '=jsonForOption'
-                       ,operators : '=jsonForOperator'
-                     },
-                  
-                    controller: function ($scope) {
-                       $scope.isShown = [true]; 
-                       $scope.searchCriterion = [];
-                           $scope.valueOptions=[];
-                               $scope.compareOptions=[];
-                               $scope.searchValue=[]; 
-                               $scope.availableOperators=[];
-                               $scope.availableValues=[];
-                       $scope.availableOptions = [];
-                       //init 
-                       $scope.insertEmptyOption = function(arr){
-                               var hasEmpty = false;
-                                $.each(arr, function(i, a){ 
-                                        if(a.value ===''){
-                                                hasEmpty = true;
-                                        }
-                                });
-                                if(!hasEmpty){
-                                        $.each(arr, function(i, a){ 
-                                                a.index +=1;
-                                        });
-                                       arr.unshift({index: 0, value: '', title: 'Select', alias:'Select'});
-                                }
-                       };
-                       $scope.findFirstOption = function(arr){
-                               
-                       };
-                       $scope.insertEmptyOption($scope.options);
-                       $scope.insertEmptyOption($scope.operators);
-                       
-                        for(var i = 0, l= $scope.options.length; i<l; i++) {
-                                var option= $scope.options[i];
-                                var n = option.maxOccurs;
-                                if(option.value!==''){
-                                        if(n && Number(n)===n && n%1===0){ //maxOccurs is specified
-                                                for(var j=0; j<n; j++){
-                                                        $scope.searchCriterion.push("");
-                                                        $scope.availableOperators.push($scope.operators);
-                                                        var valueArr = [];
-                                                        $scope.availableValues.push(valueArr);
-                                                        $scope.availableOptions.push($scope.options);
-                                                        $scope.isShown.push(false);
-                                                }
-                                        }else{
-                                                $scope.searchCriterion.push("");
-                                                $scope.availableOperators.push($scope.operators);
-                                                var valueArr = [];
-                                                $scope.availableValues.push(valueArr);
-                                                $scope.availableOptions.push($scope.options);
-                                                $scope.isShown.push(false);
-                                        }
-                                }
-                        }
-                        $scope.isShown.pop();
-                       
-                        $scope.updateAvailableOptions = function(index, isFirst){
-                                var selectedOptions = [];//{value:'name', occurs: }
-                                if($scope.options && $scope.options.length > 0){
-                                        $.each($scope.valueOptions, function(i, a){ 
-                                                if(a){
-                                                        var v = a.value;
-                                                        if(v){
-                                                                var s=  $.grep(selectedOptions, function(e){ return e.value === v });
-                                                       
-                                                                if(s.length ===1){
-                                                                       s[0].occurs += 1;
-                                                                }else{
-                                                                        selectedOptions.push({value: v, occurs:1});
-                                                                }
-                                                        }
-                                                        var o=  $.grep($scope.options, function(e){ return e.value === v });
-                                                        if(o.length ===1){
-                                                               if("operators" in o[0]){
-                                                                       $scope.availableOperators[i]=o[0].operators;
-                                                                       $scope.insertEmptyOption($scope.availableOperators[i]);
-                                                               }else{
-                                                                       $scope.availableOperators[i]=$scope.operators;
-                                                               }
-                                                               if("values" in o[0]){
-                                                                       $scope.availableValues[i]=o[0].values;
-                                                               }else{
-                                                                       $scope.availableValues[i]=[];
-                                                               }
-                                                        }
-                                                }
-                                               });
-                                       for(var j = 0 , l = $scope.availableOptions.length; j<l ; j++){
-                                                var newOptions = [];
-                                                var aoi = 0;
-                                                $.each($scope.options, function(i, a){ 
-                                                        var s=  $.grep(selectedOptions, function(e){ return e.value === a.value });
-                                                        var maxOccurs = "maxOccurs" in a ? a.maxOccurs :1;
-                                                        if(s.length > 0 && s[0].occurs >= maxOccurs && ($scope.valueOptions[j]  && $scope.valueOptions[j].value !== s[0].value)){// reach limit 
-                                                        }else{
-                                                                newOptions.push({index: aoi, value: a.value, title: a.title, alias:a.alias});
-                                                                aoi += 1;
-                                                        }
-                                                });
-                                                $scope.availableOptions[j] = newOptions;
-                                                if(isFirst){
-                                                        if($scope.availableValues[j].length>0)
-                                                                $scope.searchValue[j]= $scope.availableValues[j][0];
-                                                        else
-                                                                $scope.searchValue[j]="";
-                                                        
-                                                        $scope.compareOptions[j]= $scope.availableOperators[j][0];
-                                                }
-                                               };
-                                       
-                                }
-                                if(typeof index !== 'undefined' && !isFirst){
-                                        if($scope.availableValues[index].length>0)
-                                                $scope.searchValue[index]= $scope.availableValues[index][0];
-                                        else
-                                                $scope.searchValue[index]="";
-                                }
-                        };
-                        
-                        $scope.updateAvailableOptions(undefined, true);
-                        $.each($scope.availableOptions, function(j, a){ 
-                                $scope.valueOptions[j]= a[0];
-                        });
-                       $scope.addSearchCriteria = function(index){
-                               for(var i = 0 , l =$scope.isShown.length; i<l; i++ ){
-                                       if(!$scope.isShown[i]){
-                                               $scope.isShown[i]= true;
-                                               break;
-                                       }
-                                       
-                               }
-                       };
-                       
-                       $scope.removeSearchCriteria = function(index){
-                               $scope.isShown[index]= false;
-                               
-                               
-                                       $scope.valueOptions[index]=$scope.availableOptions[index][0];
-                                       $scope.compareOptions[index]=$scope.availableOperators[index][0];
-                                       $scope.searchValue[index]="";
-                       };
-                           $scope.search = function() {
-                               //remove empty criteria
-                                       var vo =[];
-                               var co =[];
-                               var sv =[];
-                               for(var i = 0 , l=$scope.valueOptions.length; i<l ; i++){
-                                       if($scope.valueOptions[i].value==='' || $scope.compareOptions[i].value==='' ||(typeof $scope.searchValue[i] ==='string' && $scope.searchValue[i] ==='') || $scope.searchValue[i].value === ''){
-                                       }else{
-                                               vo.push($scope.valueOptions[i]);
-                                               co.push($scope.compareOptions[i]);
-                                               sv.push($scope.searchValue[i]);
-                                       }
-                               }
-                               $scope.updateparent({filter: { valueOptions: vo, compareOptions: co, searchValue :sv }  });
-                           };
-                           
-                           $scope.$watchCollection("valueOptions", function(collection, oldValue ){
-                                 if(collection) {
-                                         var index;
-                                         for(var i = 0 , l =collection.length; i<l; i++ ){
-                                                       if(!oldValue[i] || oldValue[i].value!=collection[i].value){
-                                                               index = i;
-                                                               break;
-                                                       }
-                                                       
-                                               }
-                                         $scope.updateAvailableOptions(index);
-                                         }
-                                       }, true);
-                               
-                    }
-               }
-         
-         });
-   
- app.directive("selectUser", function() {
-               return {
-                       // replace custom element with html5 markup
-                   template: '<div>            '
-                       + '<table style="width:660px; margin-left:-12px;" >'
-                       + '<thead>'
-                       + '  <tr >'
-                       + '   <th style="width:325px;">{{availableTitle}}</th> '
-                       + '    <th style="width:10px;"></th>        '
-                       + '    <th style="width:325px;">{{userTitle}}</th> '        
-                       + '</tr>'
-                       + '</thead>'
-                       + '<tbody>'
-                       + '<tr>'
-                       + ' <td style="width:325px;">'
-                       + '  <div class="ebz-listbox">'
-                       + '   <label ng-repeat="canditateId in canditateIds track by canditateId.ociUserId" style="display:block;"> '
-                       + '       <input type="checkbox" style="margin-top: 10px;" ng-model="canditateId.available" att-checkbox ng-change="checkCanditate($index)"/> {{canditateId.firstName}} {{canditateId.lastName}}({{canditateId.phone}})<br/>'
-                       + '   </label>'
-                       + '  </div>'
-                       + '</td>'
-                       + '<td valign="middle" width="10px">'
-                       + '      <img src="static/images/rightarrow_g.png" id="removeBtn" ng-click="chooseSelected()" ng-hide="oneMax && chosenIds.length==1"/>'
-                       + '             <img src="static/images/leftarrow_g.png" id="chooseBtn"  ng-click="removeSelected()" ng-show="oneMax && chosenIds.length==1"/>'
-                       + '     <br/><br/> '
-                       + '     <img src="static/images/leftarrow_g.png" id="chooseBtn"  ng-click="removeSelected()" ng-hide="oneMax"/>'
-                       + '      <br/><br/>'
-                       + '      <img  id="chooseAllBtn"  src="static/images/rightrightarrow_g.png"  ng-click="chooseAll()" ng-hide="oneMax"/>'
-                       + '     <br/><br/>'
-                       + '    <img style="cursor:pointer" id="removeAllBtn" src="static/images/leftleftarrow_g.png"  ng-click="removeAll()" ng-hide="oneMax"/>'
-                       + '</td>'
-                       + '<td style="width:325px;">'
-                       + '    <div class="ebz-listbox" >'
-                       + '        <label ng-repeat="chosenId in chosenIds" style="display:block;">'
-                       + '                      <input type="checkbox" style=" margin-top :10px;" att-checkbox ng-model="chosenId.available"/> {{chosenId.firstName}} {{chosenId.lastName}}({{chosenId.phone}})<br/>'
-                       + '        </label>'
-                       + '     </div>'
-                       + '</td> '
-                       + ' </tr>'
-                       + '</tbody>'
-                       + '</table>'    
-                       + '</div>',
-                   replace: true,
-                   // restrict usage to element only since we use attributes for APIs
-                   restrict: 'EA',
-                   // new isolate scope
-                   scope: {
-                       chosenIds  : '=assignedUsers'   
-                       ,availableUsers : '='   
-                       ,userTitle : '='        
-                       ,availableTitle : '='   
-                       ,oneMax : '=?'
-                     },
-                    link: function(scope, iElement, attrs){ 
-                       
-                        scope.$watch("userTitle", function(newval, oldval) {
-                                scope.userTitle = newval;
-                               });
-                        scope.$watch("availableTitle", function(newval, oldval) {
-                                scope.availableTitle = newval;
-                               });
-                        
-                        scope.$watch("availableUsers", function(newval, oldval) {
-                                scope.availableUsers = newval;
-                                scope.canditateIds= scope.getArrayRemoved(scope.availableUsers, scope.chosenIds);
-                               });
-                        
-                       },
-                    
-                    controller: function ($scope) {
-                        $scope.getArrayRemoved = function(from, removed){
-                                       var retArray = (from)? from:[];
-                                       if(retArray && retArray.length >0 && removed){
-                                               for(var i = 0, l = removed.length; i<l; i++ ){
-                                                       retArray = $.grep(retArray, function(e){ return e.ociUserId !== removed[i].ociUserId; });
-                                               };
-                                       }
-                                       return retArray;
-                               };
-                        $scope.canditateIds= $scope.getArrayRemoved($scope.availableUsers, $scope.chosenIds);
-                        $scope.chooseAll = function() {
-                                
-                                var dataFromTableData = $scope.canditateIds;
-                                        for (var i = dataFromTableData.length - 1; i >= 0; i--){       
-                                                if(!$scope.chosenIds)
-                                                $scope.chosenIds=[];
-                                                 $scope.chosenIds.push(dataFromTableData[i]);
-                                             $scope.canditateIds.splice(i,1);
-                                                 
-                                          }
-                               var dataFromChoosonTable = $scope.chosenIds;    
-                                               for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
-                                                   if(dataFromChoosonTable[i].available){
-                                                       $scope.chosenIds[i].available=false;
-                                                   }
-                                               }
-                        };
-                       
-                       $scope.removeAll = function() {
-                               var dataFromTableData = $scope.chosenIds;
-                               for (var i = dataFromTableData.length - 1; i >= 0; i--){         
-                                         $scope.canditateIds.push(dataFromTableData[i]);
-                                     $scope.chosenIds.splice(i,1);
-                                         
-                                  } 
-                       var dataFromChoosonTable = $scope.canditateIds; 
-                                       for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
-                                           if(dataFromChoosonTable[i].available){
-                                               $scope.canditateIds[i].available=false;
-                                           }
-                                       }
-                        };
-                        
-                       $scope.chooseSelected = function() {
-                               
-                                       var dataFromTableData = $scope.canditateIds;
-                                       
-                                                       for (var i = dataFromTableData.length - 1; i >= 0; i--){         
-                                         
-                                         if(dataFromTableData[i].available){
-                                                 if(!$scope.chosenIds)
-                                                        $scope.chosenIds=[];
-                                                 $scope.chosenIds.push(dataFromTableData[i]);
-                                                 $scope.canditateIds.splice(i,1);
-                                                 
-                                        } 
-                                }
-                                       var dataFromChoosonTable = $scope.chosenIds;    
-                                                       for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
-                                                           if(dataFromChoosonTable[i].available){
-                                                               $scope.chosenIds[i].available=false;
-                                                           }
-                                                       }
-                        };
-                        $scope.removeSelected = function() {
-                                       
-                                        var dataFromTableData = $scope.chosenIds;
-                                       
-                                               for (var i = dataFromTableData.length - 1; i >= 0; i--){         
-                                                       if(dataFromTableData[i].available){
-                                                               $scope.canditateIds.push(dataFromTableData[i]);
-                                                               $scope.chosenIds.splice(i,1);
-                                                       
-                                                        } 
-                                                } ;
-                                         var dataFromChoosonTable = $scope.canditateIds;       
-                                                       for (var i = dataFromChoosonTable.length - 1; i >= 0; i--){
-                                                           if(dataFromChoosonTable[i].available){
-                                                               $scope.canditateIds[i].available=false;
-                                                           }
-                                                       }
-                        };
-                        $scope.checkCanditate = function(index) {
-                                if($scope.oneMax){
-                                        for (var i = $scope.canditateIds.length - 1; i >= 0; i--){     
-                                                if(i != index)
-                                             $scope.canditateIds[i].available=false;
-                                        }
-                                }
-                        };
-                       
-                        
-                    }
-               }
-       });
- app.directive("selectString", function() {
-               return {
-                       // replace custom element with html5 markup
-                   template: '<div>            '
-                       + '<table style="width:660px;">'
-                       + '<thead>'
-                       + '  <tr >'
-                       + '   <th style="width:325px;">{{availableTitle}}</th> '
-                       + '    <th style="width:10px;"></th>        '
-                       + '    <th style="width:325px;">{{assignedTitle}}</th> '        
-                       + '</tr>'
-                       + '</thead>'
-                       + '<tbody>'
-                       + '<tr>'
-                       + ' <td style="width:325px;">'
-                       + '  <div class="ebz-listbox">'
-                       + '   <label ng-repeat="canditateId in canditateIds track by $index" style="display:block;"> '
-                       + '       <input type="checkbox" style="margin-top: 10px;" ng-model="canditateId.available" att-checkbox /> {{canditateId}}<br/>'
-                       + '   </label>'
-                       + '  </div>'
-                       + '</td>'
-                       + '<td valign="middle" width="10px">'
-                       + '      <img src="static/images/rightarrow_g.png" id="removeBtn" ng-click="chooseSelected()" />'
-                       + '     <br/><br/> '
-                       + '     <img src="static/images/leftarrow_g.png" id="chooseBtn"  ng-click="removeSelected()" />'
-                       + '      <br/><br/>'
-                       + '      <img  id="chooseAllBtn"  src="static/images/rightrightarrow_g.png"  ng-click="chooseAll()" />'
-                       + '     <br/><br/>'
-                       + '    <img style="cursor:pointer" id="removeAllBtn" src="static/images/leftleftarrow_g.png"  ng-click="removeAll()" />'
-                       + '</td>'
-                       + '<td style="width:325px;">'
-                       + '    <div class="ebz-listbox" >'
-                       + '        <label ng-repeat="chosenId in chosenIds" style="display:block;">'
-                       + '                      <input type="checkbox" style=" margin-top :10px;" att-checkbox ng-model="chosenId.available"/> {{chosenId}}<br/>'
-                       + '        </label>'
-                       + '     </div>'
-                       + '</td> '
-                       + ' </tr>'
-                       + '</tbody>'
-                       + '</table>'    
-                       + '</div>',
-                   replace: true,
-                   // restrict usage to element only since we use attributes for APIs
-                   restrict: 'EA',
-                   // new isolate scope
-                   scope: {
-                       chosenIds  : '=assignedOptions' 
-                       ,availableOptions : '=' 
-                       ,availableTitle : '@'   
-                       ,assignedTitle : '@'    
-                     },
-                    link: function(scope, iElement, attrs){ 
-                        scope.$watch("availableOptions", function(newval, oldval) {
-                                scope.availableOptions = newval;
-                                scope.canditateIds= scope.getArrayRemoved(scope.availableOptions, scope.chosenIds);
-                               });
-                        
-                       },
-                    
-                    controller: function ($scope) {
-                        $scope.getArrayRemoved = function(from, removed){
-                                       var retArray = (from)? from:[];
-                                       if(retArray && retArray.length >0 && removed){
-                                               for(var i = 0, l = removed.length; i<l; i++ ){
-                                                       retArray = $.grep(retArray, function(e){ return e !== removed[i]; });
-                                               };
-                                       }
-                                       return retArray;
-                               };
-                        
-                        $scope.canditateIds= $scope.getArrayRemoved($scope.availableOptions, $scope.chosenIds);
-                        $scope.chooseAll = function() {
-                                
-                                var dataFromTableData = $scope.canditateIds;
-                                        for (var i = dataFromTableData.length - 1; i >= 0; i--){       
-                                                if(!$scope.chosenIds)
-                                                $scope.chosenIds=[];
-                                                 $scope.chosenIds.push(dataFromTableData[i]);
-                                             $scope.canditateIds.splice(i,1);
-                                                 
-                                          } 
-                        };
-                       
-                       $scope.removeAll = function() {
-                               var dataFromTableData = $scope.chosenIds;
-                               for (var i = dataFromTableData.length - 1; i >= 0; i--){         
-                                         $scope.canditateIds.push(dataFromTableData[i]);
-                                     $scope.chosenIds.splice(i,1);
-                                         
-                                  } 
-                        };
-                        
-                       $scope.chooseSelected = function() {
-                               
-                                       var dataFromTableData = $scope.canditateIds;
-                                       
-                                                       for (var i = dataFromTableData.length - 1; i >= 0; i--){         
-                                         
-                                         if(dataFromTableData[i].available){
-                                                 if(!$scope.chosenIds)
-                                                        $scope.chosenIds=[];
-                                                 $scope.chosenIds.push(dataFromTableData[i]);
-                                                 $scope.canditateIds.splice(i,1);
-                                                 
-                                        } 
-                                } 
-                        };
-                        $scope.removeSelected = function() {
-                                       
-                                        var dataFromTableData = $scope.chosenIds;
-                                       
-                                               for (var i = dataFromTableData.length - 1; i >= 0; i--){         
-                                                       if(dataFromTableData[i].available){
-                                                               $scope.canditateIds.push(dataFromTableData[i]);
-                                                               $scope.chosenIds.splice(i,1);
-                                                       
-                                                        } 
-                                                } ;
-                        };
-                        
-                    }
-               }
-       });
-       function getParameterByName(name) {
-               name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
-               var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
-                   results = regex.exec(location.search);
-               return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
-       };
-
- app.directive("time", function() {
-               return {
-                       // replace custom element with html5 markup
-                   template: '<div style="height:80px; display:inline-block;">         '
-                       + '         <input type="text" class="fn-ebz-text" ng-model="timeStr"  placeholder="HH:MM" style="width:70px" ng-change="parseValue()"/>'
-                       + '        <div class="form-field" att-select="ampmOptions" ng-model="ampm" style="width:70px" ng-change="parseValue()"></div>'
-                       + '     </div>',
-                   replace: true,
-                   // restrict usage to element only since we use attributes for APIs
-                   restrict: 'EA',
-                   // new isolate scope
-                   scope: {
-                       value  : '='
-                       ,validTime : '=?'
-                     },
-                    link: function(scope, iElement, attrs){ 
-                       },
-                    
-                    controller: function ($scope) {
-                        $scope.timeStr='';
-                        $scope.ampm=null;
-                        var am ={index: 0, value: 'AM', title: 'AM', alias:'Name2'};
-                        var pm = {index: 1, value: 'PM', title: 'PM', alias:'Name'};
-                        $scope.ampmOptions=[
-                                           am,
-                                           pm,
-                                                                       ]
-                        $scope.parseTimeStr= function(str){
-                                if(str){
-                                       try{
-                                               var date;
-                                               if(/^(\d*):(\d*)$/.test(str)){
-                                                       var hh = Number(str.match(/^(\d+)/)[1]);
-                                                       var mm = Number(str.match(/:(\d+)/)[1]);
-                                                        date = new Date(1970, 0, 1, hh, mm, 0);
-                                               }else{
-                                                       date = new Date(str);
-                                               }
-                                                 var hours = date.getHours();
-                                                 var minutes = date.getMinutes();
-                                                 var ampm = hours >= 12 ?pm : am;
-                                                 hours = hours % 12;
-                                                 hours = hours ? hours : 12; // the hour '0' should be '12'
-                                                 minutes = minutes < 10 ? '0'+minutes : minutes;
-                                                 hours = hours < 10 ? '0'+hours : hours;
-                                                 var strTime = hours + ':' + minutes ;
-                                                
-                                                
-                                                  $scope.timeStr =strTime;
-                                                  $scope.ampm = ampm;    
-                                                  if (typeof $scope.validTime != 'undefined'){
-                                                                $scope.validTime=true;
-                                                        }
-                                       }catch(err){
-                                               if (typeof $scope.validTime != 'undefined'){
-                                                        $scope.validTime=false;
-                                                }
-                                       }
-                                }else{
-                                       $scope.timeStr = "12:00";
-                                       $scope.ampm =am;
-                                }
-                        };
-                        $scope.parseTimeStr($scope.value);
-                       $scope.parseValue = function(){
-                               try{
-                                       var date;
-                                       var hh = Number($scope.timeStr.match(/^(\d+)/)[1]);
-                                       var mm = Number($scope.timeStr.match(/:(\d+)/)[1]);
-                                       
-                                       if(hh<=12 && hh>0 && mm>=0 && mm<=59){
-                                               
-                                        if($scope.ampm.value=='PM'&& hh<12) hh = hh+12;
-                                        if($scope.ampm.value=='AM'&& hh==12) hh = hh-12;
-                                        mm = mm < 10 ? '0'+mm : mm;
-                                        hh = hh < 10 ? '0'+hh : hh;
-                                        $scope.value=  hh+":"+mm; 
-                                        if (typeof $scope.validTime != 'undefined'){
-                                                $scope.validTime=true;
-                                        }
-                                       }else{
-                                               if (typeof $scope.validTime != 'undefined'){
-                                                        $scope.validTime=false;
-                                                }
-                                       }
-                                       
-                               }catch(err){
-                                       if (typeof $scope.validTime != 'undefined'){
-                                                $scope.validTime=false;
-                                        }
-                               }
-                       };
-                    }
-               }
-       });
\ No newline at end of file
index 5f1a5a7..2d65f17 100644 (file)
@@ -18,6 +18,8 @@ Version 1.4.0
 - PORTAL-42 Use OParent as parent POM
 - PORTAL-72 Address Sonar Scan code issues
 - PORTAL-90 Use approved ONAP license text
+- Portal-86 Remove application specific usages from tests and other files
+
 * Put new entries here *
 
 Version 1.3.0, 28 August 2017
index 1114bca..48c8a4f 100644 (file)
@@ -39,6 +39,8 @@ package org.onap.portalsdk.core.domain;
 
 import org.onap.portalsdk.core.domain.support.DomainVo;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
 /**
  * <p>
  * RoleFunction.java
@@ -71,7 +73,8 @@ public class RoleFunction extends DomainVo {
        public void setCode(String code) {
                this.code = code;
        }
-
+    
+       @JsonIgnore
        public String getEditUrl() {
                return "/role_function.htm?role_function_id=" + getCode();
        }
index 9ae1fbf..5b87e2b 100644 (file)
@@ -71,7 +71,5 @@ public enum ErrorCodesEnum implements EELFResolvableErrorEnum {
         * Static initializer to ensure the resource bundles for this class are
         * loaded... Here this application loads messages from three bundles
         */
-       // static {
-       // EELFResourceManager.loadMessageBundle("com/att/fusion/core/logging/format/ApplicationCodes");
-       // }
+
 }
index b73b011..920d79c 100644 (file)
@@ -56,7 +56,7 @@ import com.fasterxml.jackson.databind.ObjectWriter;
 /**
  * Provides a publisher that sends messages to a UEB topic.
  * 
- * Utilizes AT&T's UEB/Cambria subscriber/publisher messaging service.
+ * UEB/Cambria subscriber/publisher messaging service.
  */
 public class Publisher {
 
index 5d14ee4..e37d54e 100644 (file)
@@ -219,11 +219,13 @@ public class BroadcastServiceImpl extends FusionService implements BroadcastServ
                if (siteCd == null) {
                        return messagesExist;
                } else {
-                       for (int i = 0; i < messages.size(); i++) {
-                               BroadcastMessage message = (BroadcastMessage) messages.get(i);
+                       if(messages!=null){
+                               for (int i = 0; i < messages.size(); i++) {
+                                       BroadcastMessage message = (BroadcastMessage) messages.get(i);
 
-                               if ((message.getSiteCd() == null) || message.getSiteCd().equals(siteCd)) {
-                                       return true;
+                                       if ((message.getSiteCd() == null) || message.getSiteCd().equals(siteCd)) {
+                                               return true;
+                                       }
                                }
                        }
                        return false;
index 248fdbf..0d31f08 100644 (file)
@@ -50,6 +50,6 @@ public interface PostSearchService {
         * @param postSearch
         * @return the number of users successfully imported
         */
-       int process(HttpServletRequest request, PostSearchBean postSearch);
+       int process(HttpServletRequest request, PostSearchBean postSearch) throws Exception;
 
 }
index 4bf78ee..1f2a3e8 100644 (file)
@@ -55,7 +55,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 @Service("postSearchService")
-@Transactional
 public class PostSearchServiceImpl implements PostSearchService {
 
        private static final EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(PostSearchServiceImpl.class);
@@ -65,7 +64,8 @@ public class PostSearchServiceImpl implements PostSearchService {
 
        @SuppressWarnings({ "unchecked", "rawtypes" })
        @Override
-       public int process(HttpServletRequest request, PostSearchBean postSearch) {
+       @Transactional(rollbackFor = Exception.class)
+       public int process(HttpServletRequest request, PostSearchBean postSearch) throws Exception {
                HashMap additionalParams = new HashMap();
                additionalParams.put(Parameters.PARAM_HTTP_REQUEST, request);
                int numUsersImported = 0;
@@ -202,24 +202,26 @@ public class PostSearchServiceImpl implements PostSearchService {
                                        }
 
                                        user.setActive(true);
-
+                                       Role role = null;
                                        try {
                                                dataAccessService.saveDomainObject(user, additionalParams);
-                                               Role role = (Role) dataAccessService.getDomainObject(Role.class,
+                                                role = (Role) dataAccessService.getDomainObject(Role.class,
                                                                Long.valueOf(SystemProperties.getProperty(SystemProperties.POST_DEFAULT_ROLE_ID)),
                                                                null);
+                                                if(role.getId() == null){
+                                                               logger.error(EELFLoggerDelegate.errorLogger,
+                                                                               "process failed: No Role Exsists in DB with requested RoleId :"+ Long.valueOf(SystemProperties.getProperty(SystemProperties.POST_DEFAULT_ROLE_ID)));
+                                                               throw new Exception("user cannot be added");
+                                               }
                                                user.addRole(role);
                                                numUsersImported++;
-                                       } catch (Exception e) {
-                                               logger.error(EELFLoggerDelegate.errorLogger,
-                                                               "process: saveDomainObject failed on user " + user.getLoginId(), e);
+                                               } catch (Exception e) {
+                                                        logger.error(EELFLoggerDelegate.errorLogger, "process: saveDomainObject failed on user " + user.getLoginId(), e);
+                                                       throw e;
                                        }
                                }
                        }
-
                }
-
                return numUsersImported;
        }
-
 }
index 83dc9c4..1dec7b7 100644 (file)
@@ -248,7 +248,7 @@ public class PortalRestAPIProxy extends HttpServlet implements IPortalRestAPISer
                                        logger.error("doPost: pushUser: caught exception", ex);
                                }
                        } else
-                       // Example: /user/fi241c <-- edit user fi241c
+                       // Example: /user/abc <-- edit user abc 
                        if (requestUri.contains(PortalApiConstants.API_PREFIX + "/user/") && !(requestUri.endsWith("/roles"))) {
                                String loginId = requestUri.substring(requestUri.lastIndexOf('/') + 1);
                                try {
@@ -419,7 +419,7 @@ public class PortalRestAPIProxy extends HttpServlet implements IPortalRestAPISer
                                        logger.error("doGet: getAvailableRoles: caught exception", ex);
                                }
                        } else
-                       // Example: /user/fi241c <-- get user fi241c
+                       // Example: /user/abc <-- get user abc
                        if (requestUri.contains(PortalApiConstants.API_PREFIX + "/user/") && !requestUri.endsWith("/roles")) {
                                String loginId = requestUri.substring(requestUri.lastIndexOf('/') + 1);
                                try {
@@ -433,7 +433,7 @@ public class PortalRestAPIProxy extends HttpServlet implements IPortalRestAPISer
                                        logger.error("doGet: getUser: caught exception", ex);
                                }
                        }
-                       // Example: /user/fi241c/roles <-- get roles for user fi241c
+                       // Example: /user/abc/roles <-- get roles for user abc
                        else if (requestUri.contains(PortalApiConstants.API_PREFIX + "/user/") && requestUri.endsWith("/roles")) {
                                String loginId = requestUri.substring(requestUri.indexOf("/user/") + ("/user").length() + 1,
                                                requestUri.lastIndexOf('/'));
index b97a00b..1cb535c 100644 (file)
@@ -85,7 +85,8 @@ public class WorkflowScheduleExecutor {
                                while ((cp = bufferedReader.read()) != -1)
                                        sb.append((char) cp);
                                bufferedReader.close();
-                               in.close();
+                               if(in != null)
+                                       in.close();
                        }
                } catch (Exception e) {
                        logger.error(EELFLoggerDelegate.errorLogger, "get_fromURL failed", e);