mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-23 18:03:17 +00:00
187 lines
8.5 KiB
Twig
187 lines
8.5 KiB
Twig
|
|
{% set nbReceivedDocuments = records.received().count() %}
|
|
{% set nbEditableDocuments = records.count() %}
|
|
|
|
<div id='tabs-records-property'>
|
|
|
|
{# This value is fetched when click on 2nd tab #}
|
|
<input type="hidden" name='original_selection' value="{{ app.request.query.get('lst') }}">
|
|
|
|
<ul>
|
|
<li><a href="#property-statut">{% trans 'Records Statut' %}</a></li>
|
|
{# <span> </span> element is required for the jQuery loading spinner appears && disappears properly #}
|
|
<li><a href="{{ path('display_type_property') }}">{% trans 'Records type' %} <span> </span></a></li>
|
|
</ul>
|
|
|
|
<div id='property-statut'>
|
|
<p class="header">
|
|
<h4 style='text-align:center;'>
|
|
{% trans %}
|
|
You have selected one document.
|
|
{% plural nbReceivedDocuments %}
|
|
You have selected {{ nbReceivedDocuments }} documents.
|
|
{% endtrans %}
|
|
|
|
{% if nbEditableDocuments == 0 %}
|
|
{% trans %}No documents editable{% endtrans %}
|
|
{% else %}
|
|
{% if nbEditableDocuments < nbReceivedDocuments %}
|
|
{% trans %}
|
|
Only one document is editable.
|
|
{% plural nbEditableDocuments %}
|
|
Only {{ nbEditableDocuments }} documents are editable.
|
|
{% endtrans %}
|
|
{% endif %}
|
|
{% endif %}
|
|
</h4>
|
|
</p>
|
|
|
|
<form style='padding:15px;' name="change-records-status" action="{{ path('change_status') }}" method="POST">
|
|
<input name="lst" type="hidden" value="{{ records.serializedList() }}"/>
|
|
{% for databox in records.databoxes() %}
|
|
{% set sbasId = databox.get_sbas_id() %}
|
|
{% set nbItems = attribute(nRec, sbasId) %}
|
|
{% set nbRecords = nbItems['records'] %}
|
|
{% set nbStories = nbItems['stories'] %}
|
|
<table style='width:auto;margin:0 auto'>
|
|
<thead>
|
|
<tr>
|
|
<th colspan="6">
|
|
{{ databox.get_label(app['locale.I18n'])|title }}
|
|
</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr style='border-bottom:1px solid #FFF;'>
|
|
<td colspan="6" style='font-size:11px;text-align:center'>
|
|
{% if nbRecords == 0 and nbStories > 0 %}
|
|
<i>({% trans %}Status edition of stories{% endtrans %})</i>
|
|
{% elseif nbRecords > 0 and nbStories == 0 %}
|
|
<i>({% trans %}Status edition of documents{% endtrans %})</i>
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
{% set databoxStatus = attribute(statusBit, sbasId) %}
|
|
{% for bit,values in databoxStatus %}
|
|
{% set inverse = 0 %}
|
|
|
|
{% if values["status"] == "2" %}
|
|
{% set inverse = 2 %}
|
|
{% elseif values["status"] == "0" %}
|
|
{% set inverse = 1 %}
|
|
{% endif %}
|
|
<tr>
|
|
<td style='text-align:right'>
|
|
{% if values['img_off'] is not empty %}
|
|
<label for="status-radio-{{ sbasId ~ "-" ~ bit ~ '-off'}}">
|
|
<img src="{{ values['img_off'] }}" width="16" height="16" />
|
|
</label>
|
|
{% endif %}
|
|
</td>
|
|
<td style='text-align:right'>
|
|
<label for="status-radio-{{ sbasId ~ "-" ~ bit ~ '-off'}}" {% if inverse == 2 %}style='color:#FF3333'{% endif%}>
|
|
{{ values['labels_off_i18n'][app['locale.I18n']]|default('off') }}
|
|
</label>
|
|
</td>
|
|
<td style='text-align:right'>
|
|
<input id="status-radio-{{ sbasId ~ "-" ~ bit ~ '-off'}}" type="radio" name="status[{{ sbasId }}][{{ bit }}]" value="0" {% if inverse == 1 %}checked="checked"{% endif %}/>
|
|
</td>
|
|
<td style='text-align:left'>
|
|
<input id="status-radio-{{ sbasId ~ "-" ~ bit ~ '-on'}}" type="radio" name="status[{{ sbasId }}][{{ bit }}]" value="1" {% if inverse == 0 %}checked="checked"{% endif %}/>
|
|
</td>
|
|
<td style='text-align:left'>
|
|
<label for="status-radio-{{ sbasId ~ "-" ~ bit ~ '-on'}}" {% if inverse == 2 %}style='color:#FF3333'{% endif%}>
|
|
{{ values['labels_on_i18n'][app['locale.I18n']]|default('on') }}
|
|
</label>
|
|
</td>
|
|
<td style='text-align:left'>
|
|
{% if values['img_on'] is not empty %}
|
|
<label for="status-radio-{{ sbasId ~ "-" ~ bit ~ '-on'}}">
|
|
<img src="{{ values['img_on'] }}" width="16" height="16" />
|
|
</label>
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
<tfoot>
|
|
{% if nbStories > 0 %}
|
|
<tr>
|
|
<td colspan="6"><input type="checkbox" name="apply_to_children[{{ sbasId }}]"/></td>
|
|
</tr>
|
|
{% endif %}
|
|
</tfoot>
|
|
</table>
|
|
{% endfor %}
|
|
<div class="form-actions" style="background:transparent">
|
|
{% if nbEditableDocuments > 0 %}
|
|
<button type="button" class="btn btn-primary submiter">{% trans "Apply changes" %}</button>
|
|
{% endif %}
|
|
<button type="button" class="btn cancel">{% trans "Cancel" %}</button>
|
|
<span class="form-action-loader" style="display:none;">
|
|
<img src="../skins/icons/loader414141.gif" />
|
|
</span>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){
|
|
$("#tabs-records-property").tabs({
|
|
beforeLoad: function( event, ui ) {
|
|
ui.ajaxSettings.data = {
|
|
lst: $("input[name=original_selection]", $(this)).val()
|
|
};
|
|
|
|
// load template only once
|
|
if ( ui.tab.data( "loaded" ) ) {
|
|
event.preventDefault();
|
|
return;
|
|
}
|
|
|
|
ui.jqXHR.success(function() {
|
|
ui.tab.data( "loaded", true );
|
|
});
|
|
|
|
ui.tab.find('span').html("<i>{{ 'Loading'|trans }}...</i>");
|
|
},
|
|
load: function(event, ui)
|
|
{
|
|
ui.tab.find('span').empty();
|
|
}
|
|
});
|
|
|
|
var $dialog = p4.Dialog.get(1);
|
|
var $dialogBox = $dialog.getDomElement();
|
|
|
|
$("button.cancel", $dialogBox).bind("click", function(){
|
|
$dialog.Close();
|
|
});
|
|
|
|
$("button.submiter", $dialogBox).bind("click", function(){
|
|
var $this = $(this);
|
|
var form = $(this).closest("form");
|
|
var loader = form.find("form-action-loader");
|
|
|
|
$.ajax({
|
|
type: form.attr("method"),
|
|
url: form.attr("action"),
|
|
data: form.serializeArray(),
|
|
dataType: 'json',
|
|
beforeSend:function(){
|
|
$this.attr("disabled", true);
|
|
loader.show();
|
|
},
|
|
success: function(data){
|
|
$dialog.Close();
|
|
},
|
|
complete: function(){
|
|
$this.attr("disabled", false);
|
|
loader.hide();
|
|
}
|
|
});
|
|
});
|
|
});
|
|
</script>
|