|
268 | 268 | <div *ngIf="!isPropertyShouldBeHidden(entity, col.property)" class="ft-cell"
|
269 | 269 | [title]="transformationsService.getPropertyValue(entity, col.title) || ''">
|
270 | 270 | <inline-editor class="full-width" [placeholder]="col?.name"
|
271 |
| - *ngIf="(col.type === 'text' || col.type=='email' || col.type=='percent') && col.editable && !entity.constantRow && !transformationsService.getPropertyValue(entity, col.notEditableByProperty)" |
| 271 | + *ngIf="(col.type === 'text' || col.type=='email' || col.type=='percent') && col.editable && !entity.constantRow && !notEditableByProperty(entity, col)" |
272 | 272 | [maxLength]="col.creation ? col.creation.creationLength ? col.creation.creationLength : '100' : '100'"
|
273 | 273 | [name]="col.property" type="text" trim="blur"
|
274 | 274 | [ngModel]="transformationsService.getPropertyValue(entity, col.property)"
|
275 | 275 | (onSave)="setPropertyValue(entity, col.property, $event)">
|
276 | 276 | </inline-editor>
|
277 | 277 |
|
278 | 278 | <inline-editor [placeholder]="col?.name"
|
279 |
| - *ngIf="(col.type === 'textarea') && col.editable && !entity.constantRow && !transformationsService.getPropertyValue(entity, col.notEditableByProperty)" |
| 279 | + *ngIf="(col.type === 'textarea') && col.editable && !entity.constantRow && !notEditableByProperty(entity, col)" |
280 | 280 | [maxLength]="col.creation ? col.creation.creationLength ? col.creation.creationLength : '100' : '100'"
|
281 | 281 | [name]="col.property" [saveOnEnter]=false type="textarea" trim="blur"
|
282 | 282 | [config]="{empty:'Add...'}"
|
|
288 | 288 | [small]="true" [allowEmptyValue]="col.lookup.allowEmpty"
|
289 | 289 | [propertiesToShow]="col.lookup.propToShow" [array]="col.lookup.values"
|
290 | 290 | [model]="transformationsService.getPropertyValue(entity, col.lookup.entity)"
|
291 |
| - [disabled]="!col.editable || entity.constantRow || transformationsService.getPropertyValue(entity, col.notEditableByProperty)" |
| 291 | + [disabled]="!col.editable || entity.constantRow || notEditableByProperty(entity, col)" |
292 | 292 | placeholder="Not Assigned"
|
293 | 293 | (modelChange)="setPropertyValue(entity, col.lookup.entity, $event)">
|
294 | 294 | </lookup-autocomplete>
|
|
297 | 297 | [colorProperty]="'color'"
|
298 | 298 | [propertiesToShow]="[getLookupProperty(col.property, col.lookup.values)]"
|
299 | 299 | [array]="col.lookup.values"
|
300 |
| - [disabled]="!col.editable || entity.constantRow || transformationsService.getPropertyValue(entity, col.notEditableByProperty)" |
| 300 | + [disabled]="!col.editable || entity.constantRow || notEditableByProperty(entity, col)" |
301 | 301 | placeholder="Not Assigned" [allowEmptyValue]="col.lookup.allowEmpty"
|
302 | 302 | [model]="transformationsService.getPropertyValue(entity, col.lookup.entity)"
|
303 | 303 | (modelChange)="setPropertyValue(entity, col.lookup.entity, $event)"></lookup-colored>
|
|
316 | 316 | [ngModel]="!!transformationsService.getPropertyValue(entity, col.property)"
|
317 | 317 | (ngModelChange)="setPropertyValue(entity, col.property, $event)"
|
318 | 318 | (change)="sendUpdate(entity)"
|
319 |
| - [disabled]="!col.editable || entity.constantRow || transformationsService.getPropertyValue(entity, col.notEditableByProperty)" /> |
| 319 | + [disabled]="!col.editable || entity.constantRow || notEditableByProperty(entity, col)" /> |
320 | 320 |
|
321 | 321 | <a *ngIf="col.type === 'link' && transformationsService.getPropertyValue(entity, col.property).link"
|
322 | 322 | [routerLink]="transformationsService.getPropertyValue(entity, col.property).link">{{transformationsService.getPropertyValue(entity, col.property).text}}</a>
|
|
329 | 329 | {{transformationsService.getPropertyValue(entity, col.property).text}}</div>
|
330 | 330 |
|
331 | 331 | <div
|
332 |
| - *ngIf="col.type === 'multiselect' && (!col.editable || entity.constantRow || transformationsService.getPropertyValue(entity, col.notEditableByProperty))"> |
| 332 | + *ngIf="col.type === 'multiselect' && (!col.editable || entity.constantRow || notEditableByProperty(entity, col))"> |
333 | 333 | {{getMultiPropertyValueString(entity, col.property, col.lookup.propToShow)}}</div>
|
334 | 334 |
|
335 | 335 | <lookup-autocomplete-multiselect class="ms-lookup-sm" [cutLongText]="true"
|
336 |
| - *ngIf="col.type === 'multiselect' && (col.editable && !entity.constantRow && !transformationsService.getPropertyValue(entity, col.notEditableByProperty))" |
| 336 | + *ngIf="col.type === 'multiselect' && (col.editable && !entity.constantRow && !notEditableByProperty(entity, col))" |
337 | 337 | placeholder="{{col?.name}}" [propertiesToShow]="col.lookup.propToShow"
|
338 | 338 | [array]="col.lookup.values"
|
339 | 339 | [model]="transformationsService.getPropertyValue(entity, col.property)"
|
340 | 340 | (modelChange)="setPropertyValue(entity, col.lookup.entity, $event)">
|
341 | 341 | </lookup-autocomplete-multiselect>
|
342 | 342 |
|
343 |
| - <div *ngIf="col.type === 'date' && col.format" class="nowrap"> |
| 343 | + <div *ngIf="col.type === 'date' && col.format && (!col.editable || entity.constantRow || notEditableByProperty(entity, col))" class="nowrap"> |
344 | 344 | {{transformationsService.getPropertyValue(entity, col.property) | date:col.format}}
|
345 | 345 | </div>
|
346 | 346 |
|
347 |
| - <div *ngIf="col.type === 'date' && !col.format" class="nowrap"> |
| 347 | + <div *ngIf="col.type === 'date' && !col.format && (!col.editable || entity.constantRow || notEditableByProperty(entity, col))" class="nowrap"> |
348 | 348 | {{transformationsService.getPropertyValue(entity, col.property) | date:'MM/dd/yy hh:mm:ss a'}}
|
349 | 349 | </div>
|
| 350 | + |
| 351 | + <ng-datepicker *ngIf="col.type === 'date' && col.editable && !entity.constantRow && !notEditableByProperty(entity, col)" |
| 352 | + [ngModel]="transformationsService.getPropertyValue(entity, col.property)" |
| 353 | + (ngModelChange)="setPropertyValue(entity, col.property, $event)" |
| 354 | + [options]="col.format"></ng-datepicker> |
350 | 355 |
|
351 | 356 | <div
|
352 |
| - *ngIf="col.type === 'time' && (!col.editable || entity.constantRow || transformationsService.getPropertyValue(entity, col.notEditableByProperty))"> |
| 357 | + *ngIf="col.type === 'time' && (!col.editable || entity.constantRow || notEditableByProperty(entity, col))"> |
353 | 358 | {{transformationsService.msToDurationString(transformationsService.getPropertyValue(entity, col.property))}}
|
354 | 359 | </div>
|
355 | 360 | <input
|
356 |
| - *ngIf="col.type === 'time' && col.editable && !entity.constantRow && !transformationsService.getPropertyValue(entity, col.notEditableByProperty)" |
| 361 | + *ngIf="col.type === 'time' && col.editable && !entity.constantRow && !notEditableByProperty(entity, col)" |
357 | 362 | class="form-control input-sm ft-duration-input" [name]="col.property + rowNum"
|
358 | 363 | type="text" [textMask]="{mask:durationMask}"
|
359 | 364 | [ngModel]="transformationsService.calculateDuration(transformationsService.getPropertyValue(entity, col.property))"
|
360 | 365 | (ngModelChange)="setDuration(entity, col.property, $event)"
|
361 | 366 | (blur)="sendUpdate(entity)" />
|
362 | 367 |
|
363 | 368 | <div
|
364 |
| - *ngIf="(col.type === 'text' || col.type=='email' || col.type=='percent' || col.type=='textarea') && (!col.editable || entity.constantRow || transformationsService.getPropertyValue(entity, col.notEditableByProperty)) && !col.link"> |
| 369 | + *ngIf="(col.type === 'text' || col.type=='email' || col.type=='percent' || col.type=='textarea') && (!col.editable || entity.constantRow || notEditableByProperty(entity, col)) && !col.link"> |
365 | 370 | {{transformationsService.getPropertyValue(entity, col.property)}}</div>
|
366 | 371 | <attachment-inline *ngIf="col.type === 'file'" [name]="col.property + rowNum"
|
367 | 372 | [model]="transformationsService.getPropertyValue(entity, col.property)"
|
|
0 commit comments