From 4b8d6d0a6573f15505b52a218134ace8eed54e2b Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Tue, 13 Mar 2018 00:05:49 +0100 Subject: [PATCH] now diplaying composition list + new compo link which is working ajaxly --- .../edlp_studio/assets/js/edlp_studio.js | 94 +++++++++++-- .../figli/edlp_studio/edlp_studio.module | 10 +- .../figli/edlp_studio/edlp_studio.routing.yml | 9 ++ .../includes/edlp_compositions_list.inc | 42 ++++++ .../src/Controller/CompositionController.php | 127 ++++++++++++++++++ .../src/Controller/StudioUIController.php | 34 ++++- .../edlp_studio/src/Entity/Composition.php | 8 +- .../templates/edlp-composition-ui.html.twig | 11 +- .../edlp-compositions-list.html.twig | 1 + .../edlptheme/assets/dist/styles/app.min.css | 64 +++++++++ .../custom/edlptheme/assets/styles/app.scss | 74 ++++++++++ .../config/sync/user.role.authenticated.yml | 7 +- sites/default/config/sync/user.role.root.yml | 5 + 13 files changed, 460 insertions(+), 26 deletions(-) create mode 100644 sites/all/modules/figli/edlp_studio/includes/edlp_compositions_list.inc create mode 100644 sites/all/modules/figli/edlp_studio/src/Controller/CompositionController.php create mode 100644 sites/all/modules/figli/edlp_studio/templates/edlp-compositions-list.html.twig diff --git a/sites/all/modules/figli/edlp_studio/assets/js/edlp_studio.js b/sites/all/modules/figli/edlp_studio/assets/js/edlp_studio.js index 3942fdbb7..164835504 100644 --- a/sites/all/modules/figli/edlp_studio/assets/js/edlp_studio.js +++ b/sites/all/modules/figli/edlp_studio/assets/js/edlp_studio.js @@ -5,23 +5,26 @@ function init(){ console.log('Studio Init'); initEvents(); - initAjaxChutier(); + initAjaxLinks(); }; function initEvents(){ $('body') - .on('new-audio-cartel-loaded', initAjaxChutier) - .on('new-content-ajax-loaded', initAjaxChutier); + .on('new-audio-cartel-loaded', initAjaxChutierLinks) + .on('new-content-ajax-loaded', initAjaxLinks); }; - + function initAjaxLinks(){ + initAjaxChutierLinks(); + initAjaxCompoLinks(); + } // ___ _ _ _ _ _ _ _ _ _ // / __| |_ _ _| |_(_)___ _ _ | \| |___ __| |___ | | (_)_ _ | |__ ___ // | (__| ' \ || | _| / -_) '_| | .` / _ \/ _` / -_) | |__| | ' \| / /(_-< // \___|_||_\_,_|\__|_\___|_| |_|\_\___/\__,_\___| |____|_|_||_|_\_\/__/ - function initAjaxChutier(){ - console.log('studio initAjax chutier'); + function initAjaxChutierLinks(){ + console.log('studio initAjaxChutierLinks'); $('.chutier-ajax-link:not(.ajax-enabled)') .addClass('ajax-enabled') .on('click', onClickChutierAjaxLink); @@ -57,13 +60,84 @@ 'target_id':$link.attr('target_id'), }); $link.replaceWith(data.new_link); - initAjaxChutier(); + initAjaxChutierLinks(); + // reload Studio chutier_ui's documents list updateStudioChutier(); - // TODO: reload Studio chutier_ui's documents list }; function onErrorActionToChutier(jqxhr, textStatus, error, $link){ - console.warn('add to chuttier load failed : '+error, jqxhr.responseText); + console.warn('action to chuttier load failed : '+error, jqxhr.responseText); + }; + + // ___ _ _ _ + // / __|___ _ __ _ __ ___ __(_) |_(_)___ _ _ ___ + // | (__/ _ \ ' \| '_ \/ _ (_-< | _| / _ \ ' \(_-< + // \___\___/_|_|_| .__/\___/__/_|\__|_\___/_||_/__/ + // |_| + function initAjaxCompoLinks(){ + console.log('studio initAjaxCompoLinks'); + $('.new-composition-link:not(.ajax-enabled)') + .addClass('ajax-enabled') + .on('click', onClickCompoLink); + }; + + function onClickCompoLink(e){ + e.preventDefault(); + setInputForNewCompoName($(this)); + return false; + }; + + function setInputForNewCompoName($link){ + var $form = $('
').addClass('new-compo-form') + .append($('').attr('type', 'text').attr('placeholder', 'new name')) + .append($('