diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100755 index 0000000000000000000000000000000000000000..ac23dc737b4c8526fd37b7eea17116aa0a74cd66 --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,18 @@ +# must be unique in a given SonarQube instance +sonar.projectKey=my:project +# this is the name and version displayed in the SonarQube UI. Was mandatory prior to SonarQube 6.1. +sonar.projectName=Maarch Parapheur 21.03 +sonar.projectVersion=1.0 + +# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows. +# This property is optional if sonar.modules is set. +sonar.sources=src + +# Encoding of the source code. Default is default system encoding +#sonar.sourceEncoding=UTF-8 + +sonar.exclusions=node_modules/**/* , vendor/**/* , sql/** , test/**/* , .git/** + +sonar.tests=test/unitTests/build +sonar.php.tests.reportPath=test/unitTests/build/tests-phpunit.xml +sonar.php.coverage.reportPaths=test/unitTests/build/tests-clover.xml diff --git a/src/app/workflow/models/WorkflowTemplateModel.php b/src/app/workflow/models/WorkflowTemplateModel.php index 849cf3056b28390f345bdcacad29dd0df08f6a0d..f646b0c2a46fea941c236aa27ad0cb7eb85dcd03 100755 --- a/src/app/workflow/models/WorkflowTemplateModel.php +++ b/src/app/workflow/models/WorkflowTemplateModel.php @@ -102,20 +102,4 @@ class WorkflowTemplateModel return true; } - -// public static function getWithItems(array $args = []) -// { -// ValidatorModel::arrayType($args, ['select', 'where', 'data', 'orderBy']); -// -// $listTemplates = DatabaseModel::select([ -// 'select' => empty($args['select']) ? ['*'] : $args['select'], -// 'table' => ['list_templates', 'list_templates_items'], -// 'left_join' => ['list_templates.id = list_templates_items.list_template_id'], -// 'where' => empty($args['where']) ? [] : $args['where'], -// 'data' => empty($args['data']) ? [] : $args['data'], -// 'order_by' => empty($args['orderBy']) ? [] : $args['orderBy'] -// ]); -// -// return $listTemplates; -// } } diff --git a/src/core/models/DatabasePDO.php b/src/core/models/DatabasePDO.php index 4a590d69bc4c990c4c4f317fb00b7b079aa9b525..f70150cd6bc45cfc7e5faa34d2f1eae3940b79b9 100755 --- a/src/core/models/DatabasePDO.php +++ b/src/core/models/DatabasePDO.php @@ -102,7 +102,7 @@ class DatabasePDO if (!empty($data)) { $tmpData = []; $position = 0; - foreach ($data as $key => $value) { + foreach ($data as $value) { if (is_array($value)) { $placeholders = implode(',', array_fill(0, count($value), '?')); $position = strpos($queryString, '(?)', $position + 1); diff --git a/src/frontend/app/administration/connection/ldap/ldap-list.component.html b/src/frontend/app/administration/connection/ldap/ldap-list.component.html index f897d4f56564ba9d316855caced9d840ca563b71..384d396ba0dff03f640711392c8a7bf1e93b0480 100644 --- a/src/frontend/app/administration/connection/ldap/ldap-list.component.html +++ b/src/frontend/app/administration/connection/ldap/ldap-list.component.html @@ -18,7 +18,6 @@ <ion-content #mainContent> <ion-list> <ion-item style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label color="primary" matSort [matSortActive]="displayedColumns[0]" matSortDirection='asc' style="display: flex;font-size: 12px;align-items: center;" (matSortChange)="sortData($event)"> <ng-container *ngFor="let col of displayedColumns"> @@ -37,7 +36,6 @@ </ion-item> <ion-virtual-scroll [items]="sortedData" approxItemHeight="50px"> <ion-item *virtualItem="let element" style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label style="display: flex;cursor: pointer;" routerLink="/administration/connections/ldaps/{{element.id}}"> <div style="flex: 1" *ngFor="let col of displayedColumns"> diff --git a/src/frontend/app/administration/group/group.component.html b/src/frontend/app/administration/group/group.component.html index d23a74a4cab79ca2a5f0bf034722d646d302cafb..2f9eacbabc53d578c50177a956efa5ec6a7ac457 100644 --- a/src/frontend/app/administration/group/group.component.html +++ b/src/frontend/app/administration/group/group.component.html @@ -33,7 +33,6 @@ <ion-card *ngIf="!creationMode" style="height: 400px;"> <ion-list> <ion-item style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label color="primary" matSort [matSortActive]="displayedColumns[1]" matSortDirection='asc' style="display: flex;font-size: 12px;align-items: center;" (matSortChange)="sortData($event)"> <ng-container *ngFor="let col of displayedColumns"> @@ -53,7 +52,6 @@ </ion-item> <ion-virtual-scroll [items]="sortedData" approxItemHeight="50px"> <ion-item *virtualItem="let element" style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label style="display: flex;cursor: pointer;" routerLink="/administration/users/{{element.id}}"> <div style="flex: 1" *ngFor="let col of displayedColumns"> diff --git a/src/frontend/app/administration/group/groups-list.component.html b/src/frontend/app/administration/group/groups-list.component.html index 440bfc70e9cf75e9fb1ce15aba35ba018a11b032..cbfd736695bb43679860532e9b76e98655e64a5b 100644 --- a/src/frontend/app/administration/group/groups-list.component.html +++ b/src/frontend/app/administration/group/groups-list.component.html @@ -17,7 +17,6 @@ <ion-content #mainContent> <ion-list> <ion-item style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label color="primary" matSort [matSortActive]="displayedColumns[0]" matSortDirection='asc' style="display: flex;font-size: 12px;align-items: center;" (matSortChange)="sortData($event)"> <ng-container *ngFor="let col of displayedColumns"> <div [mat-sort-header]="col" disableClear style="flex: 1" *ngIf="col!=='actions'"> @@ -34,7 +33,6 @@ </ion-item> <ion-virtual-scroll [items]="sortedData" approxItemHeight="50px"> <ion-item *virtualItem="let element" style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label style="display: flex;cursor: pointer;" routerLink="/administration/groups/{{element.id}}"> <div style="flex: 1" *ngFor="let col of displayedColumns"> {{element[col]}} diff --git a/src/frontend/app/administration/user/users-list.component.html b/src/frontend/app/administration/user/users-list.component.html index 2201dc0630b37afe100c0620907305531a677b34..281d3f0c1c76fee8098aee786d2cbc60b832166a 100644 --- a/src/frontend/app/administration/user/users-list.component.html +++ b/src/frontend/app/administration/user/users-list.component.html @@ -17,7 +17,6 @@ <ion-content #mainContent> <ion-list> <ion-item style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label color="primary" matSort [matSortActive]="displayedColumns[1]" matSortDirection='asc' style="display: flex;font-size: 12px;align-items: center;" (matSortChange)="sortData($event)"> <ng-container *ngFor="let col of displayedColumns"> <div [mat-sort-header]="col" disableClear style="flex: 1" *ngIf="col!=='actions'"> @@ -34,7 +33,6 @@ </ion-item> <ion-virtual-scroll [items]="sortedData" approxItemHeight="50px"> <ion-item *virtualItem="let element" style="display: flex;"> - <!--<ion-checkbox slot="start"></ion-checkbox>--> <ion-label style="display: flex;cursor: pointer;" routerLink="/administration/users/{{element.id}}"> <div style="flex: 1" *ngFor="let col of displayedColumns"> {{element[col]}} diff --git a/src/frontend/app/app.component.scss b/src/frontend/app/app.component.scss index e16e3c2f13aa702713f88aa430ca4e0027ac3d13..f618ed4438e281ecf47c14fe74762069ee1a5781 100644 --- a/src/frontend/app/app.component.scss +++ b/src/frontend/app/app.component.scss @@ -7,7 +7,7 @@ .right-menu { --width: 350px; --min-width: 350px; - --max-width: 350px%; + --max-width: 350px; } .right-menu-responsive { diff --git a/src/frontend/app/document/document.component.ts b/src/frontend/app/document/document.component.ts index f6c4e4d22025a5238aaf2a30e382ee7ede1bb41b..ca900928451d5245775244c5da785f194fcc5a1d 100755 --- a/src/frontend/app/document/document.component.ts +++ b/src/frontend/app/document/document.component.ts @@ -278,10 +278,6 @@ export class DocumentComponent implements OnInit { }); await modal.present(); const { data } = await modal.onWillDismiss(); - if (data === 'success') { - - } - // console.log('dissmiss'); } scrollToElem() { diff --git a/src/frontend/app/documentDateList/document-date-list.component.scss b/src/frontend/app/documentDateList/document-date-list.component.scss index dcb435a878d572f54cceed96995d8a35f68e322f..d6ceb1f43fc060b1ed4b9a8444bc5fc6587943ad 100644 --- a/src/frontend/app/documentDateList/document-date-list.component.scss +++ b/src/frontend/app/documentDateList/document-date-list.component.scss @@ -7,12 +7,8 @@ position: absolute; border: dashed 1px grey; background: rgba(255, 255, 255, 0.6) none repeat scroll 0% 0%; - position: absolute; - // margin-right: 10px; background: none; font: sans-serif; - // overflow: hidden; - // margin-bottom: 26px; } svg { diff --git a/src/frontend/app/documentSignList/document-sign-list.component.scss b/src/frontend/app/documentSignList/document-sign-list.component.scss index 4e3264163c61cebbc3ba0a9e1c766fe751ef5dfe..bc8e5e71f1dee45947af4aae6b2fa187fb3da9fa 100644 --- a/src/frontend/app/documentSignList/document-sign-list.component.scss +++ b/src/frontend/app/documentSignList/document-sign-list.component.scss @@ -7,12 +7,8 @@ position: absolute; border: dashed 1px grey; background: rgba(255, 255, 255, 0.6) none repeat scroll 0% 0%; - position: absolute; - // margin-right: 10px; background: none; font: sans-serif; - // overflow: hidden; - // margin-bottom: 26px; } svg { diff --git a/src/frontend/app/login/updatePassword/updatePassword.component.html b/src/frontend/app/login/updatePassword/updatePassword.component.html index 91f07bd8e660054860f410812dfe38055fb5ea92..edc083eef14897e64cd1255578a3777ab384c4fc 100644 --- a/src/frontend/app/login/updatePassword/updatePassword.component.html +++ b/src/frontend/app/login/updatePassword/updatePassword.component.html @@ -64,36 +64,3 @@ </ion-item> </form> </ion-content> -<!--<div class="login-content"> - <mat-icon svgIcon="maarchLogo" class="maarchLogo"></mat-icon> - <mat-card class="login-form"> - <form (ngSubmit)="updatePassword()"> - <div class="alert-message alert-message-info" role="alert"> - {{'lang.logInOncePasswordChanged' | translate}} - </div> - <mat-form-field class="input-row"> - <input name="newPassword" matInput [(ngModel)]="password.newPassword" - placeholder="{{'lang.newPassword' | translate}}" [type]="hideNewPassword ? 'password' : 'text'" - (keyup)="checkPasswordValidity(password.newPassword)"> - <mat-icon matSuffix (click)="hideNewPassword = !hideNewPassword" class="fa fa-2x" - [ngClass]="[hideNewPassword ? 'fa-eye-slash' : 'fa-eye']"> - </mat-icon> - <mat-hint style="color:red;">{{handlePassword.errorMsg | translate}}</mat-hint> - </mat-form-field> - <mat-form-field class="input-row"> - <input name="passwordConfirmation" matInput [(ngModel)]="password.passwordConfirmation" - placeholder="{{'lang.passwordConfirmation' | translate}}" - [type]="hideNewPasswordConfirm ? 'password' : 'text'"> - <mat-icon matSuffix (click)="hideNewPasswordConfirm = !hideNewPasswordConfirm" class="fa fa-2x" - [ngClass]="[hideNewPasswordConfirm ? 'fa-eye-slash' : 'fa-eye']"></mat-icon> - <mat-hint style="color:red;" *ngIf="password.passwordConfirmation !== password.newPassword"> - {{'lang.passwordNotMatch' | translate}}</mat-hint> - <mat-hint style="color:green;" - *ngIf="password.passwordConfirmation === password.newPassword && password.newPassword.length > 0 && password.passwordConfirmation.length> 0"> - {{'lang.samePassword' | translate}}</mat-hint> - </mat-form-field> - <button type="submit" mat-button [disabled]="allowValidate() || loading">{{labelButton | translate}}</button> - <button mat-button routerLink="/login">{{'lang.cancel' | translate}}</button> - </form> - </mat-card> -</div>--> \ No newline at end of file diff --git a/src/frontend/app/search/search.component.ts b/src/frontend/app/search/search.component.ts index 30864340fd855370eb15cc1fec42f74654012dbf..f54a29608642aaa696e98c439f13136aa3fa2911 100644 --- a/src/frontend/app/search/search.component.ts +++ b/src/frontend/app/search/search.component.ts @@ -350,8 +350,8 @@ export class SearchComponent implements OnInit { this.http.put(`../rest/documents/${item.id}/workflows/interrupt`, {}) .pipe( tap(() => { - this.notificationService.success('lang.documentInterrupted'), - resolve(true); + this.notificationService.success('lang.documentInterrupted'); + resolve(true); }), catchError((err: any) => { this.notificationService.handleErrors(err);