1*4882a593Smuzhiyun"use strict"; 2*4882a593Smuzhiyun 3*4882a593Smuzhiyunfunction layerBtnsInit() { 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun /* Remove any current bindings to avoid duplicated binds */ 6*4882a593Smuzhiyun $(".layerbtn").unbind('click'); 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun $(".layerbtn").click(function (){ 9*4882a593Smuzhiyun var layerObj = $(this).data("layer"); 10*4882a593Smuzhiyun var add = ($(this).data('directive') === "add"); 11*4882a593Smuzhiyun var thisBtn = $(this); 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun libtoaster.addRmLayer(layerObj, add, function (layerDepsList){ 14*4882a593Smuzhiyun libtoaster.showChangeNotification(libtoaster.makeLayerAddRmAlertMsg(layerObj, layerDepsList, add)); 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun /* In-cell notification */ 17*4882a593Smuzhiyun var notification = $('<div id="temp-inline-notify" style="display: none; font-size: 11px; line-height: 1.3;" class="tooltip-inner"></div>'); 18*4882a593Smuzhiyun thisBtn.parent().append(notification); 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun if (add){ 21*4882a593Smuzhiyun if (layerDepsList.length > 0) 22*4882a593Smuzhiyun notification.text(String(layerDepsList.length + 1) + " layers added"); 23*4882a593Smuzhiyun else 24*4882a593Smuzhiyun notification.text("1 layer added"); 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun var layerBtnsFadeOut = $(); 27*4882a593Smuzhiyun var layerExistsBtnFadeIn = $(); 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun layerBtnsFadeOut = layerBtnsFadeOut.add(".layer-add-" + layerObj.id); 30*4882a593Smuzhiyun layerExistsBtnFadeIn = layerExistsBtnFadeIn.add(".layer-exists-" + layerObj.id); 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun for (var i in layerDepsList){ 33*4882a593Smuzhiyun layerBtnsFadeOut = layerBtnsFadeOut.add(".layer-add-" + layerDepsList[i].id); 34*4882a593Smuzhiyun layerExistsBtnFadeIn = layerExistsBtnFadeIn.add(".layer-exists-" + layerDepsList[i].id); 35*4882a593Smuzhiyun } 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun layerBtnsFadeOut.fadeOut().promise().done(function(){ 38*4882a593Smuzhiyun notification.fadeIn().delay(500).fadeOut(function(){ 39*4882a593Smuzhiyun /* Fade in the buttons */ 40*4882a593Smuzhiyun layerExistsBtnFadeIn.fadeIn(); 41*4882a593Smuzhiyun notification.remove(); 42*4882a593Smuzhiyun }); 43*4882a593Smuzhiyun }); 44*4882a593Smuzhiyun } else { 45*4882a593Smuzhiyun notification.text("1 layer removed"); 46*4882a593Smuzhiyun /* Deleting a layer we only hanlde the one button */ 47*4882a593Smuzhiyun thisBtn.fadeOut(function(){ 48*4882a593Smuzhiyun notification.fadeIn().delay(500).fadeOut(function(){ 49*4882a593Smuzhiyun $(".layer-add-" + layerObj.id).fadeIn(); 50*4882a593Smuzhiyun notification.remove(); 51*4882a593Smuzhiyun }); 52*4882a593Smuzhiyun }); 53*4882a593Smuzhiyun } 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun }); 56*4882a593Smuzhiyun }); 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun $("td .build-recipe-btn").unbind('click'); 59*4882a593Smuzhiyun $("td .build-recipe-btn").click(function(e){ 60*4882a593Smuzhiyun e.preventDefault(); 61*4882a593Smuzhiyun var recipe = $(this).data('recipe-name'); 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun libtoaster.startABuild(null, recipe, 64*4882a593Smuzhiyun function(){ 65*4882a593Smuzhiyun /* Success */ 66*4882a593Smuzhiyun window.location.replace(libtoaster.ctx.projectBuildsUrl); 67*4882a593Smuzhiyun }); 68*4882a593Smuzhiyun }); 69*4882a593Smuzhiyun 70*4882a593Smuzhiyun $("td .set-default-recipe-btn").unbind('click'); 71*4882a593Smuzhiyun $("td .set-default-recipe-btn").click(function(e){ 72*4882a593Smuzhiyun e.preventDefault(); 73*4882a593Smuzhiyun var recipe = $(this).data('recipe-name'); 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun libtoaster.setDefaultImage(null, recipe, 76*4882a593Smuzhiyun function(){ 77*4882a593Smuzhiyun /* Success */ 78*4882a593Smuzhiyun window.location.replace(libtoaster.ctx.projectSpecificPageUrl); 79*4882a593Smuzhiyun }); 80*4882a593Smuzhiyun }); 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun $(".customise-btn").unbind('click'); 84*4882a593Smuzhiyun $(".customise-btn").click(function(e){ 85*4882a593Smuzhiyun e.preventDefault(); 86*4882a593Smuzhiyun var imgCustomModal = $("#new-custom-image-modal"); 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun if (imgCustomModal.length == 0) 89*4882a593Smuzhiyun throw("Modal new-custom-image not found"); 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun var recipe = {id: $(this).data('recipe'), name: null} 92*4882a593Smuzhiyun newCustomImageModalSetRecipes([recipe]); 93*4882a593Smuzhiyun imgCustomModal.modal('show'); 94*4882a593Smuzhiyun }); 95*4882a593Smuzhiyun} 96