Go on with comments

This commit is contained in:
Flavio Copes 2015-09-14 14:48:17 +02:00
parent b7ce57b541
commit 978abff176
5 changed files with 24 additions and 154 deletions

View File

@ -1,38 +1,11 @@
{% extends 'partials/base.html.twig' %} {% extends 'partials/base.html.twig' %}
{% set mode = 'types' %}
{% if uri.paths[1] == 'data-manager' and uri.paths[2] %}
{% set mode = 'items' %}
{% set type = uri.paths[2] %}
{% if uri.paths[3] %}
{% set mode = 'item' %}
{% set item = uri.paths[3] %}
{% endif %}
{% endif %}
{% if admin.route %} {% if admin.route %}
{% set context = admin.page(true) %} {% set context = admin.page(true) %}
{% endif %} {% endif %}
{% block titlebar %} {% block titlebar %}
{% if mode == 'types' %} <h1><i class="fa fa-fw fa-file-text-o"></i> {{ "PLUGIN_COMMENTS.COMMENTS"|tu }}</h1>
<div class="button-bar">
<a class="button" href="{{ base_url }}"><i class="fa fa-reply"></i> {{ "PLUGIN_ADMIN.BACK"|tu }}</a>
</div>
<h1><i class="fa fa-fw fa-file-text-o"></i> {{ "PLUGIN_DATA_MANAGER.DATA_TYPES"|tu }}</h1>
{% elseif mode == 'items' %}
<div class="button-bar">
<a class="button" href="{{ base_url }}/data-manager"><i class="fa fa-reply"></i> {{ "PLUGIN_ADMIN.BACK"|tu }}</a>
</div>
<h1><i class="fa fa-fw fa-file-text-o"></i> {{ "PLUGIN_DATA_MANAGER.ITEMS_LIST"|tu }}</h1>
{% elseif mode == 'item' %}
<div class="button-bar">
<a class="button" href="{{ base_url }}/data-manager/{{ type }}"><i class="fa fa-reply"></i> {{ "PLUGIN_ADMIN.BACK"|tu }}</a>
</div>
<h1><i class="fa fa-fw fa-file-text-o"></i> {{ "PLUGIN_DATA_MANAGER.ITEM_DETAILS"|tu }}</h1>
{% endif %}
{% endblock %} {% endblock %}
{% block content %} {% block content %}
@ -43,16 +16,21 @@
</style> </style>
<div class="page-data"> <div class="page-data">
{% if mode == 'types' %} <div class="gpm gpm-themes">
{% include "partials/types.html.twig" %} <h1>
{% endif %} {{"PLUGIN_COMMENTS.COMMENTS"|e|tu}}
</h1>
{% if mode == 'items' %} <div class="gpm gpm-themes themes card-row grid fixed-blocks pure-g">
{% include ['partials/data-manager/' ~ type ~ '/items.html.twig', 'partials/items.html.twig'] %} <ul class="pages-list depth-0">
{% endif %} {% for item in grav.twig.comments %}
<li class="page-item">
{% if mode == 'item' %} <div class="row">
{% include ['partials/data-manager/' ~ type ~ '/item.html.twig', 'partials/item.html.twig'] %} <a href="{{ item.route }}" class="page-edit">{{ item.content|e }}</a>
{% endif %} </div>
</li>
{% endfor %}
</ul>
</div>
</div>
</div> </div>
{% endblock %} {% endblock %}

View File

@ -1,51 +0,0 @@
{% macro loop(elements) %}
<ul>
{% for key, item in elements %}
{% if item is iterable %}
<li><strong>{{key|e|capitalize}}</strong>:</li>
{{ _self.loop(item) }}
{% else %}
<li><strong>{{key|e|capitalize}}</strong>: {{ item|e }}</li>
{% endif %}
{% endfor %}
</ul>
{% endmacro %}
<h1>
{{ config.plugins['data-manager'].types[type].item.title ?: type|e|capitalize ~ " " ~ "PLUGIN_DATA_MANAGER.ITEM_DETAILS"|e|tu }}
</h1>
<ul>
{% if config.plugins['data-manager'].types[type].item.fields %}
{% for key, type in config.plugins['data-manager'].types[type].item.fields %}
<li class="page-item">
<div class="row">
<strong>{{type.name|e|capitalize}}</strong>:
{% set item = grav.twig.itemData[key]|cast_to_array %}
{% if item is iterable %}
{{ _self.loop(item) }}
{% else %}
{{ item|e }}
{% endif %}
</div>
</li>
{% endfor %}
{% else %}
{% for key, type in grav.twig.itemData %}
<li class="page-item">
<div class="row">
<strong>{{key|capitalize}}</strong>:
{% set item = grav.twig.itemData[key]|cast_to_array %}
{% if item is iterable %}
{{ _self.loop(item) }}
{% else %}
{{ item|e }}
{% endif %}
</div>
</li>
{% endfor %}
{% endif %}
</ul>

View File

@ -1,47 +0,0 @@
<h1>
{{ config.plugins['data-manager'].types[type].list.title ?: type|e|capitalize ~ " " ~ "PLUGIN_DATA_MANAGER.ITEMS_LIST"|e|tu }}
</h1>
<div class="row">
{% if config.plugins['data-manager'].types[type].list.columns %}
<table>
<thead>
<tr>
{% for column in config.plugins['data-manager'].types[type].list.columns %}
<th>{{ column.label|e }}</th>
{% endfor %}
</tr>
</thead>
<tbody>
{% for item in grav.twig.items %}
<tr>
{% for column in config.plugins['data-manager'].types[type].list.columns %}
<td>
<a href="{{ type }}/{{ item.route }}">
{% if column.field is iterable %}
{% set value = item.content %}
{% for field in column.field %}
{% set value = value[field] %}
{% endfor %}
{{ value|e }}
{% else %}
{{ item.content[column.field]|e }}
{% endif %}
</a>
</td>
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<ul class="pages-list depth-0">
{% for item in grav.twig.items %}
<li class="page-item">
<div class="row">
<a href="{{ type }}/{{ item.route }}" class="page-edit">{{ item.route|e }}</a>
</div>
</li>
{% endfor %}
</ul>
{% endif %}
</div>

View File

@ -1,17 +0,0 @@
<div class="gpm gpm-themes">
<h1>
{{"PLUGIN_DATA_MANAGER.DATA_TYPES"|e|tu}}
</h1>
<div class="gpm gpm-themes themes card-row grid fixed-blocks pure-g">
{% for type, count in grav.twig.types %}
<a href="data-manager/{{ type }}" class="pure-u-1-3 card-item">
<div class="theme">
<div class="gpm-name">
{{ config.plugins['data-manager'].types[type].name|e ?: type|capitalize|e }}
</div>
<p>{{ count }} {{"PLUGIN_DATA_MANAGER.ITEMS"|e|tu}}</p>
</div>
</a>
{% endfor %}
</div>
</div>

View File

@ -35,6 +35,13 @@ class CommentsPlugin extends Plugin
'onAdminTemplateNavPluginHook' => ['onAdminTemplateNavPluginHook', 0], 'onAdminTemplateNavPluginHook' => ['onAdminTemplateNavPluginHook', 0],
'onDataTypeExcludeFromDataManagerPluginHook' => ['onDataTypeExcludeFromDataManagerPluginHook', 0], 'onDataTypeExcludeFromDataManagerPluginHook' => ['onDataTypeExcludeFromDataManagerPluginHook', 0],
]); ]);
$comments[] = [
'route' => 'comment-test-1',
'content' => 'A comment text'
];
$this->grav['twig']->comments = $comments;
} }
/** /**