Merge remote-tracking branch 'upstream/master' into 20150306-elastic-indexer

Conflicts:
	bin/console
	bower.json
	composer.json
	composer.lock
	lib/Alchemy/Phrasea/Application.php
	lib/Alchemy/Phrasea/Border/Manager.php
	lib/Alchemy/Phrasea/Controller/Api/V1.php
	lib/Alchemy/Phrasea/Core/PhraseaEvents.php
	lib/Alchemy/Phrasea/SearchEngine/SearchEngineOptions.php
	lib/classes/caption/field.php
	lib/classes/record/Interface.php
	templates/web/prod/index.html.twig
	www/skins/prod/000000/prodcolor.css
This commit is contained in:
Nicolas Le Goff
2015-03-06 14:35:29 +01:00
committed by Mathieu Darse
1078 changed files with 7964 additions and 16363 deletions

View File

@@ -2,61 +2,63 @@
{% macro print_ftp_form(datas) %}
<div class="ftp_form ftp_form_{{datas.usr_id}}">
<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}}" />
<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>
<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 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>
<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 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>
<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 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>
<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 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>
<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 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>
<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 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>
<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 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>
<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 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>
</div>
</form>
</div>
{% endmacro %}
@@ -409,30 +411,30 @@
<div id="ftp">
<div style="padding:10px; text-align: center;">
<h4>{{ 'export:: FTP' | trans }}</h4>
<form 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_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 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>
<div>
<p>{{ 'export::mail: fichiers joint' | trans }}</p>
<p>{{ 'export::mail: fichiers joint' | trans }}</p>
{% for name, values in download.get_display_ftp() %}
{% if values.available > 0 %}
<div class="well-small">
@@ -477,14 +479,14 @@
</label>
</div>
{% endif %}
<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>
</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(){
@@ -504,7 +506,6 @@
{% 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)
@@ -617,11 +618,17 @@
dialog.Close();
});
geonames.init($('#command_geoname_field'), {
"server": "{{ app['geonames.server-uri'] }}",
"limit": 40
define([
"common/geonames"
], function (geonames) {
geonames.init($('#command_geoname_field'), {
"server": "{{ app['geonames.server-uri'] }}",
"limit": 40
});
});
$('#download .download_button').bind('click',function(){
if(!check_subdefs($('#download')))
return false;
@@ -726,18 +733,21 @@
return false;
}
$('#ftp .ftp_button_loader').css('visibility','visible');
$('#ftp .ftp_button_loader').show();
$('#ftp .ftp_form:hidden').remove();
var $this = $(this);
var options = $('#ftp form').serialize();
var options_addr = $('#ftp_form_stock form:visible').serialize();
var options_join = $('#ftp_joined').serialize();
$this.attr('disabled','disabled');
$.post("../prod/export/ftp/"
, options
, options_addr + '&' + options_join
, function(data){
$this.removeAttr('disabled');
$('#ftp .ftp_button_loader').css('visibility','hidden');
$('#ftp .ftp_button_loader').hide();
if(data.success) {
humane.info(data.message);
@@ -762,9 +772,10 @@
$('#ftp .tryftp_button_loader').css('visibility','visible');
var $this = $(this);
$this.attr('disabled','disabled');
var options = $('#ftp form').serialize();
var options_addr = $('#ftp_form_stock form:visible').serialize();
$.post("../prod/export/ftp/test/"
, options
, options_addr // no need to include 'ftp_joined' checkboxes to test ftp
, function(data){
$('#ftp .tryftp_button_loader').css('visibility','hidden');
@@ -774,7 +785,7 @@
title : data.success ? '{{ "Success" | trans | e('js') }}' : '{{ "Warning !" | trans | e('js') }}'
};
p4.Dialog.Create(options, 2).setContent(data.message);
p4.Dialog.Create(options, 3).setContent(data.message);
$this.removeAttr('disabled');

View File

@@ -33,7 +33,7 @@
<body class="PNB">
<div id="mainContainer" class="PNB">
{% include 'common/menubar.html.twig' %}
<div class="PNB" id="mainContent" style="top:30px; min-width:900px; overflow-x:auto; overflow-y:auto;">
<div class="PNB" id="mainContent">
{% block content %}{% endblock %}
</div>
</div>

View File

@@ -8,29 +8,11 @@
</li>
{% if module is defined and module != "lightbox" and app['authentication'].isAuthenticated() %}
<li>
{% if module is defined and module == "prod" %}
<a target="_self" href="{{ path('get_client') }}">
<a target="_blank" href="{{ path('prod') }}">
<span class="">
{{ 'admin::monitor: Ancienne version (client)' | trans }}
{{ 'admin::monitor: production' | trans }}
</span>
</a>
{% else %}
{% if app['browser'].isNewGeneration %}
{% if module is defined and module == "client" %}
<a target="_self" href="{{ path('prod') }}">
<span class="">
{{ 'admin::monitor: Nouvelle version (prod)' | trans }}
</span>
</a>
{% else %}
<a target="_blank" href="{{ path('prod') }}">
<span class="">
{{ 'admin::monitor: production' | trans }}
</span>
</a>
{% endif %}
{% endif %}
{% endif %}
</li>
{% if app['browser'].isNewGeneration and app['conf'].get(['registry', 'modules', 'thesaurus']) == true and app['acl'].get(app['authentication'].getUser()).has_access_to_module('thesaurus') %}
@@ -79,7 +61,7 @@
{% if module is defined and module == "prod" %}
{% if app['acl'].get(app['authentication'].getUser()).has_access_to_module('upload') %}
<li>
{% set link = path('upload_form') %}
{% set link = path('upload_html5_form') %}
{% if not app['browser'].supportFileAPI() %}
{% set link = path('upload_flash_form') %}
@@ -95,7 +77,7 @@
{% endif %}
{# MODULE #}
{% if module is defined and (module == "prod" or module == "client") %}
{% if module == "prod" %}
<li>
<a href="#" onclick="getHome('PUBLI');" >
<span>
@@ -122,7 +104,7 @@
<div class="PNB" style="left:auto;overflow:hidden;">
<ol>
{% if app['authentication'].isAuthenticated() and (module is defined and (module == "client" or module == "prod")) %}
{% if app['authentication'].isAuthenticated() and module == "prod" %}
<li id="notification_trigger">
<a href="#" style="font-weight:bold;text-decoration:none;">
<span>
@@ -192,7 +174,7 @@
</div>
</div>
{% if app['authentication'].isAuthenticated() and (module is defined and (module == "client" or module == "prod")) %}
{% if app['authentication'].isAuthenticated() and (module == "client" or module == "prod") %}
<div style="display:none;z-index:30000;" id="notification_box">
{% set notifications = app['events-manager'].get_notifications %}
{% include 'prod/notifications.html.twig' %}