update-project-status.html.twig 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. {#
  2. /**
  3. * @file
  4. * Theme override for the project status report.
  5. *
  6. * Available variables:
  7. * - title: The project title.
  8. * - url: The project url.
  9. * - status: The project status.
  10. * - label: The project status label.
  11. * - attributes: HTML attributes for the project status.
  12. * - reason: The reason you should update the project.
  13. * - icon: The project status version indicator icon.
  14. * - existing_version: The version of the installed project.
  15. * - versions: The available versions of the project.
  16. * - install_type: The type of project (e.g., dev).
  17. * - datestamp: The date/time of a project version's release.
  18. * - extras: HTML attributes and additional information about the project.
  19. * - attributes: HTML attributes for the extra item.
  20. * - label: The label for an extra item.
  21. * - data: The data about an extra item.
  22. * - includes: The projects within the project.
  23. * - disabled: The currently disabled projects in the project.
  24. *
  25. * @see template_preprocess_update_project_status()
  26. */
  27. #}
  28. {%
  29. set status_classes = [
  30. project.status == constant('UPDATE_NOT_SECURE') ? 'project-update__status--security-error',
  31. project.status == constant('UPDATE_REVOKED') ? 'project-update__status--revoked',
  32. project.status == constant('UPDATE_NOT_SUPPORTED') ? 'project-update__status--not-supported',
  33. project.status == constant('UPDATE_NOT_CURRENT') ? 'project-update__status--not-current',
  34. project.status == constant('UPDATE_CURRENT') ? 'project-update__status--current',
  35. ]
  36. %}
  37. <div{{ status.attributes.addClass('project-update__status', status_classes) }}>
  38. {%- if status.label -%}
  39. <span>{{ status.label }}</span>
  40. {%- else -%}
  41. {{ status.reason }}
  42. {%- endif %}
  43. <span class="project-update__status-icon">
  44. {{ status.icon }}
  45. </span>
  46. </div>
  47. <div class="project-update__title">
  48. {%- if url -%}
  49. <a href="{{ url }}">{{ title }}</a>
  50. {%- else -%}
  51. {{ title }}
  52. {%- endif %}
  53. {{ existing_version }}
  54. {% if install_type == 'dev' and datestamp %}
  55. <span class="project-update__version-date">({{ datestamp }})</span>
  56. {% endif %}
  57. </div>
  58. {% if versions %}
  59. {% for version in versions %}
  60. {{ version }}
  61. {% endfor %}
  62. {% endif %}
  63. {%
  64. set extra_classes = [
  65. project.status == constant('UPDATE_NOT_SECURE') ? 'project-not-secure',
  66. project.status == constant('UPDATE_REVOKED') ? 'project-revoked',
  67. project.status == constant('UPDATE_NOT_SUPPORTED') ? 'project-not-supported',
  68. ]
  69. %}
  70. <div class="project-updates__details">
  71. {% if extras %}
  72. <div class="extra">
  73. {% for extra in extras %}
  74. <div{{ extra.attributes.addClass(extra_classes) }}>
  75. {{ extra.label }}: {{ extra.data }}
  76. </div>
  77. {% endfor %}
  78. </div>
  79. {% endif %}
  80. {% set includes = includes|join(', ') %}
  81. {% if disabled %}
  82. {{ 'Includes:'|t }}
  83. <ul>
  84. <li>
  85. {% trans %}
  86. Enabled: {{ includes|placeholder }}
  87. {% endtrans %}
  88. </li>
  89. <li>
  90. {% set disabled = disabled|join(', ') %}
  91. {% trans %}
  92. Disabled: {{ disabled|placeholder }}
  93. {% endtrans %}
  94. </li>
  95. </ul>
  96. {% else %}
  97. {% trans %}
  98. Includes: {{ includes|placeholder }}
  99. {% endtrans %}
  100. {% endif %}
  101. </div>