source: trunk/admin/themes/default/template/include/add_album.inc.tpl @ 25280

Last change on this file since 25280 was 25280, checked in by mistic100, 10 years ago

initialization issue in add_album.inc.tpl if there is no albums

File size: 2.8 KB
Line 
1{footer_script}{literal}
2jQuery(document).ready(function(){
3  var $albumSelect = jQuery("#albumSelect");
4 
5  jQuery(".addAlbumOpen").colorbox({
6    inline: true,
7    href: "#addAlbumForm",
8    onComplete: function() {
9      jQuery("input[name=category_name]").focus();
10     
11      jQuery("#category_parent").html('<option value="0">------------</option>')
12        .append($albumSelect.html())
13        .val($albumSelect.val() || 0);
14    }
15  });
16
17  jQuery("#addAlbumForm form").submit(function() {
18      jQuery("#categoryNameError").text("");
19     
20      var parent_id = jQuery("select[name=category_parent] option:selected").val(),
21          name = jQuery("input[name=category_name]").val();
22
23      jQuery.ajax({
24        url: "ws.php",
25        dataType: 'json',
26        data: {
27          format: 'json',
28          method: 'pwg.categories.add',
29          parent: parent_id,
30          name: name
31        },
32        beforeSend: function() {
33          jQuery("#albumCreationLoading").show();
34        },
35        success: function(data) {
36          jQuery("#albumCreationLoading").hide();
37          jQuery(".addAlbumOpen").colorbox.close();
38
39          var newAlbum = data.result.id,
40              newAlbum_name = '';
41             
42          if (parent_id!=0) {
43            newAlbum_name = jQuery("#category_parent").find("option[value="+ parent_id +"]").text() +' / ';
44          }
45          newAlbum_name+= name;
46         
47          var new_option = jQuery("<option/>")
48              .attr("value", newAlbum)
49              .attr("selected", "selected")
50              .text(newAlbum_name);
51             
52          $albumSelect.find("option").removeAttr('selected');
53         
54          if (parent_id==0) {
55            $albumSelect.prepend(new_option);
56          }
57          else {
58            $albumSelect.find("option[value="+ parent_id +"]").after(new_option);
59          }
60
61          jQuery("#addAlbumForm form input[name=category_name]").val('');
62          jQuery("#albumSelection").show();
63
64          return true;
65        },
66        error: function(XMLHttpRequest, textStatus, errorThrows) {
67            jQuery("#albumCreationLoading").hide();
68            jQuery("#categoryNameError").text(errorThrows).css("color", "red");
69        }
70      });
71
72      return false;
73  });
74});
75{/literal}{/footer_script}
76
77<div style="display:none">
78  <div id="addAlbumForm" style="text-align:left;padding:1em;">
79    <form>
80      {'Parent album'|@translate}<br>
81      <select id="category_parent" name="category_parent">
82      </select>
83      <br><br>
84     
85      {'Album name'|@translate}<br>
86      <input name="category_name" type="text" maxlength="255"> <span id="categoryNameError"></span>
87      <br><br><br>
88     
89      <input type="submit" value="{'Create'|@translate}">
90      <span id="albumCreationLoading" style="display:none"><img src="themes/default/images/ajax-loader-small.gif"></span>
91    </form>
92  </div>
93</div>
Note: See TracBrowser for help on using the repository browser.