Remove unused files with company keywords 05/10405/2
authorChristopher Lott (cl778h) <clott@research.att.com>
Tue, 5 Sep 2017 21:03:50 +0000 (17:03 -0400)
committerChristopher Lott (cl778h) <clott@research.att.com>
Wed, 6 Sep 2017 13:07:30 +0000 (09:07 -0400)
Drop the static FE pages that were once used to redirect users.

Issue: PORTAL-86
Change-Id: Idb1f3b07f2b30319b58d993fcafd7e95b1c6d5a3
Signed-off-by: Christopher Lott (cl778h) <clott@research.att.com>
20 files changed:
LICENSE.txt
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/controller/AuditLogController.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/controller/DashboardController.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/controller/PortalAdminController.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/controller/UserRolesController.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/logging/format/EPAppMessagesEnum.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/logging/format/EPErrorCodesEnum.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/logging/logic/EPLogUtil.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/service/ExternalAccessRolesServiceImpl.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/utils/EcompPortalUtils.java
ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/utils/PortalConstants.java
ecomp-portal-FE-common/README.md
ecomp-portal-FE-common/client/app/views/role/role.html
ecomp-portal-FE-common/client/app/views/user-notifications-admin/user.notifications.modal.controller.js
ecomp-portal-FE-common/client/app/views/user-notifications-admin/user.notifications.modal.less
ecomp-portal-FE-common/client/app/views/user-notifications-admin/user.notifications.modal.page.html
ecomp-portal-FE-common/home/ecompportal/applicationsHome [deleted file]
ecomp-portal-FE-common/home/ecompportal/login.htm [deleted file]
ecomp-portal-FE-common/home/index.html [deleted file]
ecomp-portal-FE-os/client/src/app.less

index 9532e5b..43866ac 100644 (file)
@@ -1,19 +1,35 @@
-/*
- * ============LICENSE_START===========================================================
- * ====================================================================================
- * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * ====================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=============================================================
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- */
\ No newline at end of file
+============LICENSE_START==========================================
+ONAP Portal
+===================================================================
+Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+===================================================================
+
+Unless otherwise specified, all software contained herein is licensed
+under the Apache License, Version 2.0 (the "License");
+you may not use this software except in compliance with the License.
+You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Unless otherwise specified, all documentation contained herein is licensed
+under the Creative Commons License, Attribution 4.0 Intl. (the ¿License¿);
+you may not use this documentation except in compliance with the License.
+You may obtain a copy of the License at
+
+     https://creativecommons.org/licenses/by/4.0/
+
+Unless required by applicable law or agreed to in writing, documentation
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+============LICENSE_END============================================
+
+ECOMP is a trademark and service mark of AT&T Intellectual Property.
index 8d6b8e6..14ba94f 100644 (file)
@@ -36,6 +36,8 @@ import org.openecomp.portalapp.portal.domain.EPUser;
 import org.openecomp.portalapp.portal.logging.aop.EPEELFLoggerAdvice;
 import org.openecomp.portalapp.portal.logging.logic.EPLogUtil;
 import org.openecomp.portalapp.portal.utils.EPCommonSystemProperties;
 import org.openecomp.portalapp.portal.logging.aop.EPEELFLoggerAdvice;
 import org.openecomp.portalapp.portal.logging.logic.EPLogUtil;
 import org.openecomp.portalapp.portal.utils.EPCommonSystemProperties;
+import org.openecomp.portalapp.portal.utils.EcompPortalUtils;
+import org.openecomp.portalapp.portal.utils.PortalConstants;
 import org.openecomp.portalapp.util.EPUserUtils;
 
 @RestController
 import org.openecomp.portalapp.util.EPUserUtils;
 
 @RestController
@@ -83,7 +85,7 @@ public class AuditLogController extends EPRestrictedBaseController {
                                 * valid
                                 */
                                if (comment != null && !comment.equals("") && !comment.equals("undefined"))
                                 * valid
                                 */
                                if (comment != null && !comment.equals("") && !comment.equals("undefined"))
-                                       auditLog.setComments(comment);
+                                       auditLog.setComments(EcompPortalUtils.truncateString(comment, PortalConstants.AUDIT_LOG_COMMENT_SIZE));
                                if (affectedAppId != null && !affectedAppId.equals("") && !affectedAppId.equals("undefined"))
                                        auditLog.setAffectedRecordId(affectedAppId);
                                long userId = EPUserUtils.getUserId(request);
                                if (affectedAppId != null && !affectedAppId.equals("") && !affectedAppId.equals("undefined"))
                                        auditLog.setAffectedRecordId(affectedAppId);
                                long userId = EPUserUtils.getUserId(request);
index 81a61d5..1c22576 100644 (file)
@@ -44,6 +44,7 @@ import org.openecomp.portalapp.portal.transport.CommonWidget;
 import org.openecomp.portalapp.portal.transport.CommonWidgetMeta;
 import org.openecomp.portalapp.portal.utils.EPCommonSystemProperties;
 import org.openecomp.portalapp.portal.utils.EcompPortalUtils;
 import org.openecomp.portalapp.portal.transport.CommonWidgetMeta;
 import org.openecomp.portalapp.portal.utils.EPCommonSystemProperties;
 import org.openecomp.portalapp.portal.utils.EcompPortalUtils;
+import org.openecomp.portalapp.portal.utils.PortalConstants;
 import org.openecomp.portalapp.util.EPUserUtils;
 import org.openecomp.portalsdk.core.domain.AuditLog;
 import org.openecomp.portalsdk.core.domain.support.CollaborateList;
 import org.openecomp.portalapp.util.EPUserUtils;
 import org.openecomp.portalsdk.core.domain.AuditLog;
 import org.openecomp.portalsdk.core.domain.support.CollaborateList;
@@ -244,7 +245,7 @@ public class DashboardController extends EPRestrictedBaseController {
                                AuditLog auditLog = new AuditLog();
                                auditLog.setUserId(user.getId());
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_SEARCH);
                                AuditLog auditLog = new AuditLog();
                                auditLog.setUserId(user.getId());
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_SEARCH);
-                               auditLog.setComments(searchString);
+                               auditLog.setComments(EcompPortalUtils.truncateString(searchString, PortalConstants.AUDIT_LOG_COMMENT_SIZE));
                                MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP,EPEELFLoggerAdvice.getCurrentDateTimeUTC());          
                                auditService.logActivity(auditLog, null);
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP,EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP,EPEELFLoggerAdvice.getCurrentDateTimeUTC());          
                                auditService.logActivity(auditLog, null);
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP,EPEELFLoggerAdvice.getCurrentDateTimeUTC());
index b98a7cb..7bb6c45 100644 (file)
@@ -111,8 +111,11 @@ public class PortalAdminController extends EPRestrictedBaseController {
                                auditLog.setUserId(user.getId());
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_ADD_PORTAL_ADMIN);
                                auditLog.setAffectedRecordId(userId);
                                auditLog.setUserId(user.getId());
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_ADD_PORTAL_ADMIN);
                                auditLog.setAffectedRecordId(userId);
-                               auditService.logActivity(auditLog, null);
-
+                               try {
+                                       auditService.logActivity(auditLog, null);
+                               } catch (Exception e) {
+                                       logger.error(EELFLoggerDelegate.errorLogger, "createPortalAdmin: failed for save audit log", e);
+                               }
                                MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                EcompPortalUtils.calculateDateTimeDifferenceForLog(
                                MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                EcompPortalUtils.calculateDateTimeDifferenceForLog(
@@ -164,7 +167,7 @@ public class PortalAdminController extends EPRestrictedBaseController {
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_DELETE_PORTAL_ADMIN);
                                auditLog.setAffectedRecordId(sbcid);
                                auditService.logActivity(auditLog, null);
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_DELETE_PORTAL_ADMIN);
                                auditLog.setAffectedRecordId(sbcid);
                                auditService.logActivity(auditLog, null);
-
+                               
                                MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                EcompPortalUtils.calculateDateTimeDifferenceForLog(
                                MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                EcompPortalUtils.calculateDateTimeDifferenceForLog(
index 7bcd584..4bb447d 100644 (file)
@@ -52,6 +52,7 @@ import org.openecomp.portalapp.portal.transport.RoleInAppForUser;
 import org.openecomp.portalapp.portal.transport.UserApplicationRoles;
 import org.openecomp.portalapp.portal.utils.EPCommonSystemProperties;
 import org.openecomp.portalapp.portal.utils.EcompPortalUtils;
 import org.openecomp.portalapp.portal.transport.UserApplicationRoles;
 import org.openecomp.portalapp.portal.utils.EPCommonSystemProperties;
 import org.openecomp.portalapp.portal.utils.EcompPortalUtils;
+import org.openecomp.portalapp.portal.utils.PortalConstants;
 import org.openecomp.portalapp.util.EPUserUtils;
 import org.openecomp.portalsdk.core.domain.AuditLog;
 import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate;
 import org.openecomp.portalapp.util.EPUserUtils;
 import org.openecomp.portalsdk.core.domain.AuditLog;
 import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate;
@@ -213,7 +214,7 @@ public class UserRolesController extends EPRestrictedBaseController {
                        auditLog.setUserId(user.getId());
                        auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_UPDATE_ACCOUNT_ADMIN);
                        auditLog.setAffectedRecordId(newAppsListWithAdminRoles.orgUserId);
                        auditLog.setUserId(user.getId());
                        auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_UPDATE_ACCOUNT_ADMIN);
                        auditLog.setAffectedRecordId(newAppsListWithAdminRoles.orgUserId);
-                       auditLog.setComments(newAppRoles.toString());
+                       auditLog.setComments(EcompPortalUtils.truncateString(newAppRoles.toString(), PortalConstants.AUDIT_LOG_COMMENT_SIZE));
                        auditService.logActivity(auditLog, null);
 
                        MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                        auditService.logActivity(auditLog, null);
 
                        MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
@@ -344,13 +345,15 @@ public class UserRolesController extends EPRestrictedBaseController {
                                logger.info(EELFLoggerDelegate.applicationLogger,
                                                "putAppWithUserRoleStateForUser: succeeded for app {}, user {}", newAppRolesForUser.appId,
                                                newAppRolesForUser.orgUserId);
                                logger.info(EELFLoggerDelegate.applicationLogger,
                                                "putAppWithUserRoleStateForUser: succeeded for app {}, user {}", newAppRolesForUser.appId,
                                                newAppRolesForUser.orgUserId);
+
+                               MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                AuditLog auditLog = new AuditLog();
                                auditLog.setUserId(user.getId());
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_UPDATE_USER);
                                auditLog.setAffectedRecordId(newAppRolesForUser.orgUserId);
                                AuditLog auditLog = new AuditLog();
                                auditLog.setUserId(user.getId());
                                auditLog.setActivityCode(EcompAuditLog.CD_ACTIVITY_UPDATE_USER);
                                auditLog.setAffectedRecordId(newAppRolesForUser.orgUserId);
-                               auditLog.setComments(sbUserApps.toString());
-                               MDC.put(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
+                               auditLog.setComments(EcompPortalUtils.truncateString(sbUserApps.toString(), PortalConstants.AUDIT_LOG_COMMENT_SIZE));
                                auditService.logActivity(auditLog, null);
                                auditService.logActivity(auditLog, null);
+                               
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                EcompPortalUtils.calculateDateTimeDifferenceForLog(
                                                MDC.get(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP),
                                MDC.put(EPCommonSystemProperties.AUDITLOG_END_TIMESTAMP, EPEELFLoggerAdvice.getCurrentDateTimeUTC());
                                EcompPortalUtils.calculateDateTimeDifferenceForLog(
                                                MDC.get(EPCommonSystemProperties.AUDITLOG_BEGIN_TIMESTAMP),
index 6251953..eaac6ed 100644 (file)
@@ -186,7 +186,16 @@ public enum EPAppMessagesEnum {
     
     InternalUnexpectedFatal(EPErrorCodesEnum.INTERNALUNEXPECTEDFATAL_ONE_ARGUMENT, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.FATAL,
                                                        "ERR999F", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
     
     InternalUnexpectedFatal(EPErrorCodesEnum.INTERNALUNEXPECTEDFATAL_ONE_ARGUMENT, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.FATAL,
                                                        "ERR999F", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
-       
+    
+    ExternalAuthAccessConnectionError(EPErrorCodesEnum.EXTERNALAUTHACCESS_CONNECTIONERROR, ErrorTypeEnum.CONNECTION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
+                       "ERR220E", "AAF Connection problem", "Details: {0}.", "Please check logs for more information."),
+
+    ExternalAuthAccessAuthenticationError(EPErrorCodesEnum.EXTERNALAUTHACCESS_AUTHENTICATIONERROR, ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
+                       "ERR120E", "AAF authentication problem", "Details: {0}.", "Please check logs for more information."),
+    
+    ExternalAuthAccessGeneralError(EPErrorCodesEnum.EXTERNALAUTHACCESS_GENERALERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
+                       "ERR520E", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
+
        ;
        
        ErrorTypeEnum eType;
        ;
        
        ErrorTypeEnum eType;
index 99a6c34..ca4cdec 100644 (file)
@@ -82,6 +82,10 @@ public enum EPErrorCodesEnum implements EELFResolvableErrorEnum {
        INTERNALUNEXPECTEDWARNING_ONE_ARGUMENT,
        INTERNALUNEXPECTEDERROR_ONE_ARGUMENT,
        INTERNALUNEXPECTEDFATAL_ONE_ARGUMENT,
        INTERNALUNEXPECTEDWARNING_ONE_ARGUMENT,
        INTERNALUNEXPECTEDERROR_ONE_ARGUMENT,
        INTERNALUNEXPECTEDFATAL_ONE_ARGUMENT,
+       
+       EXTERNALAUTHACCESS_CONNECTIONERROR,
+       EXTERNALAUTHACCESS_AUTHENTICATIONERROR,
+       EXTERNALAUTHACCESS_GENERALERROR,
        ;
        
        /**
        ;
        
        /**
index ebda67e..2c6b330 100644 (file)
@@ -29,6 +29,7 @@ import org.openecomp.portalsdk.core.logging.format.ErrorSeverityEnum;
 import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate;
 import org.openecomp.portalsdk.core.web.support.UserUtils;
 import org.slf4j.MDC;
 import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate;
 import org.openecomp.portalsdk.core.web.support.UserUtils;
 import org.slf4j.MDC;
+import org.springframework.http.HttpStatus;
 
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
 
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
@@ -282,4 +283,15 @@ public class EPLogUtil {
                return auditLogStoreAnalyticsMsg.toString();
        }
 
                return auditLogStoreAnalyticsMsg.toString();
        }
 
+       public static void logExternalAuthAccessAlarm(EELFLoggerDelegate logger, HttpStatus res) {
+               if (res.equals(HttpStatus.UNAUTHORIZED) || res.equals(HttpStatus.FORBIDDEN)) {
+                       EPLogUtil.logEcompError(logger, EPAppMessagesEnum.ExternalAuthAccessAuthenticationError);
+               } else if (res.equals(HttpStatus.NOT_FOUND) || res.equals(HttpStatus.NOT_ACCEPTABLE)
+                               || res.equals(HttpStatus.CONFLICT) || res.equals(HttpStatus.BAD_REQUEST)) {
+                       EPLogUtil.logEcompError(logger, EPAppMessagesEnum.ExternalAuthAccessConnectionError);
+               } else if (!res.equals(HttpStatus.ACCEPTED) && !res.equals(HttpStatus.OK)) {
+                       EPLogUtil.logEcompError(logger, EPAppMessagesEnum.ExternalAuthAccessGeneralError);
+               }
+       }
+
 }
 }
index 491743f..cddd1c2 100644 (file)
@@ -24,6 +24,7 @@ import org.openecomp.portalapp.portal.domain.EPUser;
 import org.openecomp.portalapp.portal.domain.EPUserApp;
 import org.openecomp.portalapp.portal.domain.ExternalRoleDetails;
 import org.openecomp.portalapp.portal.logging.aop.EPMetricsLog;
 import org.openecomp.portalapp.portal.domain.EPUserApp;
 import org.openecomp.portalapp.portal.domain.ExternalRoleDetails;
 import org.openecomp.portalapp.portal.logging.aop.EPMetricsLog;
+import org.openecomp.portalapp.portal.logging.logic.EPLogUtil;
 import org.openecomp.portalapp.portal.transport.BulkUploadRoleFunction;
 import org.openecomp.portalapp.portal.transport.BulkUploadUserRoles;
 import org.openecomp.portalapp.portal.transport.CentralApp;
 import org.openecomp.portalapp.portal.transport.BulkUploadRoleFunction;
 import org.openecomp.portalapp.portal.transport.BulkUploadUserRoles;
 import org.openecomp.portalapp.portal.transport.CentralApp;
@@ -52,6 +53,7 @@ import org.springframework.http.HttpMethod;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.client.HttpClientErrorException;
 import org.springframework.web.client.RestTemplate;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import org.springframework.web.client.RestTemplate;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
@@ -797,6 +799,7 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                                                + app.getNameSpace() + "." + checkType + "/" + roleFuncName + "/*",
                                HttpMethod.GET, getSinglePermEntity, String.class);
                if (getResponse.getStatusCode().value() != 200) {
                                                + app.getNameSpace() + "." + checkType + "/" + roleFuncName + "/*",
                                HttpMethod.GET, getSinglePermEntity, String.class);
                if (getResponse.getStatusCode().value() != 200) {
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, getResponse.getStatusCode());
                        throw new Exception(getResponse.getBody());
                }
                logger.debug(EELFLoggerDelegate.debugLogger, "Connected to External Access system");
                        throw new Exception(getResponse.getBody());
                }
                logger.debug(EELFLoggerDelegate.debugLogger, "Connected to External Access system");
@@ -814,8 +817,11 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                                        SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "perm",
                                        HttpMethod.POST, entity, String.class);
                        logger.debug(EELFLoggerDelegate.debugLogger, "Connected to External Access system");
                                        SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "perm",
                                        HttpMethod.POST, entity, String.class);
                        logger.debug(EELFLoggerDelegate.debugLogger, "Connected to External Access system");
+                       }catch(HttpClientErrorException e){
+                               logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - Failed to add function in external central auth system", e);
+                               EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
                        }catch(Exception e){
                        }catch(Exception e){
-                               logger.error(EELFLoggerDelegate.errorLogger, "Failed to add fucntion in external central auth system", e);
+                               logger.error(EELFLoggerDelegate.errorLogger, "Failed to add function in external central auth system", e);
                        }
                } else {
                        try{
                        }
                } else {
                        try{
@@ -830,8 +836,11 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                                        SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "perm",
                                        HttpMethod.PUT, entity, String.class);
                        logger.debug(EELFLoggerDelegate.debugLogger, "Connected to External Access system");
                                        SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "perm",
                                        HttpMethod.PUT, entity, String.class);
                        logger.debug(EELFLoggerDelegate.debugLogger, "Connected to External Access system");
-                       } catch(Exception e){
-                               logger.error(EELFLoggerDelegate.errorLogger, "Failed to add fucntion in external central auth system", e);
+                       }catch(HttpClientErrorException e){
+                               logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - Failed to add function in external central auth system", e);
+                               EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
+                       }catch(Exception e){
+                               logger.error(EELFLoggerDelegate.errorLogger, "Failed to add function in external central auth system", e);
 
                        }
                }
 
                        }
                }
@@ -875,6 +884,9 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                template.exchange(
                                SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "perm?force=true",
                                HttpMethod.DELETE, entity, String.class);
                template.exchange(
                                SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "perm?force=true",
                                HttpMethod.DELETE, entity, String.class);
+               } catch(HttpClientErrorException e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - Failed to delete functions in External System", e);
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
                } catch(Exception e){
                        if(e.getMessage().equalsIgnoreCase("404 Not Found")){
                        logger.debug(EELFLoggerDelegate.debugLogger, " It seems like function is already deleted in external central auth system  but exists in local DB", e.getMessage());
                } catch(Exception e){
                        if(e.getMessage().equalsIgnoreCase("404 Not Found")){
                        logger.debug(EELFLoggerDelegate.debugLogger, " It seems like function is already deleted in external central auth system  but exists in local DB", e.getMessage());
@@ -932,6 +944,7 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                                        + epRoleList.get(0).getName().replaceAll(" ", "_") + "\"}";
                        deleteResponse = deleteRoleInExternalSystem(deleteRoleKey);
                        if (deleteResponse.getStatusCode().value() != 200) {
                                        + epRoleList.get(0).getName().replaceAll(" ", "_") + "\"}";
                        deleteResponse = deleteRoleInExternalSystem(deleteRoleKey);
                        if (deleteResponse.getStatusCode().value() != 200) {
+                               EPLogUtil.logExternalAuthAccessAlarm(logger, deleteResponse.getStatusCode());
                                throw new Exception("Failed to delete role in external access system!");
                        }
                        logger.debug(EELFLoggerDelegate.debugLogger, "about to commit the transaction");
                                throw new Exception("Failed to delete role in external access system!");
                        }
                        logger.debug(EELFLoggerDelegate.debugLogger, "about to commit the transaction");
@@ -1038,7 +1051,10 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                        transaction.commit();
                        logger.debug(EELFLoggerDelegate.debugLogger, "committed the transaction");
                        result = true;
                        transaction.commit();
                        logger.debug(EELFLoggerDelegate.debugLogger, "committed the transaction");
                        result = true;
-               } catch (Exception e) {
+               }catch(HttpClientErrorException e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - Failed to deleteRoleDependeciesRecord", e);
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
+               }catch (Exception e) {
                        EcompPortalUtils.rollbackTransaction(transaction,
                                        "deleteDependcyRoleRecord rollback, exception = " + e);
                        logger.error(EELFLoggerDelegate.errorLogger, EcompPortalUtils.getStackTrace(e));
                        EcompPortalUtils.rollbackTransaction(transaction,
                                        "deleteDependcyRoleRecord rollback, exception = " + e);
                        logger.error(EELFLoggerDelegate.errorLogger, EcompPortalUtils.getStackTrace(e));
@@ -1174,7 +1190,10 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                                addRoleFunctionInExternalSystem(cenRoleFunc, app);
                                functionsAdded++;
                        }
                                addRoleFunctionInExternalSystem(cenRoleFunc, app);
                                functionsAdded++;
                        }
-               } catch (Exception e) {
+               }catch(HttpClientErrorException e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - bulkUploadFunctions failed", e);
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
+               }catch (Exception e) {
                        logger.error(EELFLoggerDelegate.errorLogger, "bulkUploadFunctions failed", e.getMessage(), e);
                }
                return functionsAdded;
                        logger.error(EELFLoggerDelegate.errorLogger, "bulkUploadFunctions failed", e.getMessage(), e);
                }
                return functionsAdded;
@@ -1212,7 +1231,10 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                template.exchange(
                                SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "role",
                                HttpMethod.POST, entity, String.class);
                template.exchange(
                                SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "role",
                                HttpMethod.POST, entity, String.class);
-               } catch(Exception e){
+               }catch(HttpClientErrorException e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - Failed to addRoleInExternalSystem", e);
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
+               }catch(Exception e){
                        if (e.getMessage().equalsIgnoreCase("409 Conflict")) {
                                logger.error(EELFLoggerDelegate.errorLogger, "Role already exits but does not break functionality");
                        } else {
                        if (e.getMessage().equalsIgnoreCase("409 Conflict")) {
                                logger.error(EELFLoggerDelegate.errorLogger, "Role already exits but does not break functionality");
                        } else {
@@ -1238,6 +1260,9 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                                        }
                                }
                        }
                                        }
                                }
                        }
+               } catch(HttpClientErrorException e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - Failed to bulkUploadRolesFunctions", e);
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
                } catch (Exception e) {
                        logger.error(EELFLoggerDelegate.errorLogger, "bulkUploadRolesFunctions failed", e);
                }
                } catch (Exception e) {
                        logger.error(EELFLoggerDelegate.errorLogger, "bulkUploadRolesFunctions failed", e);
                }
@@ -1548,6 +1573,9 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                        }
                
                logger.debug(EELFLoggerDelegate.debugLogger, "Finished SyncApplicationRolesWithEcompDB");
                        }
                
                logger.debug(EELFLoggerDelegate.debugLogger, "Finished SyncApplicationRolesWithEcompDB");
+               }catch(HttpClientErrorException e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "Failed to SyncApplicationRolesWithEcompDB", e);
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
                }catch(Exception e){
                        logger.error(EELFLoggerDelegate.errorLogger, "Failed to SyncApplicationRolesWithEcompDB", e);
                }
                }catch(Exception e){
                        logger.error(EELFLoggerDelegate.errorLogger, "Failed to SyncApplicationRolesWithEcompDB", e);
                }
@@ -1597,7 +1625,10 @@ public class ExternalAccessRolesServiceImpl implements ExternalAccessRolesServic
                template.exchange(
                                SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "userRole",
                                HttpMethod.POST, entity, String.class);
                template.exchange(
                                SystemProperties.getProperty(EPCommonSystemProperties.EXTERNAL_CENTRAL_ACCESS_URL) + "userRole",
                                HttpMethod.POST, entity, String.class);
-               } catch (Exception e) {
+               }catch(HttpClientErrorException e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "HttpClientErrorException - Failed to addUserRoleInExternalSystem", e);
+                       EPLogUtil.logExternalAuthAccessAlarm(logger, e.getStatusCode());
+               }catch (Exception e) {
                        if (e.getMessage().equalsIgnoreCase("409 Conflict")) {
                                logger.error(EELFLoggerDelegate.errorLogger, "UserRole already exits but does not break functionality");
                        } else {
                        if (e.getMessage().equalsIgnoreCase("409 Conflict")) {
                                logger.error(EELFLoggerDelegate.errorLogger, "UserRole already exits but does not break functionality");
                        } else {
index 0284452..f29f9d9 100644 (file)
@@ -414,4 +414,14 @@ public class EcompPortalUtils {
                return result;
        }
 
                return result;
        }
 
+       public static String truncateString(String originString, int size){
+               if(originString.length()>=size){
+                       StringBuilder stringBuilder = new StringBuilder();
+                       stringBuilder.append(originString);
+                       stringBuilder.setLength(size);
+                       stringBuilder.append("...");
+                       return stringBuilder.toString();
+               }
+               return originString;
+       }
 }
 }
index 57bb543..56bb542 100644 (file)
@@ -27,4 +27,5 @@ public interface PortalConstants {
        public static final Long SYS_ADMIN_ROLE_ID = 1L;
        public static final String ADMIN_ROLE = "Account Administrator";
        public static final String PORTAL_ADMIN_ROLE = "System Administrator";
        public static final Long SYS_ADMIN_ROLE_ID = 1L;
        public static final String ADMIN_ROLE = "Account Administrator";
        public static final String PORTAL_ADMIN_ROLE = "System Administrator";
+       public static final Integer AUDIT_LOG_COMMENT_SIZE = 990;
 }
 }
index c4ac1e8..e69e32a 100644 (file)
@@ -8,8 +8,6 @@ of the ECOMP Portal web application.  Those specific versions are built using
 separate Maven projects that copy in ("overlay") the contents of this project
 at package time.
 
 separate Maven projects that copy in ("overlay") the contents of this project
 at package time.
 
-## Static files
+Release Notes
 
 
-Static files should be entered into the ecomp-portal-FE-common/home directory, 
-whereby home = the webserver html root directory.  The files and directories 
-will be copied exactly as they are placed.
+ - PORTAL-86 remove "home" subdirectory with static files
index 9febc97..63073ae 100644 (file)
                                </div>          
                                
                                <a id="manage-role"  href="roleFunctions">Manage Role Functions</a><br><br>
                                </div>          
                                
                                <a id="manage-role"  href="roleFunctions">Manage Role Functions</a><br><br>
-                               
-                               <div id="page-title-child" class="pageTitle">
-                                       <label>Child Roles</label>
-                                       <a id="add-child-role"  ng-click="addNewChildRoleModalPopup();" ng-style="{'cursor':'pointer'}" class="icon-primary-accordion-plus" size="small"></a>
-                               </div>
-                               
-                               <div b2b-table table-data="role.childRoles"  ng-hide="users.isLoadingTable"     search-string="users.searchString" class="b2b-table-div">
-                                       <table>
-                                               <thead b2b-table-row type="header">
-                                                       <tr >
-                                                               <th id="table-header-name" b2b-table-header key="firstName" sortable="true" >Name</th>
-                                                               <th id="table-header-remove" b2b-table-header key="lastName" sortable="true" >Remove</th>
-                                                       </tr>
-                                               </thead>
-                                               <tbody b2b-table-row type="body"        row-repeat="role in role.childRoles">
-                                                       <tr >
-                                                               <td id="role-function-{{role.name}}" b2b-table-body id="rowheader_t1_{{$index}}" headers="col1" ng-bind="role.name"></td>
-                                                               <td b2b-table-body headers="rowheader_t1_{{$index}} col4" id="{{$index}}-button-remove-role" >
-                                                               <div ng-click="removeChildRole(role);" ><a href="javascript:void(0)" class="icon-misc-trash"></a></div>
-                                                               </td>                                                   
-                                                       </tr>
-                                               </tbody>
-                                       </table>
-                               </div>                                  
+                                                                       
                        </div>
                        </div>
                </div>
                        </div>
                        </div>
                </div>
index 81384ad..366fb21 100644 (file)
                 // // pre-processing
                 if (!($scope.isEditMode)) {
                     var validation = false;
                 // // pre-processing
                 if (!($scope.isEditMode)) {
                     var validation = false;
-                    if ($scope.isDateValid($scope.newNotifModel.startTime) && $scope.isDateValid($scope.newNotifModel.endTime) && $scope.newNotifModel.msgHeader != '' && $scope.newNotifModel.msgDescription != '' && ($scope.newNotifModel.startTime < $scope.newNotifModel.endTime)) {
+                    if ($scope.isStartDateValidFromToday($scope.newNotifModel.startTime)&&$scope.isStartDateValidFromToday($scope.newNotifModel.endTime)&&$scope.isDateValid($scope.newNotifModel.startTime) && $scope.isDateValid($scope.newNotifModel.endTime) && $scope.newNotifModel.msgHeader != '' && $scope.newNotifModel.msgDescription != '' && ($scope.newNotifModel.startTime < $scope.newNotifModel.endTime)) {
                         validation = true;
                         if ($scope.newNotifModel.isForAllRoles == 'N') {
                             validation = $scope.checkTreeSelect();
                         validation = true;
                         if ($scope.newNotifModel.isForAllRoles == 'N') {
                             validation = $scope.checkTreeSelect();
                     $scope.newNotifModel.endTime = $filter('date')($scope.endTime, 'medium');
                 }
             }
                     $scope.newNotifModel.endTime = $filter('date')($scope.endTime, 'medium');
                 }
             }
+            
+            /*To validate the manual entry of date in MM/DD/YYYY Format*/
 
             $scope.isDateValid = function(time) {
                 if (time == undefined) {
 
             $scope.isDateValid = function(time) {
                 if (time == undefined) {
                 var year = startDateformat[2];
                 if (year.length != 4) return false;
                 var composedDate = new Date(year, month, day);
                 var year = startDateformat[2];
                 if (year.length != 4) return false;
                 var composedDate = new Date(year, month, day);
-                return composedDate.getDate() == day &&
-                    composedDate.getMonth() == month &&
-                    composedDate.getFullYear() == year;
-
+                 return composedDate.getDate() == day &&
+                         composedDate.getMonth() == month &&
+                         composedDate.getFullYear() == year;
+            };
+            
+         /*The manual and drop down calendar should be consistent.
+         Start date must be greater than or equal to current date.The end dates are not allowed after the 3 months from current dates*/
+            
+            $scope.isStartDateValidFromToday = function (time) {
+               if(time == undefined){
+                    return false;
+                }
+               if(typeof time == 'object'){
+                       return true;
+               }
+                var startDateformat    =time.split('/');
+                if (startDateformat.length != 3) return true;
+                var day = startDateformat[1];
+                var month = startDateformat[0];
+                 month= parseInt(month)-1;
+                var year = startDateformat[2];
+                if(year.length!=4) return true;
+                var composedDate = new Date(year, month, day);
+              /* As end dates are not allowed after the 3 months from current dates*/
+                var x = 3; //or whatever offset
+                var CurrentDate = new Date();
+                /*If composed date is less than the current date,error message should display*/
+                if(composedDate<CurrentDate)
+                       return false;
+                CurrentDate.setMonth(CurrentDate.getMonth() + x);
+                if(composedDate>CurrentDate)
+                       return false;
+                 return true;
             };
 
 
             };
 
 
index 79c2bae..17bbdab 100644 (file)
     right: 10px;
     top: 8px;
 }     
     right: 10px;
     top: 8px;
 }     
+
+.date-validation{
+       top:185px;
+       color: #cf2a2a;
+       font-size: 10px;
+       position:absolute;
+}
+.endDate-validation{
+       top:270px;
+       color: #cf2a2a;
+       font-size: 10px;
+       position:absolute;
+}
\ No newline at end of file
index 57433c1..5d1698e 100644 (file)
                                                        ng-model="newNotifModel.startTime" b2b-datepicker min="minDate" max="maxDate" 
                                                        required />
                                        </div>
                                                        ng-model="newNotifModel.startTime" b2b-datepicker min="minDate" max="maxDate" 
                                                        required />
                                        </div>
-                                       <div id="user-startdate-required" ng-show="!isDateValid(newNotifModel.startTime)">
-                                               <small class="mandatory-categories">Please enter valid date in MM/DD/YYYY format!</small>
+                                       <div style="{{( isEditMode )? 'opacity : 0; pointer-events: none;':' '}}">
+                                               <div id="user-startdate-required" ng-show="!isDateValid(newNotifModel.startTime)">
+                                                       <small class="mandatory-categories">Please enter valid date in MM/DD/YYYY format!</small>
+                                               </div>
+                                               <div id="user-startdate-required" ng-show="!isStartDateValidFromToday(newNotifModel.startTime)">
+                                                       <small class="date-validation">Date should be greater than or equal to current date!</small>
+                                               </div>
                                        </div>
                                        </div>
-                                       
                                </div>
                                <div ng-show="!isEditMode" ng-init="formatStartDate()"></div> 
                        </div>                  
                                </div>
                                <div ng-show="!isEditMode" ng-init="formatStartDate()"></div> 
                        </div>                  
                        <div id="add-user-notif-enddate" class="add-widget-field"
                                style="padding-bottom: 12px; width: 301px !important; {{( isEditMode )? 'opacity : 0.6; pointer-events: none;':' '}}">
                                <div id="user-notification-enddate-label" class="user-notif-label">
                        <div id="add-user-notif-enddate" class="add-widget-field"
                                style="padding-bottom: 12px; width: 301px !important; {{( isEditMode )? 'opacity : 0.6; pointer-events: none;':' '}}">
                                <div id="user-notification-enddate-label" class="user-notif-label">
-                                       <span runat="server" ID="required" class="notifcation-label-user-requiredId">*</span> End       Date (Local Time)
+                                       <span runat="server" ID="required" class="notifcation-label-user-requiredId">*</span> EndDate (Local Time)
                                </div>
                                <div class="datepicker-container">
                                        <input class="notif-input-calendar" type="text" id="datepicker-end" 
                                                ng-model="newNotifModel.endTime" b2b-datepicker min="minDate" max="maxDate" 
                                                required />
                                </div>
                                </div>
                                <div class="datepicker-container">
                                        <input class="notif-input-calendar" type="text" id="datepicker-end" 
                                                ng-model="newNotifModel.endTime" b2b-datepicker min="minDate" max="maxDate" 
                                                required />
                                </div>
-                               <div id="user-endDate-required" ng-show="!isDateValid(newNotifModel.endTime)">
+                               <div style="{{( isEditMode )? 'opacity : 0; pointer-events: none;':' '}}">
+                                       <div id="user-endDate-required" ng-show="!isDateValid(newNotifModel.endTime)">
                                                <small class="mandatory-categories">Please enter valid date in MM/DD/YYYY format!</small>
                                        </div>
                                                <small class="mandatory-categories">Please enter valid date in MM/DD/YYYY format!</small>
                                        </div>
-                               <div id="user-enddate-error" ng-show="newNotifModel.endTime&&newNotifModel.startTime&&newNotifModel.startTime.getTime()>=newNotifModel.endTime.getTime()" class="user-enddate-error-txt">
-                                       <small class="mandatory-categories">End Date must be greater than start Date</small>
+                                       <div id="user-startdate-required"  ng-show="!isStartDateValidFromToday(newNotifModel.endTime)">
+                                               <small class="endDate-validation">Date should be greater than or equal to current date!</small>
+                                       </div>
+                                       <div id="user-enddate-error" ng-show="newNotifModel.endTime&&newNotifModel.startTime&&newNotifModel.startTime.getTime()>=newNotifModel.endTime.getTime()" class="user-enddate-error-txt">
+                                               <small class="mandatory-categories">End Date must be greater than start Date</small>
+                                       </div>
                                </div>
                                <div ng-show="!isEditMode" ng-init="formatEndDate()" ></div> 
                        </div>
                                </div>
                                <div ng-show="!isEditMode" ng-init="formatEndDate()" ></div> 
                        </div>
                                        ng-model="newNotifModel.msgDescription" name="content">
                                </textarea>
                                <div id="user-notif-message-required" ng-show="newNotifModel.msgDescription.length ==0 ">
                                        ng-model="newNotifModel.msgDescription" name="content">
                                </textarea>
                                <div id="user-notif-message-required" ng-show="newNotifModel.msgDescription.length ==0 ">
-                               <small class="mandatory-categories">Message is Required</small>
+                                       <small class="mandatory-categories">Message is Required</small>
                                </div>
                        </div>
 
                                </div>
                        </div>
 
diff --git a/ecomp-portal-FE-common/home/ecompportal/applicationsHome b/ecomp-portal-FE-common/home/ecompportal/applicationsHome
deleted file mode 100644 (file)
index e2a981e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<html>
-<body>
-ECOMP Portal has moved to this new location <a href="https://www.e-access.att.com/ecomp_portal/"> https://www.e-access.att.com/ecomp_portal/ </a>
-<p>
-Please update your bookmarks.
-</p>
-</body>
-</html>
-
diff --git a/ecomp-portal-FE-common/home/ecompportal/login.htm b/ecomp-portal-FE-common/home/ecompportal/login.htm
deleted file mode 100644 (file)
index e2a981e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<html>
-<body>
-ECOMP Portal has moved to this new location <a href="https://www.e-access.att.com/ecomp_portal/"> https://www.e-access.att.com/ecomp_portal/ </a>
-<p>
-Please update your bookmarks.
-</p>
-</body>
-</html>
-
diff --git a/ecomp-portal-FE-common/home/index.html b/ecomp-portal-FE-common/home/index.html
deleted file mode 100644 (file)
index 5e43309..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<script>
-window.location.href = "ecompui/login.htm"
-</script>
index 6e7df2a..bf7a96e 100644 (file)
@@ -92,4 +92,9 @@ body {
        z-index: 100;
        display: none;
        opacity: 0;
        z-index: 100;
        display: none;
        opacity: 0;
+}
+
+.errorContent p{
+    font-size: 28px;
+    margin-left: 120px;
 }
\ No newline at end of file
 }
\ No newline at end of file