mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
[ADF-858] added multiple attribute to upload widget (#2064)
This commit is contained in:
parent
af63d2e805
commit
c974da301d
@ -7,6 +7,7 @@
|
|||||||
<input *ngIf="!hasFile"
|
<input *ngIf="!hasFile"
|
||||||
#file
|
#file
|
||||||
type="file"
|
type="file"
|
||||||
|
[multiple]="multipleOption"
|
||||||
[attr.id]="field.id"
|
[attr.id]="field.id"
|
||||||
[disabled]="field.readOnly"
|
[disabled]="field.readOnly"
|
||||||
class="upload-widget__file"
|
class="upload-widget__file"
|
||||||
|
@ -120,13 +120,12 @@ describe('UploadWidget', () => {
|
|||||||
type: FormFieldTypes.UPLOAD,
|
type: FormFieldTypes.UPLOAD,
|
||||||
readOnly: false
|
readOnly: false
|
||||||
});
|
});
|
||||||
|
|
||||||
fixture.detectChanges();
|
|
||||||
inputElement = <HTMLInputElement>element.querySelector('#upload-id');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should be disabled on readonly forms', async(() => {
|
it('should be disabled on readonly forms', async(() => {
|
||||||
uploadWidget.field.form.readOnly = true;
|
uploadWidget.field.form.readOnly = true;
|
||||||
|
fixture.detectChanges();
|
||||||
|
inputElement = <HTMLInputElement>element.querySelector('#upload-id');
|
||||||
|
|
||||||
fixture.whenStable().then(() => {
|
fixture.whenStable().then(() => {
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
@ -136,6 +135,32 @@ describe('UploadWidget', () => {
|
|||||||
});
|
});
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
it('should have the multiple attribute when is selected in parameters', async(() => {
|
||||||
|
uploadWidget.field.params.multiple = true;
|
||||||
|
fixture.detectChanges();
|
||||||
|
inputElement = <HTMLInputElement>element.querySelector('#upload-id');
|
||||||
|
|
||||||
|
fixture.whenStable().then(() => {
|
||||||
|
fixture.detectChanges();
|
||||||
|
expect(inputElement).toBeDefined();
|
||||||
|
expect(inputElement).not.toBeNull();
|
||||||
|
expect(inputElement.getAttributeNode('multiple')).toBeTruthy();
|
||||||
|
});
|
||||||
|
}));
|
||||||
|
|
||||||
|
it('should not have the multiple attribute if multiple is false', async(() => {
|
||||||
|
uploadWidget.field.params.multiple = false;
|
||||||
|
fixture.detectChanges();
|
||||||
|
inputElement = <HTMLInputElement>element.querySelector('#upload-id');
|
||||||
|
|
||||||
|
fixture.whenStable().then(() => {
|
||||||
|
fixture.detectChanges();
|
||||||
|
expect(inputElement).toBeDefined();
|
||||||
|
expect(inputElement).not.toBeNull();
|
||||||
|
expect(inputElement.getAttributeNode('multiple')).toBeFalsy();
|
||||||
|
});
|
||||||
|
}));
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
import { LogService } from 'ng2-alfresco-core';
|
import { LogService } from 'ng2-alfresco-core';
|
||||||
import { FormService } from '../../../services/form.service';
|
import { FormService } from '../../../services/form.service';
|
||||||
import { baseHost , WidgetComponent } from './../widget.component';
|
import { baseHost, WidgetComponent } from './../widget.component';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'upload-widget',
|
selector: 'upload-widget',
|
||||||
@ -31,10 +31,11 @@ export class UploadWidget extends WidgetComponent implements OnInit {
|
|||||||
hasFile: boolean;
|
hasFile: boolean;
|
||||||
fileName: string;
|
fileName: string;
|
||||||
displayText: string;
|
displayText: string;
|
||||||
|
multipleOption: string = '';
|
||||||
|
|
||||||
constructor(public formService: FormService,
|
constructor(public formService: FormService,
|
||||||
private logService: LogService) {
|
private logService: LogService) {
|
||||||
super(formService);
|
super(formService);
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
@ -46,6 +47,7 @@ export class UploadWidget extends WidgetComponent implements OnInit {
|
|||||||
this.fileName = file.name;
|
this.fileName = file.name;
|
||||||
this.displayText = decodeURI(file.name);
|
this.displayText = decodeURI(file.name);
|
||||||
}
|
}
|
||||||
|
this.getMultipleFileParam();
|
||||||
}
|
}
|
||||||
|
|
||||||
reset() {
|
reset() {
|
||||||
@ -74,4 +76,12 @@ export class UploadWidget extends WidgetComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private getMultipleFileParam() {
|
||||||
|
if (this.field &&
|
||||||
|
this.field.params &&
|
||||||
|
this.field.params.multiple) {
|
||||||
|
this.multipleOption = this.field.params.multiple ? 'multiple' : '';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user