diff --git a/lib/Alchemy/Phrasea/Controller/Prod/Bridge.php b/lib/Alchemy/Phrasea/Controller/Prod/Bridge.php index bbac9e3c31..6da6cd7087 100644 --- a/lib/Alchemy/Phrasea/Controller/Prod/Bridge.php +++ b/lib/Alchemy/Phrasea/Controller/Prod/Bridge.php @@ -32,7 +32,8 @@ class Bridge implements ControllerProviderInterface $app['bridge.controller'] = $this; $controllers - ->post('/manager/', 'bridge.controller:doPostManager'); + ->post('/manager/', 'bridge.controller:doPostManager') + ->bind('prod_bridge_manager'); $controllers ->get('/login/{api_name}/', 'bridge.controller:doGetLogin') diff --git a/templates/web/prod/actions/Bridge/callback.html.twig b/templates/web/prod/actions/Bridge/callback.html.twig index 186522a2b5..9b349911e7 100644 --- a/templates/web/prod/actions/Bridge/callback.html.twig +++ b/templates/web/prod/actions/Bridge/callback.html.twig @@ -6,7 +6,7 @@ {% if error_message is empty %} diff --git a/templates/web/prod/actions/Bridge/index.html.twig b/templates/web/prod/actions/Bridge/index.html.twig index 0bd92b6ea5..58b5407013 100644 --- a/templates/web/prod/actions/Bridge/index.html.twig +++ b/templates/web/prod/actions/Bridge/index.html.twig @@ -1,7 +1,7 @@ {% import "common/thumbnail.html.twig" as thumb %} -
+
{% for id, record in route.get_elements %} @@ -86,6 +86,7 @@ $(function() { var pub_tabs = $("#pub_tabs"); var container = $('#dialog_publicator'); + var managerUrl = container.data("url"); function popme(url) { var newwindow=window.open(url,'logger','height=500,width=800'); @@ -157,7 +158,7 @@ $(function() { success: function(datas){ if(datas.success) { confirmBox.Close(); - publicator_reload_publicator(); + publicator_reload_publicator(managerUrl); } else { confirmBox.Close(); var alertBox = p4.Dialog.Create({ diff --git a/templates/web/prod/index.html.twig b/templates/web/prod/index.html.twig index 129a44bd80..1423cfb941 100644 --- a/templates/web/prod/index.html.twig +++ b/templates/web/prod/index.html.twig @@ -603,7 +603,7 @@
  • - + {% trans 'action : bridge' %} diff --git a/www/skins/prod/jquery.main-prod.js b/www/skins/prod/jquery.main-prod.js index 3077e9ee74..3103aabf31 100644 --- a/www/skins/prod/jquery.main-prod.js +++ b/www/skins/prod/jquery.main-prod.js @@ -1665,27 +1665,28 @@ function activeIcons() { } }); - $('.TOOL_bridge_btn').live('click', function () { - + $('.TOOL_bridge_btn').live('click', function (e) { + e.preventDefault(); + var $button = $(this); var datas = {}; - if ($(this).hasClass('results_window')) { + if ($button.hasClass('results_window')) { if (p4.Results.Selection.length() > 0) datas.lst = p4.Results.Selection.serialize(); } else { - if ($(this).hasClass('basket_window')) { + if ($button.hasClass('basket_window')) { if (p4.WorkZone.Selection.length() > 0) datas.lst = p4.WorkZone.Selection.serialize(); else datas.ssel = $('.SSTT.active').attr('id').split('_').slice(1, 2).pop(); } else { - if ($(this).hasClass('basket_element')) { + if ($button.hasClass('basket_element')) { datas.ssel = $('.SSTT.active').attr('id').split('_').slice(1, 2).pop(); } else { - if ($(this).hasClass('story_window')) { + if ($button.hasClass('story_window')) { if (p4.WorkZone.Selection.length() > 0) { datas.lst = p4.WorkZone.Selection.serialize(); } @@ -1698,7 +1699,7 @@ function activeIcons() { } if (datas.ssel || datas.lst || datas.story) { - init_publicator(datas); + init_publicator($button.attr("href"), datas); } else { alert(language.nodocselected); diff --git a/www/skins/prod/publicator.js b/www/skins/prod/publicator.js index bfd162c2fb..37ef801004 100644 --- a/www/skins/prod/publicator.js +++ b/www/skins/prod/publicator.js @@ -1,15 +1,15 @@ -function publicator_reload_publicator() { +function publicator_reload_publicator(url) { var options = $('#dialog_publicator form[name="current_datas"]').serializeArray(); var dialog = p4.Dialog.get(1); - dialog.load('/prod/bridge/manager/', 'POST', options); + dialog.load(url, 'POST', options); } -function init_publicator(datas) { +function init_publicator(url, datas) { var dialog = p4.Dialog.Create({ size: 'Full', title: 'Bridge', loading: false }); - dialog.load('/prod/bridge/manager/', 'POST', datas); + dialog.load(url, 'POST', datas); }