diff --git a/src/frontend/app/administration/template/template-administration.component.html b/src/frontend/app/administration/template/template-administration.component.html
index 1a52310f8061d8032a0da159c9473f105dee45d1..d8b7077a47199fcf5ded0aa8092daa3e849b0c0d 100755
--- a/src/frontend/app/administration/template/template-administration.component.html
+++ b/src/frontend/app/administration/template/template-administration.component.html
@@ -6,7 +6,7 @@
             <menu-nav></menu-nav>
             <mat-nav-list *ngIf="!creationMode && !loading">
                 <h3 mat-subheader>{{lang.actions}}</h3>
-                <a mat-list-item *ngIf="!lockFound && template.template_target != 'acknowledgementReceipt'" (click)="duplicateTemplate()">
+                <a mat-list-item [disableRipple]="lockFound || template.template_target == 'acknowledgementReceipt'" [class.disabled]="lockFound || template.template_target == 'acknowledgementReceipt'" (click)="duplicateTemplate()">
                     <mat-icon color="primary" mat-list-icon class="fa fa-copy"></mat-icon>
                     <p mat-line>
                         {{lang.duplicate}}
diff --git a/src/frontend/app/administration/template/template-administration.component.ts b/src/frontend/app/administration/template/template-administration.component.ts
index 1b96936c5f7eef6ad4b6d2a64677a3c5aad2be4f..b4b8c737587ee5354ed1e007ed4a43d6ce7ae9f4 100755
--- a/src/frontend/app/administration/template/template-administration.component.ts
+++ b/src/frontend/app/administration/template/template-administration.component.ts
@@ -14,6 +14,7 @@ declare var angularGlobals: any;
 
 @Component({
     templateUrl: "template-administration.component.html",
+    styleUrls: ['template-administration.component.scss'],
     providers: [NotificationService]
 })
 export class TemplateAdministrationComponent implements OnInit {
@@ -264,16 +265,18 @@ export class TemplateAdministrationComponent implements OnInit {
     }
 
     duplicateTemplate() {
-        let r = confirm(this.lang.confirmDuplicate);
+        if (!this.lockFound && this.template.template_target != 'acknowledgementReceipt') {
+            let r = confirm(this.lang.confirmDuplicate);
 
-        if (r) {
-            this.http.post(this.coreUrl + 'rest/templates/' + this.template.template_id + '/duplicate', { 'id': this.template.template_id })
-                .subscribe((data: any) => {
-                    this.notify.success(this.lang.templateDuplicated);
-                    this.router.navigate(['/administration/templates/' + data.id]);
-                }, (err) => {
-                    this.notify.error(err.error.errors);
-                });
+            if (r) {
+                this.http.post(this.coreUrl + 'rest/templates/' + this.template.template_id + '/duplicate', { 'id': this.template.template_id })
+                    .subscribe((data: any) => {
+                        this.notify.success(this.lang.templateDuplicated);
+                        this.router.navigate(['/administration/templates/' + data.id]);
+                    }, (err) => {
+                        this.notify.error(err.error.errors);
+                    });
+            }
         }
     }