biovision-base 0.17.180619 → 0.19.180703.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/biovision/base/icons/back.svg +18 -27
  3. data/app/assets/images/biovision/base/icons/create.svg +19 -1
  4. data/app/assets/images/biovision/base/icons/destroy.svg +8 -2
  5. data/app/assets/images/biovision/base/icons/gear.svg +9 -2
  6. data/app/assets/images/biovision/base/icons/lock-closed.svg +12 -1
  7. data/app/assets/images/biovision/base/icons/lock-open.svg +12 -1
  8. data/app/assets/images/biovision/base/icons/notice.svg +9 -1
  9. data/app/assets/images/biovision/base/icons/return.svg +25 -1
  10. data/app/assets/images/biovision/base/icons/warning.svg +31 -42
  11. data/app/assets/images/biovision/base/icons/world.svg +9 -2
  12. data/app/assets/images/biovision/base/placeholders/16x9.svg +5 -0
  13. data/app/assets/images/biovision/base/placeholders/3x2.svg +5 -0
  14. data/app/assets/javascripts/biovision/base/biovision.js +75 -17
  15. data/app/assets/stylesheets/biovision/base/admin.scss +1 -0
  16. data/app/assets/stylesheets/biovision/base/biovision.scss +10 -0
  17. data/app/controllers/admin/editable_blocks_controller.rb +27 -0
  18. data/app/controllers/admin/editable_pages_controller.rb +1 -1
  19. data/app/controllers/admin/link_block_items_controller.rb +23 -0
  20. data/app/controllers/admin/link_blocks_controller.rb +27 -0
  21. data/app/controllers/admin/privileges_controller.rb +0 -1
  22. data/app/controllers/concerns/removable_image.rb +33 -0
  23. data/app/controllers/editable_blocks_controller.rb +64 -0
  24. data/app/controllers/editable_pages_controller.rb +1 -1
  25. data/app/controllers/feedback_requests_controller.rb +1 -0
  26. data/app/controllers/link_block_items_controller.rb +68 -0
  27. data/app/controllers/link_blocks_controller.rb +64 -0
  28. data/app/helpers/editable_pages_helper.rb +19 -0
  29. data/app/helpers/link_blocks_helper.rb +18 -0
  30. data/app/models/editable_block.rb +49 -0
  31. data/app/models/link_block.rb +43 -0
  32. data/app/models/link_block_item.rb +81 -0
  33. data/app/models/privilege.rb +10 -2
  34. data/app/models/privilege_group.rb +5 -0
  35. data/app/models/user.rb +4 -0
  36. data/app/models/user_privilege.rb +8 -3
  37. data/app/services/user_profile_handler.rb +2 -2
  38. data/app/uploaders/editable_page_image_uploader.rb +5 -1
  39. data/app/uploaders/link_block_image_uploader.rb +17 -0
  40. data/app/views/admin/editable_blocks/_nav_item.html.erb +6 -0
  41. data/app/views/admin/editable_blocks/entity/_in_list.html.erb +29 -0
  42. data/app/views/admin/editable_blocks/index.html.erb +14 -0
  43. data/app/views/admin/editable_blocks/show.html.erb +72 -0
  44. data/app/views/admin/index/_biovision_base.html.erb +2 -1
  45. data/app/views/admin/index/dashboard/_biovision_links.html.erb +11 -0
  46. data/app/views/admin/index/dashboard/_editorial.html.erb +5 -6
  47. data/app/views/admin/link_block_items/entity/_in_list.html.erb +39 -0
  48. data/app/views/admin/link_block_items/show.html.erb +74 -0
  49. data/app/views/admin/link_blocks/_nav_item.html.erb +6 -0
  50. data/app/views/admin/link_blocks/entity/_in_list.html.erb +26 -0
  51. data/app/views/admin/link_blocks/entity/_items.html.erb +23 -0
  52. data/app/views/admin/link_blocks/index.html.erb +14 -0
  53. data/app/views/admin/link_blocks/show.html.erb +57 -0
  54. data/app/views/admin/metrics/show.html.erb +1 -1
  55. data/app/views/admin/privileges/entity/_groups.html.erb +1 -1
  56. data/app/views/admin/privileges/entity/_in_list.html.erb +8 -1
  57. data/app/views/admin/users/entity/_in_list.html.erb +3 -0
  58. data/app/views/admin/users/privileges.html.erb +3 -3
  59. data/app/views/editable_blocks/_entity.html.erb +36 -0
  60. data/app/views/editable_blocks/_form.html.erb +171 -0
  61. data/app/views/editable_blocks/edit.html.erb +17 -0
  62. data/app/views/editable_blocks/new.html.erb +15 -0
  63. data/app/views/link_block_items/_form.html.erb +158 -0
  64. data/app/views/link_block_items/_list.html.erb +32 -0
  65. data/app/views/link_block_items/edit.html.erb +18 -0
  66. data/app/views/link_block_items/new.html.erb +18 -0
  67. data/app/views/link_blocks/_entity.html.erb +34 -0
  68. data/app/views/link_blocks/_form.html.erb +97 -0
  69. data/app/views/link_blocks/edit.html.erb +17 -0
  70. data/app/views/link_blocks/new.html.erb +15 -0
  71. data/app/views/my/index/index/_dashboard.html.erb +1 -3
  72. data/app/views/privileges/_form.html.erb +2 -7
  73. data/app/views/shared/_counters.html.erb +3 -0
  74. data/app/views/shared/forms/_entity_flags.html.erb +5 -1
  75. data/app/views/shared/forms/_image_remover.html.erb +13 -0
  76. data/config/locales/common-en.yml +1 -0
  77. data/config/locales/common-ru.yml +1 -0
  78. data/config/locales/editable-pages-ru.yml +50 -0
  79. data/config/locales/links-ru.yml +95 -0
  80. data/config/locales/users-en.yml +1 -0
  81. data/config/locales/users-ru.yml +1 -0
  82. data/config/routes.rb +35 -0
  83. data/db/migrate/20170302000101_create_privileges.rb +1 -0
  84. data/db/migrate/20180622140000_create_link_blocks.rb +29 -0
  85. data/db/migrate/20180622140001_create_link_block_items.rb +23 -0
  86. data/db/migrate/20180627190000_create_editable_blocks.rb +39 -0
  87. data/db/migrate/20180703111111_add_fields_to_editable_blocks.rb +14 -0
  88. data/lib/biovision/base/version.rb +1 -1
  89. metadata +46 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d27941a438886a58f345aa63fc7cb640322245be245db3ce049955f2c5e5c63c
4
- data.tar.gz: dd9e9b5ec6f04673bc2946b6aeca0b0ac0235df23b83e32771553e995e6f2f53
3
+ metadata.gz: cf92e00f9a0ab7e0f652c415e72aafc3366b9fc3bf66dfe3ffe53cc28ec4ed52
4
+ data.tar.gz: da76fa84f6d156b168cc9a00ef1a8ffaeca82a6bd88259039e91b5cea400e486
5
5
  SHA512:
6
- metadata.gz: ef9c838486e81589fb35a1cbf066f7d19d91c0147084360ab7cd5fdbab460898b3adca97d3805ea03547864021d3d5fa091dfe368ced7691ac19436d8b46e806
7
- data.tar.gz: 5ab35349100232156ac728f4f6d08a0c785529a7d414c8764f46d05d3aca1e57aaaea71416afb0063c3b495a0b32546695a5832a32c69da0f55c68318e3e2cd0
6
+ metadata.gz: f20c9f734d53640a9c4e7c34f28b439a273a9c1aa7ec61bab3b97182c6247783efad7a44db47de9bc2059e6d3b8e5adba325d31c5ea0873ac51178d328dd559b
7
+ data.tar.gz: e42080ee36e46275a170f0c75d082bc0e5da83df1604cd99d44148d9b8b0bcdc6dcf2ac2d354ae6c2542a38dc2103b17ca2ec48b375936a4e57b5967673b9e6e
@@ -1,28 +1,19 @@
1
1
  <?xml version="1.0" encoding="utf-8"?>
2
- <!-- Generator: Adobe Illustrator 16.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
- <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
5
- width="48.02px" height="48.02px" viewBox="1252.705 1638.145 48.02 48.02" enable-background="new 1252.705 1638.145 48.02 48.02"
6
- xml:space="preserve">
7
- <g>
8
- <g>
9
-
10
- <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-8.0889" y1="1366.9993" x2="6.3662" y2="1366.9993" gradientTransform="matrix(3.3219 0 0 -3.3219 1279.5765 6203.127)">
11
- <stop offset="0" style="stop-color:#33B49D"/>
12
- <stop offset="1" style="stop-color:#00A185"/>
13
- </linearGradient>
14
- <circle fill="url(#SVGID_1_)" cx="1276.715" cy="1662.155" r="24.01"/>
15
-
16
- <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-6.8848" y1="1366.9993" x2="5.1616" y2="1366.9993" gradientTransform="matrix(3.3219 0 0 -3.3219 1279.5765 6203.127)">
17
- <stop offset="0" style="stop-color:#00A185"/>
18
- <stop offset="1" style="stop-color:#33B49D"/>
19
- </linearGradient>
20
- <path fill="url(#SVGID_2_)" d="M1276.715,1682.163c-11.032,0-20.008-8.976-20.008-20.009c0-11.032,8.976-20.009,20.008-20.009
21
- s20.008,8.977,20.008,20.009C1296.723,1673.188,1287.747,1682.163,1276.715,1682.163z"/>
22
- </g>
23
- <polygon id="XMLID_80_" opacity="0.3" enable-background="new " points="1276.012,1653.105 1266.211,1662.905
24
- 1276.012,1672.705 1276.012,1667.508 1288.72,1667.508 1288.72,1658.302 1276.012,1658.302 "/>
25
- <polygon id="XMLID_201_" fill="#FFFFFF" points="1275.261,1652.354 1265.46,1662.155 1275.261,1671.955 1275.261,1666.758
26
- 1287.97,1666.758 1287.97,1657.551 1275.261,1657.551 "/>
27
- </g>
28
- </svg>
2
+ <svg version="1.1" id="Layer_1" x="0px" y="0px" width="24px" height="24px" viewBox="0 0 24 24" enable-background="new 1252.705 1638.145 48.02 48.02" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="matrix(0.499792, 0, 0, 0.499792, -626.091919, -818.731812)">
4
+ <g>
5
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-8.0889" y1="1366.9993" x2="6.3662" y2="1366.9993" gradientTransform="matrix(3.3219 0 0 -3.3219 1279.5765 6203.127)">
6
+ <stop offset="0" style="stop-color:#33B49D"/>
7
+ <stop offset="1" style="stop-color:#00A185"/>
8
+ </linearGradient>
9
+ <circle fill="url(#SVGID_1_)" cx="1276.715" cy="1662.155" r="24.01"/>
10
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-6.8848" y1="1366.9993" x2="5.1616" y2="1366.9993" gradientTransform="matrix(3.3219 0 0 -3.3219 1279.5765 6203.127)">
11
+ <stop offset="0" style="stop-color:#00A185"/>
12
+ <stop offset="1" style="stop-color:#33B49D"/>
13
+ </linearGradient>
14
+ <path fill="url(#SVGID_2_)" d="M1276.715,1682.163c-11.032,0-20.008-8.976-20.008-20.009c0-11.032,8.976-20.009,20.008-20.009 s20.008,8.977,20.008,20.009C1296.723,1673.188,1287.747,1682.163,1276.715,1682.163z"/>
15
+ </g>
16
+ <polygon id="XMLID_80_" opacity="0.3" enable-background="new " points="1276.012,1653.105 1266.211,1662.905 &#10;&#9;&#9;1276.012,1672.705 1276.012,1667.508 1288.72,1667.508 1288.72,1658.302 1276.012,1658.302 &#9;"/>
17
+ <polygon id="XMLID_201_" fill="#FFFFFF" points="1275.261,1652.354 1265.46,1662.155 1275.261,1671.955 1275.261,1666.758 &#10;&#9;&#9;1287.97,1666.758 1287.97,1657.551 1275.261,1657.551 &#9;"/>
18
+ </g>
19
+ </svg>
@@ -1 +1,19 @@
1
- <?xml version="1.0" ?><svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g><g><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="0.0000038" x2="512" y1="256" y2="256"><stop offset="0" style="stop-color:#33B49D"/><stop offset="1" style="stop-color:#00A185"/></linearGradient><circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666679" x2="469.3333435" y1="256.0005188" y2="256.0005188"><stop offset="0" style="stop-color:#00A185"/><stop offset="1" style="stop-color:#33B49D"/></linearGradient><path d="M256,469.3338623c-117.6309357,0-213.3333282-95.7023926-213.3333282-213.3333435 c0-117.6314545,95.7023926-213.333313,213.3333282-213.333313c117.636261,0,213.3333435,95.7018661,213.3333435,213.333313 C469.3333435,373.6314697,373.636261,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/></g><polygon id="XMLID_109_" opacity="0.3" points="384,242.5413361 285.459198,242.5413361 285.459198,144 242.5424042,144 242.5424042,242.5413361 144,242.5413361 144,285.4581299 242.5424042,285.4581299 242.5424042,384 285.459198,384 285.459198,285.4581299 384,285.4581299 "/><polygon fill="#FFFFFF" id="XMLID_189_" points="376,234.5413361 277.459198,234.5413361 277.459198,136 234.5424042,136 234.5424042,234.5413361 136,234.5413361 136,277.4581299 234.5424042,277.4581299 234.5424042,376 277.459198,376 277.459198,277.4581299 376,277.4581299 "/></g></svg>
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 24 24" width="24px" height="24px" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="matrix(0.046875, 0, 0, 0.046875, 0, 0)">
4
+ <g>
5
+ <linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="0.0000038" x2="512" y1="256" y2="256">
6
+ <stop offset="0" style="stop-color:#33B49D"/>
7
+ <stop offset="1" style="stop-color:#00A185"/>
8
+ </linearGradient>
9
+ <circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/>
10
+ <linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666679" x2="469.3333435" y1="256.0005188" y2="256.0005188">
11
+ <stop offset="0" style="stop-color:#00A185"/>
12
+ <stop offset="1" style="stop-color:#33B49D"/>
13
+ </linearGradient>
14
+ <path d="M256,469.3338623c-117.6309357,0-213.3333282-95.7023926-213.3333282-213.3333435 c0-117.6314545,95.7023926-213.333313,213.3333282-213.333313c117.636261,0,213.3333435,95.7018661,213.3333435,213.333313 C469.3333435,373.6314697,373.636261,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/>
15
+ </g>
16
+ <polygon id="XMLID_109_" opacity="0.3" points="384,242.5413361 285.459198,242.5413361 285.459198,144 242.5424042,144 242.5424042,242.5413361 144,242.5413361 144,285.4581299 242.5424042,285.4581299 242.5424042,384 285.459198,384 285.459198,285.4581299 384,285.4581299 "/>
17
+ <polygon fill="#FFFFFF" id="XMLID_189_" points="376,234.5413361 277.459198,234.5413361 277.459198,136 234.5424042,136 234.5424042,234.5413361 136,234.5413361 136,277.4581299 234.5424042,277.4581299 234.5424042,376 277.459198,376 277.459198,277.4581299 376,277.4581299 "/>
18
+ </g>
19
+ </svg>
@@ -1,3 +1,9 @@
1
- <?xml version="1.0" ?><svg id="Layer_1" style="enable-background:new 0 0 612 792;" version="1.1" viewBox="0 0 612 792" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style type="text/css">
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg id="Layer_1" style="enable-background:new 0 0 612 792;" version="1.1" viewBox="0 0 24 24" width="24px" height="24px" xmlns="http://www.w3.org/2000/svg">
3
+ <style type="text/css">
2
4
  .st0{fill:#E44061;}
3
- </style><g><polygon class="st0" points="382.2,396.4 560.8,217.8 484,141 305.4,319.6 126.8,141 50,217.8 228.6,396.4 50,575 126.8,651.8 305.4,473.2 484,651.8 560.8,575 382.2,396.4 "/></g></svg>
5
+ </style>
6
+ <g transform="matrix(0.046985, 0, 0, 0.046985, -2.34925, -6.624886)">
7
+ <polygon class="st0" points="382.2,396.4 560.8,217.8 484,141 305.4,319.6 126.8,141 50,217.8 228.6,396.4 50,575 126.8,651.8 305.4,473.2 484,651.8 560.8,575 382.2,396.4 "/>
8
+ </g>
9
+ </svg>
@@ -1,4 +1,11 @@
1
- <?xml version="1.0" ?><svg id="Layer_1" style="enable-background:new 0 0 128 128;" version="1.1" viewBox="0 0 128 128" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style type="text/css">
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg id="Layer_1" style="enable-background:new 0 0 128 128;" version="1.1" viewBox="0 0 24 24" width="24px" height="24px" xmlns="http://www.w3.org/2000/svg">
3
+ <style type="text/css">
2
4
  .st0{fill-rule:evenodd;clip-rule:evenodd;}
3
5
  .st1{fill-rule:evenodd;clip-rule:evenodd;fill:#7ACED7;}
4
- </style><g id="XMLID_6_"><path class="st0" d="M119.2,99.3l-19.9,19.9c-2.3,2.3-6.1,2.3-8.4,0l-6.9-6.9v9.8c0,3.3-2.7,5.9-5.9,5.9H49.9 c-3.3,0-5.9-2.7-5.9-5.9v-9.8l-6.9,6.9c-2.3,2.3-6.1,2.3-8.4,0L8.8,99.3c-2.3-2.3-2.3-6.1,0-8.4l6.9-6.9H5.9C2.7,84,0,81.3,0,78.1 V49.9C0,46.7,2.7,44,5.9,44h9.8l-6.9-6.9c-2.3-2.3-2.3-6.1,0-8.4L28.7,8.8c2.3-2.3,6.1-2.3,8.4,0l6.9,6.9V5.9C44,2.7,46.7,0,49.9,0 h28.1C81.3,0,84,2.7,84,5.9v9.8l6.9-6.9c2.3-2.3,6.1-2.3,8.4,0l19.9,19.9c2.3,2.3,2.3,6.1,0,8.4l-6.9,6.9h9.8 c3.3,0,5.9,2.7,5.9,5.9v28.1c0,3.3-2.7,5.9-5.9,5.9h-9.8l6.9,6.9C121.5,93.2,121.5,97,119.2,99.3L119.2,99.3z M64,43.1 c-11.6,0-20.9,9.4-20.9,20.9c0,11.6,9.4,20.9,20.9,20.9c11.6,0,20.9-9.4,20.9-20.9C84.9,52.4,75.6,43.1,64,43.1z" id="XMLID_10_"/><path class="st1" d="M64,39.1c13.8,0,24.9,11.2,24.9,24.9c0,13.8-11.2,24.9-24.9,24.9c-13.8,0-24.9-11.2-24.9-24.9 C39.1,50.2,50.2,39.1,64,39.1L64,39.1z M96.5,11.6c-0.8-0.8-2-0.8-2.7,0L80,25.4V5.9C80,4.9,79.1,4,78.1,4H49.9 C48.9,4,48,4.9,48,5.9v19.4L34.3,11.6c-0.8-0.8-2-0.8-2.7,0L11.6,31.5c-0.8,0.8-0.8,2,0,2.7L25.4,48H5.9C4.9,48,4,48.9,4,49.9v28.1 C4,79.1,4.9,80,5.9,80h19.4L11.6,93.7c-0.8,0.8-0.8,2,0,2.7l19.9,19.9c0.8,0.8,2,0.8,2.7,0L48,102.6v19.4c0,1.1,0.9,1.9,1.9,1.9 h28.1c1.1,0,1.9-0.9,1.9-1.9v-19.4l13.7,13.7c0.8,0.8,2,0.8,2.7,0l19.9-19.9c0.8-0.8,0.8-2,0-2.7L102.6,80h19.4 c1.1,0,1.9-0.9,1.9-1.9V49.9c0-1.1-0.9-1.9-1.9-1.9h-19.4l13.7-13.7c0.8-0.8,0.8-2,0-2.7L96.5,11.6z" id="XMLID_7_"/></g></svg>
6
+ </style>
7
+ <g id="XMLID_6_" transform="matrix(0.1875, 0, 0, 0.1875, 0, 0)">
8
+ <path class="st0" d="M119.2,99.3l-19.9,19.9c-2.3,2.3-6.1,2.3-8.4,0l-6.9-6.9v9.8c0,3.3-2.7,5.9-5.9,5.9H49.9 c-3.3,0-5.9-2.7-5.9-5.9v-9.8l-6.9,6.9c-2.3,2.3-6.1,2.3-8.4,0L8.8,99.3c-2.3-2.3-2.3-6.1,0-8.4l6.9-6.9H5.9C2.7,84,0,81.3,0,78.1 V49.9C0,46.7,2.7,44,5.9,44h9.8l-6.9-6.9c-2.3-2.3-2.3-6.1,0-8.4L28.7,8.8c2.3-2.3,6.1-2.3,8.4,0l6.9,6.9V5.9C44,2.7,46.7,0,49.9,0 h28.1C81.3,0,84,2.7,84,5.9v9.8l6.9-6.9c2.3-2.3,6.1-2.3,8.4,0l19.9,19.9c2.3,2.3,2.3,6.1,0,8.4l-6.9,6.9h9.8 c3.3,0,5.9,2.7,5.9,5.9v28.1c0,3.3-2.7,5.9-5.9,5.9h-9.8l6.9,6.9C121.5,93.2,121.5,97,119.2,99.3L119.2,99.3z M64,43.1 c-11.6,0-20.9,9.4-20.9,20.9c0,11.6,9.4,20.9,20.9,20.9c11.6,0,20.9-9.4,20.9-20.9C84.9,52.4,75.6,43.1,64,43.1z" id="XMLID_10_"/>
9
+ <path class="st1" d="M64,39.1c13.8,0,24.9,11.2,24.9,24.9c0,13.8-11.2,24.9-24.9,24.9c-13.8,0-24.9-11.2-24.9-24.9 C39.1,50.2,50.2,39.1,64,39.1L64,39.1z M96.5,11.6c-0.8-0.8-2-0.8-2.7,0L80,25.4V5.9C80,4.9,79.1,4,78.1,4H49.9 C48.9,4,48,4.9,48,5.9v19.4L34.3,11.6c-0.8-0.8-2-0.8-2.7,0L11.6,31.5c-0.8,0.8-0.8,2,0,2.7L25.4,48H5.9C4.9,48,4,48.9,4,49.9v28.1 C4,79.1,4.9,80,5.9,80h19.4L11.6,93.7c-0.8,0.8-0.8,2,0,2.7l19.9,19.9c0.8,0.8,2,0.8,2.7,0L48,102.6v19.4c0,1.1,0.9,1.9,1.9,1.9 h28.1c1.1,0,1.9-0.9,1.9-1.9v-19.4l13.7,13.7c0.8,0.8,2,0.8,2.7,0l19.9-19.9c0.8-0.8,0.8-2,0-2.7L102.6,80h19.4 c1.1,0,1.9-0.9,1.9-1.9V49.9c0-1.1-0.9-1.9-1.9-1.9h-19.4l13.7-13.7c0.8-0.8,0.8-2,0-2.7L96.5,11.6z" id="XMLID_7_"/>
10
+ </g>
11
+ </svg>
@@ -1 +1,12 @@
1
- <?xml version="1.0" ?><svg height="24" version="1.1" width="24" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><g transform="translate(0 -1028.4)"><path d="m5 1037.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f1c40f"/><path d="m5 1040.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f39c12"/><path d="m12 1029.4c-3.866 0-7 3.1-7 7h3c0-2.2 1.7909-4 4-4 2.209 0 4 1.8 4 4h3c0-3.9-3.134-7-7-7z" fill="#bdc3c7"/><path d="m5 14v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14z" fill="#e67e22" transform="translate(0 1028.4)"/><path d="m5 1037.4v1c0 0.5 0.6716 1 1.5 1s1.5-0.5 1.5-1v-1c0 0.5-0.6716 1-1.5 1s-1.5-0.5-1.5-1z" fill="#7f8c8d"/><path d="m16 1037.4v1c0 0.5 0.672 1 1.5 1s1.5-0.5 1.5-1v-1c0 0.5-0.672 1-1.5 1s-1.5-0.5-1.5-1z" fill="#7f8c8d"/><path d="m12 2.4375c-0.351 0-0.699 0.0338-1.031 0.0937-0.247 0.0446-0.487 0.1129-0.719 0.1876-0.217 0.0698-0.4229 0.1561-0.625 0.25-0.106 0.0492-0.2109 0.1008-0.3125 0.1562-0.1319 0.0719-0.2513 0.1682-0.375 0.25-0.1158 0.0765-0.2356 0.1342-0.3437 0.2188-0.1407 0.1097-0.2799 0.2211-0.4063 0.3437-0.0369 0.0362-0.0581 0.0878-0.0937 0.125-0.1684 0.1744-0.3313 0.3356-0.4688 0.5313-0.1402 0.1993-0.2704 0.4065-0.375 0.625-0.004 0.0084 0.004 0.0227 0 0.0312-0.1111 0.2359-0.2159 0.4959-0.2812 0.75-0.253 0.5844-0.9424 1-1.75 1-0.06 0-0.0832 0.0018-0.125 0-0.0105-0.0004-0.0168 0.0014-0.0313 0l-0.0625 1v1 1h3v-1-1c0-0.2761 0.0405-0.5521 0.0938-0.8125 0.3729-1.8227 1.9732-3.1875 3.9062-3.1875 2.209 0 4 1.7909 4 4v1 1h3v-1-1l-0.062-1c-0.015 0.0014-0.021-0.0004-0.032 0h-0.125c-0.807 0-1.497-0.4156-1.75-1-0.065-0.2541-0.17-0.5141-0.281-0.75-0.004-0.0085 0.004-0.0228 0-0.0312-0.105-0.2185-0.235-0.4257-0.375-0.625-0.138-0.1957-0.3-0.3569-0.469-0.5313-0.036-0.038-0.055-0.0881-0.094-0.125-0.126-0.1226-0.265-0.234-0.406-0.3437-0.104-0.0817-0.232-0.1448-0.344-0.2188-0.122-0.0809-0.244-0.1788-0.374-0.25-0.101-0.055-0.208-0.1074-0.313-0.1562-0.202-0.0939-0.408-0.1802-0.625-0.25-0.232-0.0747-0.472-0.143-0.719-0.1876-0.332-0.0599-0.68-0.0937-1.031-0.0937z" fill="#95a5a6" transform="translate(0 1028.4)"/></g></svg>
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg height="24" version="1.1" width="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="matrix(1.043478, 0, 0, 1.043478, -0.521736, -1074.15625)">
4
+ <path d="m5 1037.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f1c40f"/>
5
+ <path d="m5 1040.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f39c12"/>
6
+ <path d="m12 1029.4c-3.866 0-7 3.1-7 7h3c0-2.2 1.7909-4 4-4 2.209 0 4 1.8 4 4h3c0-3.9-3.134-7-7-7z" fill="#bdc3c7"/>
7
+ <path d="m5 14v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14z" fill="#e67e22" transform="translate(0 1028.4)"/>
8
+ <path d="m5 1037.4v1c0 0.5 0.6716 1 1.5 1s1.5-0.5 1.5-1v-1c0 0.5-0.6716 1-1.5 1s-1.5-0.5-1.5-1z" fill="#7f8c8d"/>
9
+ <path d="m16 1037.4v1c0 0.5 0.672 1 1.5 1s1.5-0.5 1.5-1v-1c0 0.5-0.672 1-1.5 1s-1.5-0.5-1.5-1z" fill="#7f8c8d"/>
10
+ <path d="m12 2.4375c-0.351 0-0.699 0.0338-1.031 0.0937-0.247 0.0446-0.487 0.1129-0.719 0.1876-0.217 0.0698-0.4229 0.1561-0.625 0.25-0.106 0.0492-0.2109 0.1008-0.3125 0.1562-0.1319 0.0719-0.2513 0.1682-0.375 0.25-0.1158 0.0765-0.2356 0.1342-0.3437 0.2188-0.1407 0.1097-0.2799 0.2211-0.4063 0.3437-0.0369 0.0362-0.0581 0.0878-0.0937 0.125-0.1684 0.1744-0.3313 0.3356-0.4688 0.5313-0.1402 0.1993-0.2704 0.4065-0.375 0.625-0.004 0.0084 0.004 0.0227 0 0.0312-0.1111 0.2359-0.2159 0.4959-0.2812 0.75-0.253 0.5844-0.9424 1-1.75 1-0.06 0-0.0832 0.0018-0.125 0-0.0105-0.0004-0.0168 0.0014-0.0313 0l-0.0625 1v1 1h3v-1-1c0-0.2761 0.0405-0.5521 0.0938-0.8125 0.3729-1.8227 1.9732-3.1875 3.9062-3.1875 2.209 0 4 1.7909 4 4v1 1h3v-1-1l-0.062-1c-0.015 0.0014-0.021-0.0004-0.032 0h-0.125c-0.807 0-1.497-0.4156-1.75-1-0.065-0.2541-0.17-0.5141-0.281-0.75-0.004-0.0085 0.004-0.0228 0-0.0312-0.105-0.2185-0.235-0.4257-0.375-0.625-0.138-0.1957-0.3-0.3569-0.469-0.5313-0.036-0.038-0.055-0.0881-0.094-0.125-0.126-0.1226-0.265-0.234-0.406-0.3437-0.104-0.0817-0.232-0.1448-0.344-0.2188-0.122-0.0809-0.244-0.1788-0.374-0.25-0.101-0.055-0.208-0.1074-0.313-0.1562-0.202-0.0939-0.408-0.1802-0.625-0.25-0.232-0.0747-0.472-0.143-0.719-0.1876-0.332-0.0599-0.68-0.0937-1.031-0.0937z" fill="#95a5a6" transform="translate(0 1028.4)"/>
11
+ </g>
12
+ </svg>
@@ -1 +1,12 @@
1
- <?xml version="1.0" ?><svg height="24" version="1.1" width="24" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><g transform="translate(0 -1028.4)"><path d="m5 1037.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f1c40f"/><path d="m5 1040.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f39c12"/><path d="m12 1c-3.866 0-7 3.134-7 7h3c0-2.2091 1.7909-4 4-4 1.863 0 3.399 1.2757 3.844 3h3.062c-0.487-3.39-3.381-6-6.906-6z" fill="#bdc3c7" transform="translate(0 1028.4)"/><path d="m5 14v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14z" fill="#e67e22" transform="translate(0 1028.4)"/><path d="m5 1037.4v1c0 0.5 0.6716 1 1.5 1s1.5-0.5 1.5-1v-1c0 0.5-0.6716 1-1.5 1s-1.5-0.5-1.5-1z" fill="#7f8c8d"/><path d="m12 2.4375c-0.351 0-0.699 0.0338-1.031 0.0937-0.247 0.0446-0.487 0.1129-0.719 0.1876-0.217 0.0698-0.4229 0.1561-0.625 0.25-0.106 0.0492-0.2109 0.1008-0.3125 0.1562-0.1319 0.0719-0.2513 0.1682-0.375 0.25-0.1158 0.0765-0.2356 0.1342-0.3437 0.2188-0.1407 0.1097-0.2799 0.2211-0.4063 0.3437-0.0369 0.0362-0.0581 0.0878-0.0937 0.125-0.1684 0.1744-0.3313 0.3356-0.4688 0.5313-0.1402 0.1993-0.2704 0.4065-0.375 0.625-0.004 0.0084 0.004 0.0227 0 0.0312-0.1111 0.2359-0.2159 0.4959-0.2812 0.75-0.253 0.5844-0.9424 1-1.75 1-0.06 0-0.0832 0.0018-0.125 0-0.0105-0.0004-0.0168 0.0014-0.0313 0l-0.0625 1v1 1h3v-1-1c0-0.2761 0.0405-0.5521 0.0938-0.8125 0.3729-1.8227 1.9732-3.1875 3.9062-3.1875 1.863 0 3.399 1.2757 3.844 3h2.937c-0.807 0-1.497-0.4156-1.75-1-0.065-0.2541-0.17-0.5141-0.281-0.75-0.004-0.0085 0.004-0.0228 0-0.0312-0.105-0.2185-0.235-0.4257-0.375-0.625-0.138-0.1957-0.3-0.3569-0.469-0.5313-0.036-0.038-0.055-0.0881-0.094-0.125-0.126-0.1226-0.265-0.234-0.406-0.3437-0.104-0.0817-0.232-0.1448-0.344-0.2188-0.122-0.0809-0.244-0.1788-0.374-0.25-0.101-0.055-0.208-0.1074-0.313-0.1562-0.202-0.0939-0.408-0.1802-0.625-0.25-0.232-0.0747-0.472-0.143-0.719-0.1876-0.332-0.0599-0.68-0.0937-1.031-0.0937z" fill="#95a5a6" transform="translate(0 1028.4)"/><path d="m16 10c0 0.552 0.672 1 1.5 1s1.5-0.448 1.5-1h-3z" fill="#e67e22" transform="translate(0 1028.4)"/></g></svg>
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg height="24" version="1.1" width="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="matrix(1.043478, 0, 0, 1.043478, -0.521736, -1074.15625)">
4
+ <path d="m5 1037.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f1c40f"/>
5
+ <path d="m5 1040.4c-1.1046 0-2 0.9-2 2v1 6 1c0 1.1 0.8954 2 2 2h2 10 2c1.105 0 2-0.9 2-2v-7-1c0-1.1-0.895-2-2-2h-2-12z" fill="#f39c12"/>
6
+ <path d="m12 1c-3.866 0-7 3.134-7 7h3c0-2.2091 1.7909-4 4-4 1.863 0 3.399 1.2757 3.844 3h3.062c-0.487-3.39-3.381-6-6.906-6z" fill="#bdc3c7" transform="translate(0 1028.4)"/>
7
+ <path d="m5 14v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14zm0 2v1h14v-1h-14z" fill="#e67e22" transform="translate(0 1028.4)"/>
8
+ <path d="m5 1037.4v1c0 0.5 0.6716 1 1.5 1s1.5-0.5 1.5-1v-1c0 0.5-0.6716 1-1.5 1s-1.5-0.5-1.5-1z" fill="#7f8c8d"/>
9
+ <path d="m12 2.4375c-0.351 0-0.699 0.0338-1.031 0.0937-0.247 0.0446-0.487 0.1129-0.719 0.1876-0.217 0.0698-0.4229 0.1561-0.625 0.25-0.106 0.0492-0.2109 0.1008-0.3125 0.1562-0.1319 0.0719-0.2513 0.1682-0.375 0.25-0.1158 0.0765-0.2356 0.1342-0.3437 0.2188-0.1407 0.1097-0.2799 0.2211-0.4063 0.3437-0.0369 0.0362-0.0581 0.0878-0.0937 0.125-0.1684 0.1744-0.3313 0.3356-0.4688 0.5313-0.1402 0.1993-0.2704 0.4065-0.375 0.625-0.004 0.0084 0.004 0.0227 0 0.0312-0.1111 0.2359-0.2159 0.4959-0.2812 0.75-0.253 0.5844-0.9424 1-1.75 1-0.06 0-0.0832 0.0018-0.125 0-0.0105-0.0004-0.0168 0.0014-0.0313 0l-0.0625 1v1 1h3v-1-1c0-0.2761 0.0405-0.5521 0.0938-0.8125 0.3729-1.8227 1.9732-3.1875 3.9062-3.1875 1.863 0 3.399 1.2757 3.844 3h2.937c-0.807 0-1.497-0.4156-1.75-1-0.065-0.2541-0.17-0.5141-0.281-0.75-0.004-0.0085 0.004-0.0228 0-0.0312-0.105-0.2185-0.235-0.4257-0.375-0.625-0.138-0.1957-0.3-0.3569-0.469-0.5313-0.036-0.038-0.055-0.0881-0.094-0.125-0.126-0.1226-0.265-0.234-0.406-0.3437-0.104-0.0817-0.232-0.1448-0.344-0.2188-0.122-0.0809-0.244-0.1788-0.374-0.25-0.101-0.055-0.208-0.1074-0.313-0.1562-0.202-0.0939-0.408-0.1802-0.625-0.25-0.232-0.0747-0.472-0.143-0.719-0.1876-0.332-0.0599-0.68-0.0937-1.031-0.0937z" fill="#95a5a6" transform="translate(0 1028.4)"/>
10
+ <path d="m16 10c0 0.552 0.672 1 1.5 1s1.5-0.448 1.5-1h-3z" fill="#e67e22" transform="translate(0 1028.4)"/>
11
+ </g>
12
+ </svg>
@@ -1 +1,9 @@
1
- <?xml version="1.0" ?><svg height="24" version="1.1" width="24" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><g transform="translate(0 -1028.4)"><path d="m22 12c0 5.523-4.477 10-10 10-5.5228 0-10-4.477-10-10 0-5.5228 4.4772-10 10-10 5.523 0 10 4.4772 10 10z" fill="#27ae60" transform="translate(0 1029.4)"/><path d="m22 12c0 5.523-4.477 10-10 10-5.5228 0-10-4.477-10-10 0-5.5228 4.4772-10 10-10 5.523 0 10 4.4772 10 10z" fill="#2ecc71" transform="translate(0 1028.4)"/><path d="m16 1037.4-6 6-2.5-2.5-2.125 2.1 2.5 2.5 2 2 0.125 0.1 8.125-8.1-2.125-2.1z" fill="#27ae60"/><path d="m16 1036.4-6 6-2.5-2.5-2.125 2.1 2.5 2.5 2 2 0.125 0.1 8.125-8.1-2.125-2.1z" fill="#ecf0f1"/></g></svg>
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg height="24" version="1.1" width="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="matrix(1.142857, 0, 0, 1.142857, -1.714283, -1177.599854)">
4
+ <path d="m22 12c0 5.523-4.477 10-10 10-5.5228 0-10-4.477-10-10 0-5.5228 4.4772-10 10-10 5.523 0 10 4.4772 10 10z" fill="#27ae60" transform="translate(0 1029.4)"/>
5
+ <path d="m22 12c0 5.523-4.477 10-10 10-5.5228 0-10-4.477-10-10 0-5.5228 4.4772-10 10-10 5.523 0 10 4.4772 10 10z" fill="#2ecc71" transform="translate(0 1028.4)"/>
6
+ <path d="m16 1037.4-6 6-2.5-2.5-2.125 2.1 2.5 2.5 2 2 0.125 0.1 8.125-8.1-2.125-2.1z" fill="#27ae60"/>
7
+ <path d="m16 1036.4-6 6-2.5-2.5-2.125 2.1 2.5 2.5 2 2 0.125 0.1 8.125-8.1-2.125-2.1z" fill="#ecf0f1"/>
8
+ </g>
9
+ </svg>
@@ -1 +1,25 @@
1
- <?xml version="1.0" ?><svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g><g><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="-0.0000027" x2="512" y1="256" y2="256"><stop offset="0" style="stop-color:#B49A85"/><stop offset="0.0650802" style="stop-color:#B0957F"/><stop offset="0.2856463" style="stop-color:#A88A71"/><stop offset="0.5538635" style="stop-color:#A38369"/><stop offset="1" style="stop-color:#A18166"/></linearGradient><circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666641" x2="469.3333435" y1="256.0005188" y2="256.0005188"><stop offset="0" style="stop-color:#A18166"/><stop offset="0.4461364" style="stop-color:#A38369"/><stop offset="0.7143537" style="stop-color:#A88A71"/><stop offset="0.9349198" style="stop-color:#B0957F"/><stop offset="1" style="stop-color:#B49A85"/></linearGradient><path d="M256,469.3338623c-117.631012,0-213.3333435-95.7018738-213.3333435-213.3333435 c0-117.6309204,95.7023239-213.333313,213.3333435-213.333313c117.6362,0,213.3333435,95.7024002,213.3333435,213.333313 C469.3333435,373.6319885,373.6362,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/></g><path d="M228.8847198,285.5493469v34.813324L144,242.3226624l84.8847198-78.0399933 l0.0006104,39.2917328C317.5705872,203.5744019,384,243.6815948,384,332.3674622 c0,10.7285461-1.0518188,21.2112122-3.058197,31.3504028C380.941803,363.717865,330.6186523,285.5514526,228.8847198,285.5493469z" id="XMLID_78_" opacity="0.3"/><path d="M220.8847198,277.5493469v34.813324L136,234.3226624l84.8847198-78.0399933 l0.0006104,39.2917328C309.5705872,195.5744019,376,235.6815948,376,324.3674622 c0,10.7285461-1.0518188,21.2112122-3.058197,31.3504028C372.941803,355.717865,322.6186523,277.5514526,220.8847198,277.5493469z" fill="#FFFFFF" id="XMLID_2251_"/></g></svg>
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 24 24" width="24px" height="24px" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="matrix(0.046875, 0, 0, 0.046875, 0, 0)">
4
+ <g>
5
+ <linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="-0.0000027" x2="512" y1="256" y2="256">
6
+ <stop offset="0" style="stop-color:#B49A85"/>
7
+ <stop offset="0.0651" style="stop-color:#B0957F"/>
8
+ <stop offset="0.2856" style="stop-color:#A88A71"/>
9
+ <stop offset="0.5539" style="stop-color:#A38369"/>
10
+ <stop offset="1" style="stop-color:#A18166"/>
11
+ </linearGradient>
12
+ <circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/>
13
+ <linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666641" x2="469.3333435" y1="256.0005188" y2="256.0005188">
14
+ <stop offset="0" style="stop-color:#A18166"/>
15
+ <stop offset="0.4461" style="stop-color:#A38369"/>
16
+ <stop offset="0.7144" style="stop-color:#A88A71"/>
17
+ <stop offset="0.9349" style="stop-color:#B0957F"/>
18
+ <stop offset="1" style="stop-color:#B49A85"/>
19
+ </linearGradient>
20
+ <path d="M256,469.3338623c-117.631012,0-213.3333435-95.7018738-213.3333435-213.3333435 c0-117.6309204,95.7023239-213.333313,213.3333435-213.333313c117.6362,0,213.3333435,95.7024002,213.3333435,213.333313 C469.3333435,373.6319885,373.6362,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/>
21
+ </g>
22
+ <path d="M228.8847198,285.5493469v34.813324L144,242.3226624l84.8847198-78.0399933 l0.0006104,39.2917328C317.5705872,203.5744019,384,243.6815948,384,332.3674622 c0,10.7285461-1.0518188,21.2112122-3.058197,31.3504028C380.941803,363.717865,330.6186523,285.5514526,228.8847198,285.5493469z" id="XMLID_78_" opacity="0.3"/>
23
+ <path d="M220.8847198,277.5493469v34.813324L136,234.3226624l84.8847198-78.0399933 l0.0006104,39.2917328C309.5705872,195.5744019,376,235.6815948,376,324.3674622 c0,10.7285461-1.0518188,21.2112122-3.058197,31.3504028C372.941803,355.717865,322.6186523,277.5514526,220.8847198,277.5493469z" fill="#FFFFFF" id="XMLID_2251_"/>
24
+ </g>
25
+ </svg>
@@ -1,43 +1,32 @@
1
1
  <?xml version="1.0" encoding="utf-8"?>
2
- <!-- Generator: Adobe Illustrator 16.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
- <svg version="1.1" id="Слой_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
5
- width="48px" height="48px" viewBox="-23.91 1676.895 48 48" enable-background="new -23.91 1676.895 48 48" xml:space="preserve">
6
- <g>
7
- <polygon fill="#E9B53A" points="3.815,1678.984 -15.905,1678.984 -15.905,1722.806 16.961,1722.806 16.961,1692.13 "/>
8
- </g>
9
- <g opacity="0.2">
10
- <polygon fill="#070B0C" points="3.815,1692.13 16.961,1692.13 3.815,1678.983 "/>
11
- </g>
12
- <g>
13
- <path fill="#1E1E1E" d="M16.961,1723.243h-32.867c-0.255,0-0.438-0.219-0.438-0.438v-43.822c0-0.256,0.219-0.438,0.438-0.438h18.26
14
- c2.264,0,4.089,1.826,4.089,4.09v6.865h6.866c2.264,0,4.09,1.826,4.09,4.09v29.215C17.4,1723.062,17.218,1723.243,16.961,1723.243z
15
- M-15.467,1722.368h31.954v-28.777c0-1.752-1.425-3.213-3.214-3.213H6.007c-0.256,0-0.439-0.219-0.439-0.439v-7.303
16
- c0-1.754-1.424-3.215-3.213-3.215h-17.821V1722.368z"/>
17
- </g>
18
- <g>
19
- <g>
20
- <path fill="#434444" d="M4.911,1680.042c0.657,0.657,1.096,1.57,1.096,2.594v7.303h7.303c0.986,0,1.899,0.402,2.556,1.06l0,0
21
- L4.911,1680.042L4.911,1680.042z"/>
22
- </g>
23
- </g>
24
- <g>
25
- <g>
26
- <path fill="#1E1E1E" d="M15.866,1691.436L15.866,1691.436c-0.109,0-0.255-0.036-0.328-0.146c-0.621-0.584-1.388-0.913-2.264-0.913
27
- H6.007c-0.256,0-0.439-0.219-0.439-0.438v-7.303c0-0.877-0.329-1.68-0.949-2.265c-0.073-0.073-0.146-0.22-0.146-0.329
28
- c0-0.183,0.109-0.364,0.292-0.438c0.183-0.072,0.365-0.036,0.511,0.11l10.956,10.955c0.146,0.146,0.183,0.329,0.109,0.512
29
- C16.231,1691.326,16.049,1691.436,15.866,1691.436z M6.444,1689.501h6.866c0.146,0,0.292,0,0.438,0.036l-7.305-7.304
30
- c0,0.146,0.037,0.292,0.037,0.438v6.83H6.444z"/>
31
- </g>
32
- </g>
33
- <g>
34
- <g>
35
- <circle fill="#FFFFFF" cx="0.528" cy="1710.025" r="1.826"/>
36
- </g>
37
- <g>
38
- <g>
39
- <rect x="-0.933" y="1695.782" fill="#FFFFFF" width="2.922" height="10.225"/>
40
- </g>
41
- </g>
42
- </g>
43
- </svg>
2
+ <svg version="1.1" id="Слой_1" x="0px" y="0px" width="24px" height="24px" viewBox="0 0 24 24" enable-background="new -23.91 1676.895 48 48" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="matrix(0.536937, 0, 0, 0.536937, 11.716497, -901.272766)">
4
+ <polygon fill="#E9B53A" points="3.815,1678.984 -15.905,1678.984 -15.905,1722.806 16.961,1722.806 16.961,1692.13 &#9;"/>
5
+ </g>
6
+ <g opacity="0.2" transform="matrix(0.536937, 0, 0, 0.536937, 11.716497, -901.272766)">
7
+ <polygon fill="#070B0C" points="3.815,1692.13 16.961,1692.13 3.815,1678.983 &#9;"/>
8
+ </g>
9
+ <g transform="matrix(0.536937, 0, 0, 0.536937, 11.716497, -901.272766)">
10
+ <path fill="#1E1E1E" d="M16.961,1723.243h-32.867c-0.255,0-0.438-0.219-0.438-0.438v-43.822c0-0.256,0.219-0.438,0.438-0.438h18.26 c2.264,0,4.089,1.826,4.089,4.09v6.865h6.866c2.264,0,4.09,1.826,4.09,4.09v29.215C17.4,1723.062,17.218,1723.243,16.961,1723.243z M-15.467,1722.368h31.954v-28.777c0-1.752-1.425-3.213-3.214-3.213H6.007c-0.256,0-0.439-0.219-0.439-0.439v-7.303 c0-1.754-1.424-3.215-3.213-3.215h-17.821V1722.368z"/>
11
+ </g>
12
+ <g transform="matrix(0.536937, 0, 0, 0.536937, 11.716497, -901.272766)">
13
+ <g>
14
+ <path fill="#434444" d="M4.911,1680.042c0.657,0.657,1.096,1.57,1.096,2.594v7.303h7.303c0.986,0,1.899,0.402,2.556,1.06l0,0 L4.911,1680.042L4.911,1680.042z"/>
15
+ </g>
16
+ </g>
17
+ <g transform="matrix(0.536937, 0, 0, 0.536937, 11.716497, -901.272766)">
18
+ <g>
19
+ <path fill="#1E1E1E" d="M15.866,1691.436L15.866,1691.436c-0.109,0-0.255-0.036-0.328-0.146c-0.621-0.584-1.388-0.913-2.264-0.913 H6.007c-0.256,0-0.439-0.219-0.439-0.438v-7.303c0-0.877-0.329-1.68-0.949-2.265c-0.073-0.073-0.146-0.22-0.146-0.329 c0-0.183,0.109-0.364,0.292-0.438c0.183-0.072,0.365-0.036,0.511,0.11l10.956,10.955c0.146,0.146,0.183,0.329,0.109,0.512 C16.231,1691.326,16.049,1691.436,15.866,1691.436z M6.444,1689.501h6.866c0.146,0,0.292,0,0.438,0.036l-7.305-7.304 c0,0.146,0.037,0.292,0.037,0.438v6.83H6.444z"/>
20
+ </g>
21
+ </g>
22
+ <g transform="matrix(0.536937, 0, 0, 0.536937, 11.716497, -901.272766)">
23
+ <g>
24
+ <circle fill="#FFFFFF" cx="0.528" cy="1710.025" r="1.826"/>
25
+ </g>
26
+ <g>
27
+ <g>
28
+ <rect x="-0.933" y="1695.782" fill="#FFFFFF" width="2.922" height="10.225"/>
29
+ </g>
30
+ </g>
31
+ </g>
32
+ </svg>
@@ -1,4 +1,11 @@
1
- <?xml version="1.0" ?><svg id="Layer_1" style="enable-background:new 0 0 128 128;" version="1.1" viewBox="0 0 128 128" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style type="text/css">
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <svg id="Layer_1" style="enable-background:new 0 0 128 128;" version="1.1" viewBox="0 0 24 24" width="24px" height="24px" xmlns="http://www.w3.org/2000/svg">
3
+ <style type="text/css">
2
4
  .st0{fill-rule:evenodd;clip-rule:evenodd;}
3
5
  .st1{fill-rule:evenodd;clip-rule:evenodd;fill:#7ACED7;}
4
- </style><g id="XMLID_11_"><circle class="st0" cx="64" cy="64" id="XMLID_9_" r="64"/><path class="st1" d="M4,62h25.3c0-0.1,0-0.1,0-0.2C30.3,45,36,29.3,46.2,16c2.8-3.7,6.8-8.1,10.8-11.6 C27.8,7.8,5,32.1,4,62L4,62z M33.3,62c0.9-16,6.3-30.9,16.1-43.6c3.2-4.2,8-9.4,12.6-12.9V62H33.3L33.3,62z M70.9,4.4 c4,3.5,8,7.9,10.8,11.6C92,29.3,97.7,45,98.7,61.8c0,0.1,0,0.1,0,0.2H124C123,32.1,100.2,7.8,70.9,4.4L70.9,4.4z M94.7,62H66V5.5 c4.6,3.5,9.4,8.7,12.6,12.9C88.3,31.1,93.7,46,94.7,62L94.7,62z M71,123.6c4-3.5,7.9-7.9,10.8-11.6C92,98.7,97.7,83,98.7,66.2 c0-0.1,0-0.2,0-0.2H124C123,95.9,100.2,120.2,71,123.6L71,123.6z M94.7,66H66v56.5c4.6-3.5,9.4-8.7,12.6-12.9 C88.3,96.9,93.7,82,94.7,66L94.7,66z M62,122.5c-4.6-3.5-9.4-8.7-12.6-12.9C39.7,96.9,34.3,82,33.3,66H62V122.5L62,122.5z M29.3,66 H4c1,29.9,23.8,54.2,53,57.6c-4-3.5-7.9-7.9-10.8-11.6C36,98.7,30.3,83,29.3,66.2C29.3,66.2,29.3,66.1,29.3,66z" id="XMLID_12_"/></g></svg>
6
+ </style>
7
+ <g id="XMLID_11_" transform="matrix(0.1875, 0, 0, 0.1875, 0, 0)">
8
+ <circle class="st0" cx="64" cy="64" id="XMLID_9_" r="64"/>
9
+ <path class="st1" d="M4,62h25.3c0-0.1,0-0.1,0-0.2C30.3,45,36,29.3,46.2,16c2.8-3.7,6.8-8.1,10.8-11.6 C27.8,7.8,5,32.1,4,62L4,62z M33.3,62c0.9-16,6.3-30.9,16.1-43.6c3.2-4.2,8-9.4,12.6-12.9V62H33.3L33.3,62z M70.9,4.4 c4,3.5,8,7.9,10.8,11.6C92,29.3,97.7,45,98.7,61.8c0,0.1,0,0.1,0,0.2H124C123,32.1,100.2,7.8,70.9,4.4L70.9,4.4z M94.7,62H66V5.5 c4.6,3.5,9.4,8.7,12.6,12.9C88.3,31.1,93.7,46,94.7,62L94.7,62z M71,123.6c4-3.5,7.9-7.9,10.8-11.6C92,98.7,97.7,83,98.7,66.2 c0-0.1,0-0.2,0-0.2H124C123,95.9,100.2,120.2,71,123.6L71,123.6z M94.7,66H66v56.5c4.6-3.5,9.4-8.7,12.6-12.9 C88.3,96.9,93.7,82,94.7,66L94.7,66z M62,122.5c-4.6-3.5-9.4-8.7-12.6-12.9C39.7,96.9,34.3,82,33.3,66H62V122.5L62,122.5z M29.3,66 H4c1,29.9,23.8,54.2,53,57.6c-4-3.5-7.9-7.9-10.8-11.6C36,98.7,30.3,83,29.3,66.2C29.3,66.2,29.3,66.1,29.3,66z" id="XMLID_12_"/>
10
+ </g>
11
+ </svg>
@@ -0,0 +1,5 @@
1
+ <svg version="1.1" viewBox="0 0 320 180" width="320px" height="180px" xmlns="http://www.w3.org/2000/svg">
2
+ <rect x1="1" y1="1" width="100%" height="100%" stroke="#aaa" stroke-width="4" fill="none"/>
3
+ <line x1="1" y1="1" x2="319" y2="179" stroke-width="3" stroke="#aaa"/>
4
+ <line x1="1" y1="179" x2="319" y2="1" stroke-width="3" stroke="#aaa"/>
5
+ </svg>
@@ -0,0 +1,5 @@
1
+ <svg version="1.1" viewBox="0 0 300 200" width="300px" height="200px" xmlns="http://www.w3.org/2000/svg">
2
+ <rect x1="1" y1="1" width="100%" height="100%" stroke="#777" stroke-width="4" fill="none"/>
3
+ <line x1="1" y1="1" x2="299" y2="199" stroke-width="3" stroke="#777"/>
4
+ <line x1="1" y1="199" x2="299" y2="1" stroke-width="3" stroke="#777"/>
5
+ </svg>
@@ -11,8 +11,7 @@ const Biovision = {
11
11
  window[type].removeItem(x);
12
12
 
13
13
  return true;
14
- }
15
- catch (e) {
14
+ } catch (e) {
16
15
  return false;
17
16
  }
18
17
  },
@@ -78,16 +77,35 @@ const Biovision = {
78
77
  }
79
78
  }
80
79
  },
81
- new_ajax_request: function (method, url, on_success, on_failure) {
80
+ /**
81
+ * @deprecated use Biovision.newAjaxRequest
82
+ * @param method
83
+ * @param url
84
+ * @param [onSuccess]
85
+ * @param [onFailure]
86
+ */
87
+ new_ajax_request: function (method, url, onSuccess, onFailure) {
88
+ return Biovision.newAjaxRequest(method, url, onSuccess, onFailure);
89
+ },
90
+ /**
91
+ * Initialize new AJAX request
92
+ *
93
+ * @param {string} method
94
+ * @param {string} url
95
+ * @param {function} [onSuccess] callback for success
96
+ * @param {function} [onFailure=Biovision.handleAjaxFailure] callback for failure
97
+ * @returns {XMLHttpRequest}
98
+ */
99
+ newAjaxRequest: function (method, url, onSuccess, onFailure) {
82
100
  const request = new XMLHttpRequest();
83
101
 
84
102
  request.addEventListener('load', function () {
85
103
  if (this.status >= 200 && this.status < 400) {
86
- if (on_success) {
87
- on_success.call(this);
104
+ if (onSuccess) {
105
+ onSuccess.call(this);
88
106
  }
89
107
  } else {
90
- (on_failure || Biovision.handle_ajax_failure).call(this);
108
+ (onFailure || Biovision.handleAjaxFailure).call(this);
91
109
  }
92
110
  });
93
111
  request.addEventListener('error', function () {
@@ -101,12 +119,16 @@ const Biovision = {
101
119
  return request;
102
120
  },
103
121
  jsonAjaxRequest: function (method, url, onSuccess, onFailure) {
104
- const request = Biovision.new_ajax_request(method, url, onSuccess, onFailure);
122
+ const request = Biovision.newAjaxRequest(method, url, onSuccess, onFailure);
105
123
 
106
124
  request.setRequestHeader('Content-Type', 'application/json');
107
125
 
108
126
  return request;
109
127
  },
128
+ /**
129
+ * @deprecated use Biovision.handleAjaxFailure
130
+ * @param response
131
+ */
110
132
  handle_ajax_failure: function (response) {
111
133
  console.log('AJAX failed', this);
112
134
  if (response.hasOwnProperty('responseJSON')) {
@@ -115,6 +137,12 @@ const Biovision = {
115
137
  console.log(response);
116
138
  }
117
139
  },
140
+ /**
141
+ * Handle failed AJAX request
142
+ */
143
+ handleAjaxFailure: function () {
144
+ console.log('AJAX failed', this.responseText);
145
+ },
118
146
  transliterate: function (input) {
119
147
  const char_map = {
120
148
  'а': 'a', 'б': 'b', 'в': 'v', 'г': 'g', 'д': 'd',
@@ -145,7 +173,7 @@ const Biovision = {
145
173
  };
146
174
  const message = messages.hasOwnProperty(Biovision.locale) ? messages[Biovision.locale] : 'Are you sure?';
147
175
  const url = element.getAttribute('data-url');
148
- const request = Biovision.new_ajax_request('delete', url, function () {
176
+ const request = Biovision.newAjaxRequest('delete', url, function () {
149
177
  element.closest('li[data-id]').remove();
150
178
  });
151
179
 
@@ -167,7 +195,7 @@ const Biovision = {
167
195
 
168
196
  this.disabled = true;
169
197
 
170
- Biovision.new_ajax_request(method, url, () => this.disabled = false).send();
198
+ Biovision.newAjaxRequest(method, url, () => this.disabled = false).send();
171
199
  }
172
200
  },
173
201
  instant_check: function (form) {
@@ -176,7 +204,7 @@ const Biovision = {
176
204
  const perform_check = function () {
177
205
  const element = this;
178
206
 
179
- const request = Biovision.new_ajax_request('POST', url, function () {
207
+ const request = Biovision.newAjaxRequest('POST', url, function () {
180
208
  if (this.responseText) {
181
209
  const response = JSON.parse(this.responseText);
182
210
 
@@ -248,6 +276,32 @@ const Biovision = {
248
276
 
249
277
  errors.scrollIntoView();
250
278
  }
279
+ },
280
+ removeEntityImage: function () {
281
+ const button = this;
282
+ if (!button.disabled) {
283
+ const message = button.getAttribute('data-text');
284
+ if (confirm(message)) {
285
+ const url = button.getAttribute('data-url');
286
+ const request = Biovision.newAjaxRequest('delete', url, function () {
287
+ if (this.responseText) {
288
+ const response = JSON.parse(this.responseText);
289
+ const term = document.getElementById('entity-image');
290
+
291
+ console.log(response);
292
+
293
+ if (term) {
294
+ term.remove();
295
+ }
296
+ button.parentNode.parentNode.remove();
297
+ }
298
+ });
299
+
300
+ button.disabled = true;
301
+
302
+ request.send();
303
+ }
304
+ }
251
305
  }
252
306
  };
253
307
 
@@ -286,7 +340,7 @@ document.addEventListener('DOMContentLoaded', function () {
286
340
  if (url.length > 1) {
287
341
  const method = button.classList.contains('lock') ? 'PUT' : 'DELETE';
288
342
 
289
- const request = Biovision.new_ajax_request(method, url, function () {
343
+ const request = Biovision.newAjaxRequest(method, url, function () {
290
344
  const response = JSON.parse(this.responseText);
291
345
 
292
346
  if (response.hasOwnProperty('data') && response['data'].hasOwnProperty('locked')) {
@@ -345,10 +399,10 @@ document.addEventListener('DOMContentLoaded', function () {
345
399
 
346
400
  const on_failure = function () {
347
401
  element.className = 'unknown';
348
- Biovision.handle_ajax_failure.call(this);
402
+ Biovision.handleAjaxFailure().call(this);
349
403
  };
350
404
 
351
- const request = Biovision.new_ajax_request('POST', url, on_success, on_failure);
405
+ const request = Biovision.newAjaxRequest('POST', url, on_success, on_failure);
352
406
  const data = new FormData();
353
407
  data.append('parameter', parameter);
354
408
 
@@ -365,7 +419,7 @@ document.addEventListener('DOMContentLoaded', function () {
365
419
  let item = element.closest('li[data-number]');
366
420
 
367
421
  if (parseInt(item.getAttribute('data-number')) + delta > 0) {
368
- const on_success = function () {
422
+ const onSuccess = function () {
369
423
  const response = JSON.parse(this.responseText);
370
424
 
371
425
  if (response.hasOwnProperty('data')) {
@@ -401,7 +455,7 @@ document.addEventListener('DOMContentLoaded', function () {
401
455
  }
402
456
  };
403
457
 
404
- const request = Biovision.new_ajax_request('POST', url, on_success);
458
+ const request = Biovision.newAjaxRequest('POST', url, onSuccess);
405
459
 
406
460
  const data = new FormData();
407
461
  data.append('delta', delta);
@@ -418,7 +472,7 @@ document.addEventListener('DOMContentLoaded', function () {
418
472
  const input = container.querySelector('input[type=search]');
419
473
  const url = container.getAttribute('data-url') + '?q=' + encodeURIComponent(input.value);
420
474
 
421
- const request = Biovision.new_ajax_request('GET', url, function () {
475
+ const request = Biovision.newAjaxRequest('GET', url, function () {
422
476
  const response = JSON.parse(this.responseText);
423
477
  const results = container.querySelector('.results');
424
478
 
@@ -440,7 +494,7 @@ document.addEventListener('DOMContentLoaded', function () {
440
494
  element.addEventListener('click', function () {
441
495
  const container = this.closest('div[data-destroy-url]');
442
496
  const url = container.getAttribute('data-destroy-url');
443
- const request = Biovision.new_ajax_request('DELETE', url, function () {
497
+ const request = Biovision.newAjaxRequest('DELETE', url, function () {
444
498
  container.remove();
445
499
  });
446
500
 
@@ -485,6 +539,10 @@ document.addEventListener('DOMContentLoaded', function () {
485
539
 
486
540
  document.querySelectorAll('form[data-check-url]').forEach(Biovision.instant_check);
487
541
 
542
+ document.querySelectorAll('.remove-image-button').forEach(function (button) {
543
+ button.addEventListener('click', Biovision.removeEntityImage);
544
+ });
545
+
488
546
  if (typeof jQuery !== 'undefined') {
489
547
  jQuery.ajaxSetup({
490
548
  headers: {
@@ -130,6 +130,7 @@ article {
130
130
  dd {
131
131
  margin: .2rem 0;
132
132
  padding: 0;
133
+ position: relative;
133
134
 
134
135
  input,
135
136
  textarea {
@@ -349,3 +349,13 @@ form {
349
349
  input.control:not(:checked) + div {
350
350
  display: none;
351
351
  }
352
+
353
+ .covered {
354
+ overflow: hidden;
355
+
356
+ > * {
357
+ height: 100%;
358
+ object-fit: cover;
359
+ width: 100%;
360
+ }
361
+ }
@@ -0,0 +1,27 @@
1
+ class Admin::EditableBlocksController < AdminController
2
+ include ToggleableEntity
3
+
4
+ before_action :set_entity, except: [:index]
5
+
6
+ # get /admin/editable_blocks
7
+ def index
8
+ @collection = EditableBlock.list_for_administration
9
+ end
10
+
11
+ # get /admin/editable_blocks/:id
12
+ def show
13
+ end
14
+
15
+ private
16
+
17
+ def restrict_access
18
+ require_privilege :content_manager
19
+ end
20
+
21
+ def set_entity
22
+ @entity = EditableBlock.find_by(id: params[:id])
23
+ if @entity.nil?
24
+ handle_http_404("Cannot find editable_block #{params[:id]}")
25
+ end
26
+ end
27
+ end
@@ -15,7 +15,7 @@ class Admin::EditablePagesController < AdminController
15
15
  private
16
16
 
17
17
  def restrict_access
18
- require_privilege :chief_editor
18
+ require_privilege :content_manager
19
19
  end
20
20
 
21
21
  def set_entity