Files
Phraseanet/templates/web/common/dialog_export.html.twig
Nicolas Le Goff 949bf06cac Merge branch '3.8'
Conflicts:
	CHANGELOG.md
	bin/console
	bin/developer
	bin/setup
	bower.json
	composer.json
	composer.lock
	features/bootstrap/FeatureContext.php
	features/bootstrap/GuiContext.php
	lib/Alchemy/Phrasea/Authentication/Token/TokenValidator.php
	lib/Alchemy/Phrasea/Command/BuildMissingSubdefs.php
	lib/Alchemy/Phrasea/Command/CreateCollection.php
	lib/Alchemy/Phrasea/Command/Developer/JavascriptBuilder.php
	lib/Alchemy/Phrasea/Controller/Admin/Collection.php
	lib/Alchemy/Phrasea/Controller/Admin/Databoxes.php
	lib/Alchemy/Phrasea/Controller/Admin/TaskManager.php
	lib/Alchemy/Phrasea/Controller/Api/V1.php
	lib/Alchemy/Phrasea/Controller/Client/Baskets.php
	lib/Alchemy/Phrasea/Controller/Client/Root.php
	lib/Alchemy/Phrasea/Controller/Prod/Basket.php
	lib/Alchemy/Phrasea/Controller/Prod/Export.php
	lib/Alchemy/Phrasea/Controller/Prod/Property.php
	lib/Alchemy/Phrasea/Controller/Prod/Records.php
	lib/Alchemy/Phrasea/Controller/Prod/Tools.php
	lib/Alchemy/Phrasea/Controller/Prod/Upload.php
	lib/Alchemy/Phrasea/Controller/Root/Login.php
	lib/Alchemy/Phrasea/Controller/Thesaurus/Thesaurus.php
	lib/Alchemy/Phrasea/Core/Event/ApiLoadEndEvent.php
	lib/Alchemy/Phrasea/Core/Event/ApiLoadStartEvent.php
	lib/Alchemy/Phrasea/Core/Provider/TaskManagerServiceProvider.php
	lib/Alchemy/Phrasea/Core/Version.php
	lib/Alchemy/Phrasea/Exception/XMLParseErrorException.php
	lib/Alchemy/Phrasea/Helper/DatabaseHelper.php
	lib/Alchemy/Phrasea/Helper/User/Edit.php
	lib/Alchemy/Phrasea/SearchEngine/Phrasea/PhraseaEngine.php
	lib/Alchemy/Phrasea/SearchEngine/SearchEngineOptions.php
	lib/Doctrine/Entities/AuthFailure.php
	lib/Doctrine/Entities/Basket.php
	lib/Doctrine/Entities/BasketElement.php
	lib/Doctrine/Entities/LazaretAttribute.php
	lib/Doctrine/Entities/LazaretCheck.php
	lib/Doctrine/Entities/LazaretFile.php
	lib/Doctrine/Entities/LazaretSession.php
	lib/Doctrine/Entities/Session.php
	lib/Doctrine/Entities/SessionModule.php
	lib/Doctrine/Entities/StoryWZ.php
	lib/Doctrine/Entities/UsrList.php
	lib/Doctrine/Entities/UsrListEntry.php
	lib/Doctrine/Entities/UsrListOwner.php
	lib/Doctrine/Entities/ValidationData.php
	lib/Doctrine/Entities/ValidationParticipant.php
	lib/Doctrine/Entities/ValidationSession.php
	lib/Doctrine/Logger/MonologSQLLogger.php
	lib/Doctrine/Repositories/BasketRepository.php
	lib/Doctrine/Repositories/ValidationParticipantRepository.php
	lib/Doctrine/Types/Binary.php
	lib/Doctrine/Types/Blob.php
	lib/Doctrine/Types/Enum.php
	lib/Doctrine/Types/LongBlob.php
	lib/Doctrine/Types/VarBinary.php
	lib/classes/API/OAuth2/Account.php
	lib/classes/API/OAuth2/Application.php
	lib/classes/API/OAuth2/Application/OfficePlugin.php
	lib/classes/API/OAuth2/AuthCode.php
	lib/classes/API/OAuth2/RefreshToken.php
	lib/classes/API/OAuth2/Token.php
	lib/classes/API/V1/Abstract.php
	lib/classes/API/V1/Interface.php
	lib/classes/API/V1/adapter.php
	lib/classes/API/V1/exception/abstract.php
	lib/classes/API/V1/exception/badrequest.php
	lib/classes/API/V1/exception/forbidden.php
	lib/classes/API/V1/exception/internalservererror.php
	lib/classes/API/V1/exception/maintenance.php
	lib/classes/API/V1/exception/methodnotallowed.php
	lib/classes/API/V1/exception/notfound.php
	lib/classes/API/V1/exception/unauthorized.php
	lib/classes/API/V1/result.php
	lib/classes/Exception/Feed/EntryNotFound.php
	lib/classes/Exception/Feed/ItemNotFound.php
	lib/classes/Exception/Feed/PublisherNotFound.php
	lib/classes/Feed/Abstract.php
	lib/classes/Feed/Adapter.php
	lib/classes/Feed/Aggregate.php
	lib/classes/Feed/Collection.php
	lib/classes/Feed/CollectionInterface.php
	lib/classes/Feed/Entry/Adapter.php
	lib/classes/Feed/Entry/Collection.php
	lib/classes/Feed/Entry/CollectionInterface.php
	lib/classes/Feed/Entry/Interface.php
	lib/classes/Feed/Entry/Item.php
	lib/classes/Feed/Entry/ItemInterface.php
	lib/classes/Feed/Interface.php
	lib/classes/Feed/Link.php
	lib/classes/Feed/LinkInterface.php
	lib/classes/Feed/Publisher/Adapter.php
	lib/classes/Feed/Publisher/Interface.php
	lib/classes/Feed/Token.php
	lib/classes/Feed/TokenAggregate.php
	lib/classes/Feed/XML/Abstract.php
	lib/classes/Feed/XML/Atom.php
	lib/classes/Feed/XML/Cooliris.php
	lib/classes/Feed/XML/Interface.php
	lib/classes/Feed/XML/RSS.php
	lib/classes/Feed/XML/RSS/Image.php
	lib/classes/Feed/XML/RSS/ImageInterface.php
	lib/classes/User/Adapter.php
	lib/classes/User/Interface.php
	lib/classes/appbox/register.php
	lib/classes/connection.php
	lib/classes/connection/abstract.php
	lib/classes/connection/interface.php
	lib/classes/connection/pdo.php
	lib/classes/connection/pdoStatementDebugger.php
	lib/classes/deprecated/countries.php
	lib/classes/deprecated/inscript.api.php
	lib/classes/eventsmanager/event/test.php
	lib/classes/ftpclient.php
	lib/classes/http/request.php
	lib/classes/media/subdef.php
	lib/classes/module/console/schedulerStart.php
	lib/classes/module/console/schedulerState.php
	lib/classes/module/console/schedulerStop.php
	lib/classes/module/console/taskState.php
	lib/classes/module/console/tasklist.php
	lib/classes/module/console/taskrun.php
	lib/classes/patch/320alpha4b.php
	lib/classes/patch/3715alpha1a.php
	lib/classes/patch/379alpha1a.php
	lib/classes/patch/380alpha10a.php
	lib/classes/patch/380alpha11a.php
	lib/classes/patch/380alpha13a.php
	lib/classes/patch/380alpha14a.php
	lib/classes/patch/380alpha15a.php
	lib/classes/patch/380alpha16a.php
	lib/classes/patch/380alpha17a.php
	lib/classes/patch/380alpha18a.php
	lib/classes/patch/380alpha3a.php
	lib/classes/patch/380alpha4a.php
	lib/classes/patch/380alpha6a.php
	lib/classes/patch/380alpha8a.php
	lib/classes/patch/380alpha9a.php
	lib/classes/patch/381alpha1b.php
	lib/classes/patch/381alpha2a.php
	lib/classes/patch/381alpha3a.php
	lib/classes/patch/381alpha4a.php
	lib/classes/patch/383alpha1a.php
	lib/classes/patch/383alpha2a.php
	lib/classes/patch/383alpha3a.php
	lib/classes/patch/383alpha4a.php
	lib/classes/record/adapter.php
	lib/classes/record/preview.php
	lib/classes/recordutils.php
	lib/classes/recordutils/audio.php
	lib/classes/recordutils/document.php
	lib/classes/recordutils/map.php
	lib/classes/recordutils/video.php
	lib/classes/registry.php
	lib/classes/registryInterface.php
	lib/classes/set/order.php
	lib/classes/system/url.php
	lib/classes/task/Scheduler.php
	lib/classes/task/appboxAbstract.php
	lib/classes/task/databoxAbstract.php
	lib/classes/task/manager.php
	lib/classes/task/period/RecordMover.php
	lib/classes/task/period/apibridge.php
	lib/classes/task/period/apiwebhooks.php
	lib/classes/task/period/archive.php
	lib/classes/task/period/cindexer.php
	lib/classes/task/period/emptyColl.php
	lib/classes/task/period/ftp.php
	lib/classes/task/period/ftpPull.php
	lib/classes/task/period/subdef.php
	lib/classes/task/period/test.php
	lib/classes/task/period/writemeta.php
	lib/conf.d/PhraseaFixture/AbstractWZ.php
	lib/conf.d/PhraseaFixture/Basket/LoadFiveBaskets.php
	lib/conf.d/PhraseaFixture/Basket/LoadOneBasket.php
	lib/conf.d/PhraseaFixture/Basket/LoadOneBasketEnv.php
	lib/conf.d/PhraseaFixture/Lazaret/LoadOneFile.php
	lib/conf.d/PhraseaFixture/Story/LoadOneStory.php
	lib/conf.d/PhraseaFixture/UsrLists/ListAbstract.php
	lib/conf.d/PhraseaFixture/UsrLists/UsrList.php
	lib/conf.d/PhraseaFixture/UsrLists/UsrListEntry.php
	lib/conf.d/PhraseaFixture/UsrLists/UsrListOwner.php
	lib/conf.d/PhraseaFixture/ValidationParticipant/LoadOneParticipant.php
	lib/conf.d/PhraseaFixture/ValidationParticipant/LoadParticipantWithSession.php
	lib/conf.d/PhraseaFixture/ValidationSession/LoadOneValidationSession.php
	templates/web/admin/collection/collection.html.twig
	templates/web/common/dialog_export.html.twig
	templates/web/common/menubar.html.twig
	templates/web/prod/actions/Tools/index.html.twig
	templates/web/prod/index.html.twig
	templates/web/prod/upload/upload-flash.html.twig
	templates/web/prod/upload/upload.html.twig
	templates/web/report/report_layout_child.html.twig
	templates/web/setup/step2.html.twig
	templates/web/thesaurus/new-synonym-dialog.html.twig
	templates/web/thesaurus/properties.html.twig
	templates/web/thesaurus/search.html.twig
	tests/Alchemy/Tests/Phrasea/Application/ApiAbstract.php
	tests/Alchemy/Tests/Phrasea/Cache/FactoryTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Admin/AdminCollectionTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Client/RootTest.php
2015-02-05 18:38:49 +01:00

834 lines
44 KiB
Twig

{% import 'common/thumbnail.html.twig' as thumbnail %}
{% macro print_ftp_form(datas) %}
<div class="ftp_form ftp_form_{{datas.usr_id}}">
<form id="ftp_user_{{datas.usr_id}}" action="{{ path('export_ftp') }}" method="post" target="_blank" class="form-horizontal" style="text-align: left;">
<div class="control-group">
<label class="control-label" for="ftp-address-{{datas.usr_id}}">{{ 'phraseanet:: adresse' | trans }} ftp://</label>
<div class="controls">
<input type="text" name="address" id="ftp-address-{{datas.usr_id}}" value="{{datas.address}}" />
</div>
</div>
<div class="control-group">
<label class="control-label" for="ftp-ssl-{{datas.usr_id}}">{{ 'phraseanet:: utiliser SSL' | trans }}</label>
<div class="controls">
<input type="checkbox" name="ssl" id="ftp-ssl-{{datas.usr_id}}" {% if datas.ssl %}checked{% endif %} />
</div>
</div>
<div class="control-group">
<label class="control-label" for="ftp-login-{{datas.usr_id}}">{{ 'admin::compte-utilisateur identifiant' | trans }}</label>
<div class="controls">
<input type="text" name="login" id="ftp-login-{{datas.usr_id}}" value="{{datas.login}}" />
</div>
</div>
<div class="control-group">
<label class="control-label" for="ftp-password-{{datas.usr_id}}">{{ 'admin::compte-utilisateur mot de passe' | trans }}</label>
<div class="controls">
<input type="password" name="password" id="ftp-password-{{datas.usr_id}}" value="{{datas.password}}" />
</div>
</div>
<div class="control-group">
<label class="control-label" for="ftp-passive-{{datas.usr_id}}">{{ 'admin::compte-utilisateur:ftp: Utiliser le mode passif' | trans }}</label>
<div class="controls">
<input value="1" type="checkbox" name="passive" id="ftp-passive-{{datas.usr_id}}" {% if datas.passive %}checked{% endif %} />
</div>
</div>
<div class="control-group">
<label class="control-label" for="ftp-max-retry-{{datas.usr_id}}">{{ 'admin::compte-utilisateur:ftp: Nombre d\'essais max' | trans }}</label>
<div class="controls">
<input type="text" name="max_retry" id="ftp-max-retry-{{datas.usr_id}}" value="{{datas.max_retry}}" />
</div>
</div>
<div class="control-group">
<label class="control-label" for="ftp-dest-folder-{{datas.usr_id}}">{{ 'admin::compte-utilisateur:ftp: repertoire de destination ftp' | trans }}</label>
<div class="controls">
<input type="text" name="dest_folder" id="ftp-dest-folder-{{datas.usr_id}}" value="{{datas.dest_folder}}" />
</div>
</div>
<div class="control-group">
<label class="control-label" for="ftp-prefix-folder-{{datas.usr_id}}">{{ 'admin::compte-utilisateur:ftp: creer un dossier' | trans }}</label>
<div class="controls">
<input type="checkbox" class="ftp_folder_check" {% if datas.prefix_folder != '' %}checked{% endif %} name="prefix_folder_check" id="ftp-prefix-folder-check-{{datas.usr_id}}" />
<input type="text" name="prefix_folder" id="ftp-prefix-folder-{{datas.usr_id}}" value="{{datas.prefix_folder}}" {% if datas.prefix_folder == '' %}disabled{% endif %} />
</div>
</div>
<div class="control-group">
<label class="control-label" for="logfile_{{datas.usr_id}}">{{ 'admin::compte-utilisateur:ftp: ecrire un fichier de log' | trans }}</label>
<div class="controls">
<input type="checkbox" class=ftp_logfile_check" name="logfile" id="logfile_{{datas.usr_id}}" value="1" />
</div>
</div>
</form>
</div>
{% endmacro %}
{% macro choose_title(id, choose_export_title, default_export_title)%}
<div class="buttons_line" style="display:{% if choose_export_title %}{% else %}none{% endif %}; text-align: left;">
<p>{{ 'Nom des fichiers a l\'export' | trans }}</p>
<div class="well-small">
<label for="type_{{id}}_original" class="radio">
<input type="radio" name="type" id="type_{{id}}_original" {% if default_export_title == "title" %}checked{% endif %} value="title" />
{{ 'export::titre: titre du documument' | trans }}
</label>
<label for="type_{{id}}_title" class="radio">
<input type="radio" name="type" id="type_{{id}}_title" {% if default_export_title == "original" %}checked{% endif %} value="originalname" />
{{ 'export::titre: nom original du document' | trans }}
</label>
</div>
</div>
{% endmacro %}
{% if app['conf'].get(['registry', 'actions', 'auth-required-for-export']) and app['authentication'].getUser().isGuest() %}
<script type="text/javascript">
p4.Dialog.get(1).Close();
var $dialog = p4.Dialog.Create({
size : '500x100',
closeOnEscape : true,
closeButton:false,
title : "{{ "Unauthorized action"|trans }}"
}, 2);
$dialog.setContent("{{ "Guest, you must be authenticated to have the right to download."|trans }}");
</script>
{% else %}
{% if download.get_total_download() <= 0 and download.get_total_order() <= 0 and download.get_total_ftp() <= 0%}
<div class="buttons_line" style="text-align: left;">
<p>{{ 'Les documents ne peuvent pas etre exportes' | trans }}</p>
<button type="button" class="close_button">{{ 'boutton::fermer' | trans }}</button>
</div>
{% endif %}
<div class="tabs">
<ul>
{% if download.get_total_download() > 0 %}
<li><a href="#download">{{ 'export:: telechargement' | trans }}</a></li>
<li><a href="#sendmail">{{ 'export:: envoi par mail' | trans }}</a></li>
{% endif %}
{% if download.get_total_order() > 0 %}
<li><a href="#order">{{ 'export:: commande' | trans }}</a></li>
{% endif %}
{% if download.get_total_ftp() > 0 %}
<li><a href="#ftp">{{ 'export:: FTP' | trans }}</a></li>
{% endif %}
</ul>
{% if download.get_total_download() > 0 %}
<div id="download">
<div style="padding:10px; text-align: center;">
<h4>{{ 'export:: telechargement' | trans }}</h4>
<form method="post" target="_blank" action="{{ path('check_download') }}" style="text-align: left;">
<input type="hidden" name="lst" value="{{lst}}"/>
<input type="hidden" name="ssttid" value="{{ssttid}}"/>
{% for name, values in download.get_display_download() %}
{% if values.available > 0 %}
<div class="well-small">
<label for="download_{{name}}" class="checkbox">
<input class="{{values.class}}" type="checkbox" id="download_{{name}}" name="obj[]" value="{{name}}" />
<input type="hidden" name="download_{{name}}" value="{{values.size}}" />
<input type="hidden" name="count_{{name}}" value="{{values.available}}" />
{{values.label}} {% if values.total != values.available %}{{values.available}}/{{values.total}}{% endif %} ({{values.size | formatOctets}})
{% if values.refused|length > 0 %}
{% set title%}
{{ 'Documents indisponibles' | trans }}
{% endset %}
<a href="#" class="undisposable_link" title="{{title|trim}}"> + </a>
{% endif %}
</label>
{% if values.refused|length > 0 %}
<div style="display:none;" class="well-small undisposable">
<div>{{ 'Les documents ne peuvent pas etre exportes' | trans }}</div>
{% for datas in values.refused%}
{{ thumbnail.format(datas, 80, 80,'', true, false) }}
{% endfor %}
</div>
{% endif %}
</div>
{% endif %}
{% endfor %}
{% if download.has_business_fields_access() %}
<div class="businessfields well-small" style="margin-left:20px;display:none;">
<label for="business_download" class="checkbox">
<input type="checkbox" name="businessfields" id="business_download" value="1" />
{{ 'Include Business-fields in caption' | trans }}
</label>
</div>
{% endif %}
{{ _self.choose_title('download', choose_export_title, default_export_title) }}
{% if app['conf'].get(['registry', 'actions', 'tou-validation-required-for-export']) == true %}
<div class="well-small">
<label for="TOU_acceptDL" class="checkbox">
<input type="checkbox" name="TOU_accept" id="TOU_acceptDL" value="1" />
{% set beginning_link = '<a href="' ~ path('get_tou') ~ '" class="TOUview">' %}
{% set end_link = '</a>' %}
{% trans with {'%beginning_link%' : beginning_link, '%end_link%' : end_link} %}By checking this box, you accept %beginning_link% Terms of Use %end_link%{% endtrans %}
</label>
</div>
{% endif %}
<div class="buttons_line">
<button type="button" class="download_button btn btn-inverse">{{ 'boutton::telecharger' | trans }}</button>
<button type="button" class="close_button btn btn-inverse">{{ 'boutton::annuler' | trans }}</button>
</div>
</form>
</div>
</div>
<div id="sendmail">
<div style="padding:10px; text-align: center;">
<h4>{{ 'export:: envoi par mail' | trans }}</h4>
<form action="{{ path('export_mail') }}" method="post" target="sendmail_target" style="text-align: left;">
<input type="hidden" name="lst" value="{{lst}}"/>
<input type="hidden" name="ssttid" value="{{ssttid}}"/>
<div>
{{ 'export::mail: destinataire' | trans }}
<input type="text" value="" name="destmail" class="required span4">
{% set my_email = app['authentication'].getUser().getEmail() %}
{% if my_email != '' %}
<label class="checkbox">
<input type="checkbox" name="reading_confirm" value="1" />
{% trans with {'%my_email%' : my_email} %}Recevoir un accuse de reception a %my_email%{% endtrans %}
</label>
{% else %}
<label class="checkbox">
{{ 'Accuse de reception indisponible, vous n\'avez pas declare d\'adresse email' | trans }}
<input type="checkbox" name="reading_confirm" value="1" readonly />
</label>
{% endif %}
<span style="font-style: italic; color: #999999;">{{ 'Entrez plusieurs adresses email en les separant par des points-virgules' | trans }}</span>
</div>
<div>
<p>{{ 'export::mail: contenu du mail' | trans }}</p>
<textarea rows="6" style="width:90%; white-space:pre;resize:none;" name="textmail" id="sendmail_message"></textarea>
</div>
<div>
<p>{{ 'export::mail: fichiers joint' | trans }}</p>
{% for name, values in download.get_display_download() %}
{% if values.available > 0 %}
<div class="well-small">
<label for="sendmail_{{name}}" class="checkbox">
<input class="{{values.class}}" type="checkbox" id="sendmail_{{name}}" name="obj[]" value="{{name}}" />
{{values.label}} {% if values.total != values.available %}{{values.available}}/{{values.total}}{% endif %} ({{values.size | formatOctets}})
{% if values.refused|length > 0 %}
{% set title%}
{{ 'Documents indisponibles' | trans }}
{% endset %}
<a href="#" class="undisposable_link" title="{{title|trim}}"> + </a>
{% endif %}
</label>
{% if values.refused|length > 0 %}
<div style="display:none;" class="well-small undisposable">
<div><i>{{ 'La sous resolution n\'est pas disponible pour les documents suivants' | trans }}</i></div>
{% for datas in values.refused%}
{{ thumbnail.format(datas, 80, 80,'', true, false) }}
{% endfor %}
</div>
{% endif %}
</div>
{% endif %}
{% endfor %}
</div>
{% if download.has_business_fields_access() %}
<div class="businessfields well-small" style="margin-left:20px;display:none;">
<label for="business_sendmail" class="checkbox">
<input type="checkbox" name="businessfields" id="business_sendmail" value="1" />
{{ 'Include Business-fields in caption' | trans }}
</label>
</div>
{% endif %}
{{ _self.choose_title('sendmail', choose_export_title, default_export_title) }}
{% if app['conf'].get(['registry', 'actions', 'tou-validation-required-for-export']) == true %}
<div class="well-small">
<label for="TOU_acceptMail" class="checkbox">
<input type="checkbox" name="TOU_accept" id="TOU_acceptMail" value="1" />
{% set beginning_link = '<a href="' ~ path('get_tou') ~ '" class="TOUview">' %}
{% set end_link = '</a>' %}
{% trans with {'%beginning_link%' : beginning_link, '%end_link%' : end_link} %}By checking this box, you accept %beginning_link% Terms of Use %end_link%{% endtrans %}
</label>
</div>
{% endif %}
<div class="buttons_line">
<button type="button" class="sendmail_button btn btn-inverse">{{ 'boutton::envoyer' | trans }}</button>
<img class="sendmail_button_loader" src="/skins/icons/loader404040.gif" style="visibility:hidden;margin:0 5px;"/>
<button type="button" class="close_button btn btn-inverse">{{ 'boutton::annuler' | trans }}</button>
</div>
</form>
</div>
</div>
{% endif %}
{% if download.get_total_order() > 0 %}
<div id="order">
{% for name, values in download.get_display_orderable() %}
{% if values.available > 0 %}
<div class='well-small'>
{% set docs_orderable = values.available %}
{% if docs_orderable <= 1 %}
{% trans %}Un document commande{% endtrans %}
{% else %}
{% trans with {'%docs_orderable%' : docs_orderable} %}%docs_orderable% documents commandes{% endtrans %}
{% endif %}
{% set docs_not_orderable = values.total - values.available %}
{% if docs_not_orderable > 0%}
{% if docs_not_orderable == 1 %}
{% trans %}Un document ne peut etre commande{% endtrans %}
{% else %}
{% trans with {'%docs_not_orderable%' : docs_not_orderable} %}%docs_not_orderable% documents ne peuvent pas etre commandes{% endtrans %}
{% endif %}
{% endif %}
{% if values.refused|length > 0 %}
{% set title%}
{{ 'Documents indisponibles' | trans }}
{% endset %}
<a href="#" class="undisposable_link" title="{{title|trim}}"> + </a>
<div style="display:none;" class="well-small undisposable">
<div><i>{{ 'La sous resolution n\'est pas disponible pour les documents suivants' | trans }}</i></div>
{% for datas in values.refused%}
{{ thumbnail.format(datas, 80, 80,'', true, false) }}
{% endfor %}
</div>
{% endif %}
</div>
{% endif %}
{% endfor %}
<hr />
<form class="form-horizontal">
<input type="hidden" name="lst" value="{{lst}}"/>
<input type="hidden" name="ssel" value="{{ssttid}}"/>
<div class="control-group">
<label class="control-label" for="order_usage">{{ 'commande::utilisation prevue' | trans }}</label>
<div class="controls">
<textarea rows="5" name="use" id="order_usage"></textarea>
</div>
</div>
<div class="control-group">
<label class="control-label" for="deadline">{{ 'commande::deadline' | trans }}</label>
<div class="controls">
<input class="datepicker" type="text" name="deadline" id="deadline" value="" />
</div>
</div>
<div class="control-group">
<label class="control-label" for="sexe">{{ 'Civility' | trans }}</label>
<div class="controls">
<select name="sexe" id="sexe">
<option {% if app['authentication'].getUser().getGender == 0 %}selected="selected"{% endif %} value="0">{{ 'admin::compte-utilisateur:sexe: mademoiselle' | trans }}</option>
<option {% if app['authentication'].getUser().getGender == 1 %}selected="selected"{% endif %} value="1">{{ 'admin::compte-utilisateur:sexe: madame' | trans }}</option>
<option {% if app['authentication'].getUser().getGender == 2 %}selected="selected"{% endif %} value="2">{{ 'admin::compte-utilisateur:sexe: monsieur' | trans }}</option>
</select>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_lastname">{{ 'admin::compte-utilisateur nom' | trans }}</label>
<div class="controls">
<input id='usr_lastname' type="text" name="usr_nom" class="required" value="{{ app['authentication'].getUser().getLastName() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_firstname">{{ 'admin::compte-utilisateur prenom' | trans }}</label>
<div class="controls">
<input type="text" name="usr_prenom" class="required" id="usr_firstname" value="{{ app['authentication'].getUser().getFirstName() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_mail"> {{ 'admin::compte-utilisateur email' | trans }}</label>
<div class="controls">
<input class="required" type="text" name="usr_mail" id="usr_mail" value="{{ app['authentication'].getUser().getEmail() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_tel">{{ 'admin::compte-utilisateur telephone' | trans }}</label>
<div class="controls">
<input type="text" name="tel" id="usr_tel" value="{{ app['authentication'].getUser().getPhone() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_societe">{{ 'admin::compte-utilisateur societe' | trans }}</label>
<div class="controls">
<input type="text" name="societe" id="usr_societe" value="{{ app['authentication'].getUser().getCompany() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_function">{{ 'admin::compte-utilisateur poste' | trans }}</label>
<div class="controls">
<input type="text" name="fonction" id="usr_fonction" value="{{ app['authentication'].getUser().getJob() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_address">{{ 'admin::compte-utilisateur adresse' | trans }}</label>
<div class="controls">
<input class="required" type="text" name="adresse" id="usr_adresse" value="{{ app['authentication'].getUser().getAddress() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_zip_code">{{ 'admin::compte-utilisateur code postal' | trans }}</label>
<div class="controls">
<input id="usr_zip_code" type="text" name="cpostal" name="cpostal" class="required" value="{{ app['authentication'].getUser().getZipCode() }}"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="command_geoname_field">{{ 'admin::compte-utilisateur ville' | trans }}</label>
<div class="controls">
<input class="required geoname_field" type="text" name="geonameid" id="command_geoname_field" value="{{ app['authentication'].getUser().getGeonameId() }}" />
</div>
</div>
<div class="control-group">
<label class="control-label" for="usr_fax">{{ 'admin::compte-utilisateur fax' | trans }}</label>
<div class="controls">
<input type="text" id="usr_fax" name="fax" value="{{ app['authentication'].getUser().getFax() }}"/>
</div>
</div>
{% if app['conf'].get(['registry', 'actions', 'tou-validation-required-for-export']) == true %}
<div class="well-small">
<label for="TOU_acceptOrder" class="checkbox">
<input type="checkbox" name="TOU_accept" id="TOU_acceptOrder" value="1" />
{% set beginning_link = '<a href="' ~ path('get_tou') ~ '" class="TOUview">' %}
{% set end_link = '</a>' %}
{% trans with {'%beginning_link%' : beginning_link, '%end_link%' : end_link} %}By checking this box, you accept %beginning_link% Terms of Use %end_link%{% endtrans %}
</label>
</div>
{% endif %}
<div class="form_actions buttons_line">
<button type="button" class="order_button btn btn-primary">{{ 'boutton::commander' | trans }}</button>
<img class="order_button_loader" src="/skins/icons/loader404040.gif" style="visibility:hidden;margin:0 5px;"/>
<button type="button" class="close_button btn btn-inverse">{{ 'boutton::annuler' | trans }}</button>
</div>
</form>
</div>
{% endif %}
{% if download.get_total_ftp() > 0 %}
<div id="ftp">
<div style="padding:10px; text-align: center;">
<h4>{{ 'export:: FTP' | trans }}</h4>
<div class="control-group">
<label class="control-label" for="ftp_form_selector">
{{ 'phraseanet:: prereglages' | trans }}
</label>
<div class="controls">
<select id="ftp_form_selector" class="span3">
{% for datas in download.get_ftp_datas() %}
<option value="{{datas.usr_id}}">{{datas.name}}</option>
{% endfor %}
</select>
</div>
</div>
<div id="ftp_form">
<div id="ftp_form_stock">
{% for datas in download.get_ftp_datas() %}
{{ _self.print_ftp_form(datas) }}
{% endfor %}
</div>
</div>
<form id="ftp_joined" class="form-horizontal" style="text-align: left;">
<input type="hidden" name="lst" value="{{lst}}"/>
<input type="hidden" name="ssttid" value="{{ssttid}}"/>
<div>
<p>{% trans 'export::mail: fichiers joint' %}</p>
{% for name, values in download.get_display_ftp() %}
{% if values.available > 0 %}
<div class="well-small">
<label for="ftp_{{name}}" class="checkbox">
<input class="{{values.class}}" type="checkbox" id="ftp_{{name}}" name="obj[]" value="{{name}}" />
{{values.label}} {% if values.total != values.available %}{{values.available}}/{{values.total}}{% endif %} ({{values.size | formatOctets}}))
{% if values.refused|length > 0 %}
{% set title%}
{{ 'Documents indisponibles' | trans }}
{% endset %}
<a href="#" class="undisposable_link" title="{{title|trim}}"> + </a>
{% endif %}
</label>
{% if values.refused|length > 0 %}
<div style="display:none;" class="well-small undisposable">
<div><i>{{ 'La sous resolution n\'est pas disponible pour les documents suivants' | trans }}</i></div>
{% for datas in values.refused%}
{{ thumbnail.format(datas, 80, 80,'', true, false) }}
{% endfor %}
</div>
{% endif %}
</div>
{% endif %}
{% endfor %}
</div>
{% if download.has_business_fields_access() %}
<div class="businessfields" style="margin-left:20px;display:none;">
<label for="business_ftp" class="checkbox">
<input type="checkbox" name="businessfields" id="business_ftp" value="1" />
{{ 'Include Business-fields in caption' | trans }}
</label>
</div>
{% endif %}
{% if app['conf'].get(['registry', 'actions', 'tou-validation-required-for-export']) == true %}
<div class="well-small">
<label for="TOU_acceptFTP" class="checkbox">
<input type="checkbox" name="TOU_accept" id="TOU_acceptFTP" value="1" />
{% set beginning_link = '<a href="' ~ path('get_tou') ~ '" class="TOUview">' %}
{% set end_link = '</a>' %}
{% trans with {'%beginning_link%' : beginning_link, '%end_link%' : end_link} %}By checking this box, you accept %beginning_link% Terms of Use %end_link%{% endtrans %}
</label>
</div>
{% endif %}
</form>
<div class="buttons_line">
<button type="button" class="tryftp_button btn btn-inverse">{{ 'boutton::essayer' | trans }}</button>
<img class="tryftp_button_loader" src="/skins/icons/loader404040.gif" style="visibility:hidden;margin:0 5px;"/>
<button type="button" class="ftp_button btn btn-inverse">{{ 'boutton::envoyer' | trans }}</button>
<img class="ftp_button_loader" src="/skins/icons/loader404040.gif" style="visibility:hidden;margin:0 5px;"/>
<button type="button" class="close_button btn btn-inverse">{{ 'boutton::annuler' | trans }}</button>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){
$('#ftp_form_selector').bind('change',function(){
$('#ftp .ftp_form').hide();
$('#ftp .ftp_form_'+$(this).val()).show();
$('.ftp_folder_check', p4.Dialog.get(1).getDomElement()).unbind('change').bind('change', function(){
if($(this).attr('checked'))
$(this).next().removeAttr('disabled');
else
$(this).next().attr('disabled','disabled');
});
}).trigger('change');
});
</script>
</div>
{% endif %}
</div>
<script type="text/javascript" language="javascript" src="{{ path('minifier', { 'f' : 'assets/geonames-server-jquery-plugin/jquery.geonames.js,scripts/common/geonames.js' }) }}"></script>
<script type="text/javascript">
function check_TOU(container)
{
var checkbox = $('input[name="TOU_accept"]', $(container));
var go = checkbox.length === 0 || checkbox.attr('checked');
if(!go)
{
{% set alert_message %}
{{ 'You must agree to the Terms of Use to continue.' | trans }}
{% endset %}
var alert = p4.Dialog.Create({
size : 'Alert',
closeOnEscape : true,
closeButton:true,
title : '{{ "Warning !" | trans }}'
}, 2);
alert.setContent("{{ alert_message | e('js') }}");
return false;
}
return true;
}
function check_subdefs(container)
{
var go = required = false;
$('input[name="obj[]"]', $(container)).each(function(){
if($(this).attr('checked'))
{
go = true;
}
});
$('input.required, textarea.required', container).each(function(i,n){
if($.trim($(n).val()) === '')
{
required = true;
$(n).addClass('error');
}
else
{
$(n).removeClass('error');
}
});
if(required)
{
{% set alert_message %}
{{ 'Certains champs sont obligatoires, veuillez les remplir' | trans }}
{% endset %}
var alert = p4.Dialog.Create({
size : 'Alert',
closeOnEscape : true,
closeButton:true,
title : '{{ "Warning !" | trans | e('js') }}'
}, 2);
alert.setContent("{{ alert_message | e('js') }}");
return false;
}
if(!go)
{
{% set alert_message %}
{{ 'Vous devez selectionner un type de sous definitions' | trans }}
{% endset %}
var alert = p4.Dialog.Create({
size : 'Alert',
closeOnEscape : true,
closeButton:true,
title : '{{ "Warning !" | trans | e('js') }}'
}, 2);
alert.setContent("{{ alert_message | e('js') }}");
return false;
}
return true;
}
{% set TOUTitle %}
{{ "Terms of Use" | trans }}
{% endset %}
$(document).ready(function(){
var dialog = p4.Dialog.get(1);
var tabs = $('.tabs', dialog.getDomElement());
$('a.TOUview').bind('click', function(){
var options = {
size : 'Medium',
closeButton: true,
title :'{{ TOUTitle|e('js') }}'
};
$dialog = p4.Dialog.Create(options, 2);
$.get($(this).attr('href'), function(content){$dialog.setContent(content);});
});
$('.close_button').bind('click',function(){
dialog.Close();
});
geonames.init($('#command_geoname_field'), {
"server": "{{ app['geonames.server-uri'] }}",
"limit": 40
});
$('#download .download_button').bind('click',function(){
if(!check_subdefs($('#download')))
return false;
if (!check_TOU($('#download'))) {
return false;
}
var total = 0;
var count = 0;
$('input[name="obj[]"]', $('#download')).each(function(){
var total_el = $('#download input[name=download_'+$(this).val()+']');
var count_el = $('#download input[name=count_'+$(this).val()+']');
if($(this).attr('checked'))
{
total += parseInt($(total_el).val());
count += parseInt($(count_el).val());
}
});
{% set max_download = app['conf'].get(['registry', 'actions', 'download-max-size'], 120) %}
{% set alert_too_big_one %}
{% trans with {'%max_download%' : max_download} %}You can not directly download more than %max_download% Mo ; time to package all documents is too long{% endtrans %}
{% endset %}
{% set alert_too_big_two %}
{{ 'You can alternatively receive an email when the download is ready.' | trans }}
{% endset %}
{% set alert_too_big_three %}
{{ 'Would you like to receive an e-mail when your download is ready ?' | trans }}
{% endset %}
if(count>1 && total/1024/1024 > {{max_download}}) {
if(confirm("{{alert_too_big_one|e('js') ~ "\\n" ~ alert_too_big_two|e('js') ~ "\\n" ~ alert_too_big_three|e('js')}}")) {
$('input[name="obj[]"]:checked', $('#download')).each(function(i,n){
$('input[name="obj[]"][value="'+$(n).val()+'"]', $('#sendmail')).attr('checked', true);
});
$('input[name="destmail"]', $('#sendmail')).val("{{app['authentication'].getUser().getEmail()}}");
var tabs = $('.tabs', dialog.getDomElement());
tabs.tabs("option", "active", 1);
}
return;
}
$('#download form').submit();
dialog.Close();
});
$('#order .order_button').bind('click',function(){
if (!check_TOU($('#order'))) {
return false;
}
$('#order .order_button_loader').css('visibility','visible');
var options = $('#order form').serialize();
var $this = $(this);
$this.attr('disabled', true).addClass('disabled');
$.post("../prod/order/"
, options
, function(data){
$this.attr('disabled', false).removeClass('disabled');
$('#order .order_button_loader').css('visibility','hidden');
if(!data.error) {
var title = '{{ "Success" | trans | e('js') }}';
} else {
var title = '{{ "Warning !" | trans | e('js') }}';
}
var options = {
size : 'Alert',
closeButton: true,
title : title
};
p4.Dialog.Create(options, 2).setContent(data.msg);
if(!data.error)
{
humane.info(data.msg);
dialog.Close();
} else {
humane.error(data.msg);
}
return;
}
,'json'
);
});
$('#ftp .ftp_button').bind('click',function(){
if(!check_subdefs($('#ftp')))
return false;
if (!check_TOU($('#ftp'))) {
return false;
}
$('#ftp .ftp_button_loader').show();
$('#ftp .ftp_form:hidden').remove();
var $this = $(this);
var options_addr = $('#ftp_form_stock form:visible').serialize();
var options_join = $('#ftp_joined').serialize();
$this.attr('disabled','disabled');
$.post("../prod/export/ftp/"
, options_addr + '&' + options_join
, function(data){
$this.removeAttr('disabled');
$('#ftp .ftp_button_loader').hide();
if(data.success) {
humane.info(data.message);
dialog.Close();
} else {
var alert = p4.Dialog.Create({
size : 'Alert',
closeOnEscape : true,
closeButton:true,
title : '{{ "Warning !" | trans | e('js') }}'
}, 2);
alert.setContent(data.message);
}
return;
}
, 'json'
);
});
$('#ftp .tryftp_button').bind('click',function(){
$('#ftp .tryftp_button_loader').css('visibility','visible');
var $this = $(this);
$this.attr('disabled','disabled');
var options_addr = $('#ftp_form_stock form:visible').serialize();
$.post("../prod/export/ftp/test/"
, options_addr // no need to include 'ftp_joined' checkboxes to test ftp
, function(data){
$('#ftp .tryftp_button_loader').css('visibility','hidden');
var options = {
size : 'Alert',
closeButton: true,
title : data.success ? '{{ "Success" | trans | e('js') }}' : '{{ "Warning !" | trans | e('js') }}'
};
p4.Dialog.Create(options, 3).setContent(data.message);
$this.removeAttr('disabled');
return;
}
);
});
$('#sendmail .sendmail_button').bind('click',function(){
if(!check_subdefs($('#sendmail'))) {
return false;
}
if (!check_TOU($('#sendmail'))) {
return false;
}
if ($('iframe[name=""]').length === 0) {
$('body').append('<iframe style="display:none;" name="sendmail_target"></iframe>');
}
$('#sendmail form').submit();
dialog.Close();
});
$('.datepicker', dialog.getDomElement()).datepicker({
changeYear: true,
changeMonth:true,
dateFormat : 'yy-mm-dd'
});
$('a.undisposable_link', dialog.getDomElement()).bind('click',function(){
$(this).parent().parent().find('.undisposable').slideToggle();
return false;
});
$('input[name="obj[]"]', $('#download, #sendmail, #ftp')).bind('change', function(){
var $form = $(this).closest('form');
if($('input.caption[name="obj[]"]:checked', $form).length > 0) {
$('div.businessfields', $form).show();
} else {
$('div.businessfields', $form).hide();
}
});
});
</script>
{% endif %}