updated fonts & calendar acls
gitea/salix/dev This commit looks good Details

This commit is contained in:
Joan Sanchez 2019-06-27 11:48:33 +02:00
parent 8c26a89516
commit 507bc8c2ce
13 changed files with 299 additions and 15 deletions

View File

@ -0,0 +1,2 @@
INSERT INTO `salix`.`ACL` (`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
VALUES ('Zone', 'editPrices', 'WRITE', 'ALLOW', 'ROLE', 'deliveryBoss');

View File

@ -12,6 +12,7 @@ export default class Calendar extends Component {
this.events = []; this.events = [];
this.defaultDate = new Date(); this.defaultDate = new Date();
this.displayControls = true; this.displayControls = true;
this.disabled = false;
this.skip = 1; this.skip = 1;
this.window.addEventListener('resize', () => { this.window.addEventListener('resize', () => {
@ -278,6 +279,7 @@ export default class Calendar extends Component {
* @param {Integer} index - Index from days array * @param {Integer} index - Index from days array
*/ */
select(index) { select(index) {
if (this.disabled) return;
let day = this.days[index]; let day = this.days[index];
day.index = index; day.index = index;
@ -290,6 +292,8 @@ export default class Calendar extends Component {
* @param {Integer} weekday - weekday index * @param {Integer} weekday - weekday index
*/ */
selectAll(weekday) { selectAll(weekday) {
if (this.disabled) return;
let selected = []; let selected = [];
for (let i in this.days) { for (let i in this.days) {
const day = this.days[i]; const day = this.days[i];
@ -325,6 +329,7 @@ ngModule.component('vnCalendar', {
onMoveNext: '&?', onMoveNext: '&?',
onMovePrevious: '&?', onMovePrevious: '&?',
displayControls: '<?', displayControls: '<?',
disabled: '<?',
skip: '<?' skip: '<?'
} }
}); });

View File

@ -6,6 +6,10 @@ vn-calendar.small {
} }
} }
vn-calendar[disabled] .day .day-number {
cursor: not-allowed
}
vn-calendar { vn-calendar {
display: block; display: block;

View File

@ -36,19 +36,24 @@ function vnAcl(aclService, $timeout) {
return conditions; return conditions;
} }
function permissionElement($scope, $element, action) { function permissionElement($element, action) {
if (!aclService.hasAny(acls)) { if (!aclService.hasAny(acls)) {
if (action === 'disabled') { if (action === 'disabled') {
let input = $element[0]; let element = $element[0];
let selector = 'input, textarea, button, submit, md-checkbox'; let selector = 'input, textarea, button, submit, md-checkbox';
if (!input.matches(selector)) if (element.$ctrl) {
input = input.querySelector(selector); element.setAttribute('disabled', 'true');
element.$ctrl.disabled = true;
}
if (input) { if (!element.matches(selector))
element = element.querySelector(selector);
if (element) {
$timeout(() => { $timeout(() => {
input.setAttribute('disabled', 'true'); element.setAttribute('disabled', 'true');
updateMaterial(input); updateMaterial(element);
}); });
$element[0].querySelectorAll('vn-drop-down').forEach(element => { $element[0].querySelectorAll('vn-drop-down').forEach(element => {
element.parentNode.removeChild(element); element.parentNode.removeChild(element);
@ -78,7 +83,7 @@ function vnAcl(aclService, $timeout) {
let action = $attrs.vnAclAction || 'disabled'; let action = $attrs.vnAclAction || 'disabled';
let conditions = getDynamicConditions($attrs); let conditions = getDynamicConditions($attrs);
permissionElement($scope, $element, action); permissionElement($element, action);
if (Object.keys(conditions).length) { if (Object.keys(conditions).length) {
let watchConditions = $scope.$watch(() => { let watchConditions = $scope.$watch(() => {
@ -86,7 +91,7 @@ function vnAcl(aclService, $timeout) {
let hasPermission = $scope.$eval($attrs[attrName]); let hasPermission = $scope.$eval($attrs[attrName]);
if (!hasPermission) { if (!hasPermission) {
updateAcls(conditions[attrName].role, hasPermission); updateAcls(conditions[attrName].role, hasPermission);
permissionElement($scope, $element, action); permissionElement($element, action);
delete conditions[attrName]; delete conditions[attrName];
} }
}); });

View File

@ -281,3 +281,264 @@
.icon-worker:before { .icon-worker:before {
content: "\e943"; content: "\e943";
} }
.icon-deliveryprices:before {
content: "\e956";
}
.icon-basketadd:before {
content: "\e955";
}
.icon-catalog:before {
content: "\e952";
}
.icon-agency:before {
content: "\e910";
}
.icon-delivery:before {
content: "\e94a";
}
.icon-wand:before {
content: "\e954";
}
.icon-unavailable:before {
content: "\e953";
}
.icon-buscaman:before {
content: "\e951";
}
.icon-pbx:before {
content: "\e950";
}
.icon-calendar:before {
content: "\e94f";
}
.icon-linesplit:before {
content: "\e945";
}
.icon-invoices:before {
content: "\e91c";
}
.icon-pets:before {
content: "\e94e";
}
.icon-100:before {
content: "\e940";
}
.icon-accessory:before {
content: "\e90a";
}
.icon-actions:before {
content: "\e900";
}
.icon-addperson:before {
content: "\e901";
}
.icon-albaran:before {
content: "\e902";
}
.icon-apps:before {
content: "\e948";
}
.icon-artificial:before {
content: "\e903";
}
.icon-barcode:before {
content: "\e904";
}
.icon-basket:before {
content: "\e942";
}
.icon-bin:before {
content: "\e905";
}
.icon-botanical:before {
content: "\e906";
}
.icon-bucket:before {
content: "\e907";
}
.icon-claims:before {
content: "\e908";
}
.icon-clone:before {
content: "\e909";
}
.icon-columnadd:before {
content: "\e944";
}
.icon-columndelete:before {
content: "\e90f";
}
.icon-components:before {
content: "\e90b";
}
.icon-consignatarios:before {
content: "\e90d";
}
.icon-control:before {
content: "\e93f";
}
.icon-credit:before {
content: "\e90e";
}
.icon-details:before {
content: "\e911";
}
.icon-disabled:before {
content: "\e91b";
}
.icon-doc:before {
content: "\e913";
}
.icon-entry:before {
content: "\e914";
}
.icon-exit:before {
content: "\e947";
}
.icon-eye:before {
content: "\e915";
}
.icon-fiscal:before {
content: "\e912";
}
.icon-flower:before {
content: "\e916";
}
.icon-frozen:before {
content: "\e917";
}
.icon-greenery:before {
content: "\e93c";
}
.icon-greuge:before {
content: "\e918";
}
.icon-grid:before {
content: "\e919";
}
.icon-handmade:before {
content: "\e90c";
}
.icon-history:before {
content: "\e91a";
}
.icon-info:before {
content: "\e949";
}
.icon-item:before {
content: "\e941";
}
.icon-languaje:before {
content: "\e91d";
}
.icon-linedelete:before {
content: "\e946";
}
.icon-lines:before {
content: "\e91e";
}
.icon-linesprepaired:before {
content: "\e94b";
}
.icon-logout:before {
content: "\e91f";
}
.icon-mana:before {
content: "\e920";
}
.icon-mandatory:before {
content: "\e921";
}
.icon-niche:before {
content: "\e922";
}
.icon-no036:before {
content: "\e923";
}
.icon-notes:before {
content: "\e924";
}
.icon-noweb:before {
content: "\e925";
}
.icon-onlinepayment:before {
content: "\e926";
}
.icon-package:before {
content: "\e927";
}
.icon-payment:before {
content: "\e928";
}
.icon-person:before {
content: "\e929";
}
.icon-photo:before {
content: "\e92a";
}
.icon-plant:before {
content: "\e92b";
}
.icon-recovery:before {
content: "\e92d";
}
.icon-regentry:before {
content: "\e92e";
}
.icon-reserve:before {
content: "\e92f";
}
.icon-revision:before {
content: "\e94c";
}
.icon-risk:before {
content: "\e930";
}
.icon-services:before {
content: "\e94d";
}
.icon-settings:before {
content: "\e931";
}
.icon-sms:before {
content: "\e932";
}
.icon-solclaim:before {
content: "\e933";
}
.icon-solunion:before {
content: "\e934";
}
.icon-splur:before {
content: "\e935";
}
.icon-stowaway:before {
content: "\e92c";
}
.icon-supplier:before {
content: "\e936";
}
.icon-tags:before {
content: "\e937";
}
.icon-tax:before {
content: "\e938";
}
.icon-ticket:before {
content: "\e939";
}
.icon-traceability:before {
content: "\e93a";
}
.icon-transaction:before {
content: "\e93b";
}
.icon-volume:before {
content: "\e93d";
}
.icon-web:before {
content: "\e93e";
}
.icon-worker:before {
content: "\e943";
}

View File

@ -93,4 +93,5 @@
<glyph unicode="&#xe953;" glyph-name="unavailable" d="M469.333 524.8v366.933h-136.533v-499.2zM290.133 345.6v546.133h-42.667v-588.8zM776.533 832v59.733h-42.667v-102.4zM644.267 699.733v192h-89.6c0 0 0-145.067 0-277.333l89.6 85.333zM866.133 682.667v-42.667c34.133-17.067 64-42.667 89.6-68.267v200.533l-89.6-89.6zM776.533 593.067l-64-64c8.533 0 17.067 4.267 25.6 4.267 85.333 0 149.333-68.267 149.333-149.333 0-85.333-68.267-149.333-149.333-149.333s-149.333 68.267-149.333 149.333c0 8.533 0 17.067 0 25.6l-68.267-68.267c8.533-38.4 21.333-72.533 46.933-102.4l-12.8-12.8h-25.6l-166.4-170.667 51.2-51.2 166.4 170.667v25.6l8.533 12.8c38.4-34.133 89.6-51.2 145.067-51.2 123.733 0 217.6 98.133 217.6 217.6 0 106.667-76.8 192-174.933 213.333zM157.867 213.333v678.4h-89.6v-733.867h29.867zM460.8 273.067l-119.467-115.2h21.333l102.4 102.4c-4.267 4.267-4.267 8.533-4.267 12.8zM964.267 960l59.733-59.733-964.267-964.267-59.733 59.733 964.267 964.267z" /> <glyph unicode="&#xe953;" glyph-name="unavailable" d="M469.333 524.8v366.933h-136.533v-499.2zM290.133 345.6v546.133h-42.667v-588.8zM776.533 832v59.733h-42.667v-102.4zM644.267 699.733v192h-89.6c0 0 0-145.067 0-277.333l89.6 85.333zM866.133 682.667v-42.667c34.133-17.067 64-42.667 89.6-68.267v200.533l-89.6-89.6zM776.533 593.067l-64-64c8.533 0 17.067 4.267 25.6 4.267 85.333 0 149.333-68.267 149.333-149.333 0-85.333-68.267-149.333-149.333-149.333s-149.333 68.267-149.333 149.333c0 8.533 0 17.067 0 25.6l-68.267-68.267c8.533-38.4 21.333-72.533 46.933-102.4l-12.8-12.8h-25.6l-166.4-170.667 51.2-51.2 166.4 170.667v25.6l8.533 12.8c38.4-34.133 89.6-51.2 145.067-51.2 123.733 0 217.6 98.133 217.6 217.6 0 106.667-76.8 192-174.933 213.333zM157.867 213.333v678.4h-89.6v-733.867h29.867zM460.8 273.067l-119.467-115.2h21.333l102.4 102.4c-4.267 4.267-4.267 8.533-4.267 12.8zM964.267 960l59.733-59.733-964.267-964.267-59.733 59.733 964.267 964.267z" />
<glyph unicode="&#xe954;" glyph-name="wand" d="M829.649 565.029l-18.808-50.155-50.155-18.808 50.155-18.808 18.808-50.155 18.808 50.155 50.155 18.808-50.155 18.808-18.808 50.155zM624.849 870.139l-35.527 89.861-33.437-89.861-89.861-35.527 89.861-33.437 33.437-89.861 33.437 89.861 91.951 33.437-89.861 35.527zM969.665 819.984l-20.898 54.335-20.898-54.335-52.245-20.898 52.245-20.898 20.898-52.245 20.898 52.245 54.335 20.898-54.335 20.898zM783.673 648.62l-71.053 71.053c-4.18 4.18-8.359 4.18-12.539 4.18s-8.359-2.090-12.539-4.18l-681.273-681.273c0 0 0 0 0 0v0c-6.269-6.269-6.269-18.808 0-25.078l71.053-71.053c6.269-6.269 16.718-6.269 22.988 0v0c0 0 0 0 0 0l683.363 683.363c6.269 6.269 6.269 16.718 0 22.988zM626.939 506.514l-56.424 56.424 129.567 129.567 56.424-56.424-129.567-129.567z" /> <glyph unicode="&#xe954;" glyph-name="wand" d="M829.649 565.029l-18.808-50.155-50.155-18.808 50.155-18.808 18.808-50.155 18.808 50.155 50.155 18.808-50.155 18.808-18.808 50.155zM624.849 870.139l-35.527 89.861-33.437-89.861-89.861-35.527 89.861-33.437 33.437-89.861 33.437 89.861 91.951 33.437-89.861 35.527zM969.665 819.984l-20.898 54.335-20.898-54.335-52.245-20.898 52.245-20.898 20.898-52.245 20.898 52.245 54.335 20.898-54.335 20.898zM783.673 648.62l-71.053 71.053c-4.18 4.18-8.359 4.18-12.539 4.18s-8.359-2.090-12.539-4.18l-681.273-681.273c0 0 0 0 0 0v0c-6.269-6.269-6.269-18.808 0-25.078l71.053-71.053c6.269-6.269 16.718-6.269 22.988 0v0c0 0 0 0 0 0l683.363 683.363c6.269 6.269 6.269 16.718 0 22.988zM626.939 506.514l-56.424 56.424 129.567 129.567 56.424-56.424-129.567-129.567z" />
<glyph unicode="&#xe955;" glyph-name="basketadd" d="M515.2 512c-16 0-28.8-12.8-28.8-28.8v-83.2c16 22.4 35.2 41.6 57.6 60.8v22.4c0 16-12.8 28.8-28.8 28.8zM416 185.6h-259.2l-44.8 348.8h566.4c32 9.6 64 16 99.2 16 16 0 32 0 48-3.2 3.2 3.2 6.4 9.6 6.4 16v64c0 16-12.8 28.8-32 32h-140.8l-115.2 227.2c6.4 6.4 6.4 19.2 6.4 28.8-6.4 32-35.2 54.4-64 48-32-6.4-54.4-32-48-64s35.2-54.4 64-48l89.6-198.4h-355.2l89.6 198.4c32-6.4 60.8 19.2 64 48s-19.2 57.6-48 64c-32 6.4-60.8-19.2-64-48 0-9.6 3.2-19.2 6.4-28.8l-115.2-233.6h-140.8c-16 0-28.8-12.8-28.8-28.8v-64c0-16 12.8-28.8 28.8-28.8h22.4l51.2-377.6c3.2-12.8 16-22.4 28.8-22.4h288c-3.2 16-3.2 35.2-3.2 54.4zM416 512c-16 0-28.8-12.8-28.8-28.8v-259.2c0-16 12.8-28.8 28.8-28.8 0 0 0 0 0 0 0 44.8 9.6 89.6 28.8 131.2v160c0 12.8-12.8 25.6-28.8 25.6zM198.4 508.8c-16-3.2-25.6-16-25.6-32l16-262.4c0-12.8 12.8-25.6 25.6-22.4h3.2c16 3.2 25.6 16 25.6 32l-12.8 259.2c-3.2 12.8-19.2 25.6-32 25.6zM284.8 483.2v-262.4c0-19.2 12.8-28.8 28.8-28.8s28.8 12.8 28.8 28.8v262.4c0 16-12.8 28.8-28.8 28.8s-28.8-12.8-28.8-28.8zM1024 243.2v-121.6h-185.6v-185.6h-121.6v185.6h-185.6v121.6h185.6v185.6h121.6v-185.6z" /> <glyph unicode="&#xe955;" glyph-name="basketadd" d="M515.2 512c-16 0-28.8-12.8-28.8-28.8v-83.2c16 22.4 35.2 41.6 57.6 60.8v22.4c0 16-12.8 28.8-28.8 28.8zM416 185.6h-259.2l-44.8 348.8h566.4c32 9.6 64 16 99.2 16 16 0 32 0 48-3.2 3.2 3.2 6.4 9.6 6.4 16v64c0 16-12.8 28.8-32 32h-140.8l-115.2 227.2c6.4 6.4 6.4 19.2 6.4 28.8-6.4 32-35.2 54.4-64 48-32-6.4-54.4-32-48-64s35.2-54.4 64-48l89.6-198.4h-355.2l89.6 198.4c32-6.4 60.8 19.2 64 48s-19.2 57.6-48 64c-32 6.4-60.8-19.2-64-48 0-9.6 3.2-19.2 6.4-28.8l-115.2-233.6h-140.8c-16 0-28.8-12.8-28.8-28.8v-64c0-16 12.8-28.8 28.8-28.8h22.4l51.2-377.6c3.2-12.8 16-22.4 28.8-22.4h288c-3.2 16-3.2 35.2-3.2 54.4zM416 512c-16 0-28.8-12.8-28.8-28.8v-259.2c0-16 12.8-28.8 28.8-28.8 0 0 0 0 0 0 0 44.8 9.6 89.6 28.8 131.2v160c0 12.8-12.8 25.6-28.8 25.6zM198.4 508.8c-16-3.2-25.6-16-25.6-32l16-262.4c0-12.8 12.8-25.6 25.6-22.4h3.2c16 3.2 25.6 16 25.6 32l-12.8 259.2c-3.2 12.8-19.2 25.6-32 25.6zM284.8 483.2v-262.4c0-19.2 12.8-28.8 28.8-28.8s28.8 12.8 28.8 28.8v262.4c0 16-12.8 28.8-28.8 28.8s-28.8-12.8-28.8-28.8zM1024 243.2v-121.6h-185.6v-185.6h-121.6v185.6h-185.6v121.6h185.6v185.6h121.6v-185.6z" />
<glyph unicode="&#xe956;" glyph-name="deliveryprices" d="M789.333 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM789.333 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM251.733 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM251.733 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM1006.933 537.6l-196.267 192c-12.8 12.8-29.867 17.067-46.933 17.067h-98.133v38.4c0 25.6-21.333 51.2-51.2 51.2h-563.2c-29.867 0-51.2-21.333-51.2-51.2v-554.667c0-29.867 25.6-51.2 51.2-51.2h68.267c8.533 64 64 115.2 132.267 115.2 64 0 123.733-51.2 132.267-115.2h268.8c8.533 64 64 115.2 132.267 115.2s128-51.2 136.533-115.2h51.2c29.867 0 51.2 25.6 51.2 51.2v260.267c0 17.067-8.533 34.133-17.067 46.933zM392.533 605.867v-38.4h-170.667c0-8.533 0-12.8 0-17.067s0-12.8 0-17.067h170.667v-42.667h-157.867c12.8-25.6 25.6-42.667 51.2-59.733 21.333-12.8 46.933-21.333 76.8-21.333 42.667 0 76.8 17.067 102.4 46.933l46.933-42.667c-17.067-21.333-38.4-38.4-68.267-46.933-25.6-12.8-55.467-17.067-89.6-17.067s-64 4.267-89.6 17.067c-25.6 12.8-51.2 29.867-68.267 51.2s-29.867 42.667-38.4 72.533h-64v38.4h55.467c0 4.267 0 8.533 0 17.067s0 12.8 0 17.067h-55.467v42.667h64c8.533 29.867 21.333 51.2 38.4 76.8s42.667 38.4 68.267 51.2c29.867 8.533 59.733 12.8 93.867 12.8 29.867 0 59.733-4.267 89.6-17.067 25.6-8.533 46.933-25.6 64-46.933l-46.933-42.667c-29.867 29.867-64 46.933-102.4 46.933-29.867 0-55.467-8.533-76.8-21.333-25.6-17.067-42.667-34.133-51.2-59.733h157.867zM921.6 529.067h-187.733c-8.533 0-8.533 4.267-8.533 8.533v145.067c0 4.267 4.267 8.533 8.533 8.533h34.133c0 0 4.267 0 4.267-4.267l153.6-145.067c4.267 0 0-12.8-4.267-12.8z" />
</font></defs></svg> </font></defs></svg>

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Binary file not shown.

View File

@ -12,7 +12,7 @@
</vn-watcher> </vn-watcher>
<vn-card pad-large> <vn-card pad-large>
<vn-horizontal pad-medium style="justify-content: space-between;"> <vn-horizontal pad-medium class="calendarControlsHeader">
<vn-icon-button icon="keyboard_arrow_left" <vn-icon-button icon="keyboard_arrow_left"
ng-click="$ctrl.onMovePrevious([stMonth, ndMonth])" ng-click="$ctrl.onMovePrevious([stMonth, ndMonth])"
vn-tooltip="Previous"> vn-tooltip="Previous">
@ -27,14 +27,14 @@
data="$ctrl.events" data="$ctrl.events"
display-controls="false" display-controls="false"
on-selection="$ctrl.onSelection(values)" on-selection="$ctrl.onSelection(values)"
skip="2"> skip="2" vn-acl="deliveryBoss">
</vn-calendar> </vn-calendar>
<vn-calendar vn-id="ndMonth" vn-one pad-medium <vn-calendar vn-id="ndMonth" vn-one pad-medium
data="$ctrl.events" data="$ctrl.events"
display-controls="false" display-controls="false"
on-selection="$ctrl.onSelection(values)" on-selection="$ctrl.onSelection(values)"
default-date="$ctrl.ndMonthDate" default-date="$ctrl.ndMonthDate"
skip="2"> skip="2" vn-acl="deliveryBoss">
</vn-calendar> </vn-calendar>
</vn-horizontal> </vn-horizontal>
</vn-card> </vn-card>

View File

@ -1,3 +1,7 @@
vn-calendar:nth-child(2n + 1) { vn-calendar:nth-child(2n + 1) {
border-right:1px solid #ddd border-right:1px solid #ddd
} }
.calendarControlsHeader {
justify-content: space-between;
}

View File

@ -11,11 +11,13 @@
data="$ctrl.events" data="$ctrl.events"
on-selection="$ctrl.onSelection(values, stMonth)" on-selection="$ctrl.onSelection(values, stMonth)"
on-move-next="$ctrl.onMoveNext(ndMonth)" on-move-next="$ctrl.onMoveNext(ndMonth)"
on-move-previous="$ctrl.onMovePrevious(ndMonth)"> on-move-previous="$ctrl.onMovePrevious(ndMonth)"
vn-acl="deliveryBoss">
</vn-calendar> </vn-calendar>
<vn-calendar pad-small vn-id="ndMonth" skip="2" <vn-calendar pad-small vn-id="ndMonth" skip="2"
data="$ctrl.events" data="$ctrl.events"
display-controls="false" display-controls="false"
on-selection="$ctrl.onSelection(values, ndMonth)" on-selection="$ctrl.onSelection(values, ndMonth)"
default-date="$ctrl.ndMonthDate"> default-date="$ctrl.ndMonthDate"
vn-acl="deliveryBoss">
</vn-calendar> </vn-calendar>

View File

@ -7,7 +7,7 @@
"menu": [ "menu": [
{"state": "zone.card.basicData", "icon": "settings"}, {"state": "zone.card.basicData", "icon": "settings"},
{"state": "zone.card.location", "icon": "my_location"}, {"state": "zone.card.location", "icon": "my_location"},
{"state": "zone.card.calendar"} {"state": "zone.card.calendar", "icon": "icon-deliveryprices"}
], ],
"routes": [ "routes": [
{ {