|
@@ -787,41 +787,109 @@ $(document).ready(function(){
|
787
|
787
|
// Si le tag ne semble pas connu en base
|
788
|
788
|
if (!data.same_found)
|
789
|
789
|
{
|
|
790
|
+ // Cette variable nous permettra de stocker le lien nouveau tag
|
|
791
|
+ link_add_tag = null;
|
|
792
|
+
|
790
|
793
|
li_tag =
|
791
|
|
- $('<li>').append(
|
|
794
|
+ $('<li>').addClass('new').append(
|
792
|
795
|
$('<a>').attr('href','#new#'+$.trim(input.val()))
|
793
|
796
|
// qui réagit quand on clique dessus
|
794
|
797
|
.click(function(e){
|
795
|
|
- // On récupère le nom du tag
|
796
|
|
- name = $(this).attr('href').substr(1,$(this).attr('href').length);
|
797
|
|
- name = name.substr(strpos(name, '#')+1, name.length);
|
798
|
798
|
|
799
|
|
- $(this).parent('li').parent('ul').parent('div').find('img.tag_loader').show();
|
|
799
|
+ // Effet fade-in du fond opaque
|
|
800
|
+ $('body').append($('<div>').attr('id', 'fade'));
|
|
801
|
+ //Apparition du fond - .css({'filter' : 'alpha(opacity=80)'}) pour corriger les bogues de IE
|
|
802
|
+ $('#fade').css({'filter' : 'alpha(opacity=80)'}).fadeIn();
|
|
803
|
+
|
|
804
|
+ // On met le lien cliqué dans la variabke prévu
|
|
805
|
+ link_add_tag = $(this);
|
|
806
|
+
|
|
807
|
+ // En premier lieux on fait apparaître la fenêtre de confirmation
|
|
808
|
+ popup = $('<div>')
|
|
809
|
+ .attr('id', 'add_tag')
|
|
810
|
+ .addClass('popin_block')
|
|
811
|
+ .css('width', '400px')
|
|
812
|
+ //.append($('<h2>').append(string_tag_add_title))
|
|
813
|
+ .append($('<div>').addClass('tag')
|
|
814
|
+ .append($('<ul>')
|
|
815
|
+ .append($('<li>').addClass('button')
|
|
816
|
+ .append($(this).text()))))
|
|
817
|
+ .append($('<p>').append(string_tag_add_text))
|
|
818
|
+ .append($('<p>').append(string_tag_add_argument))
|
|
819
|
+ .append($('<textarea>').attr('name', 'argument'))
|
|
820
|
+ .append($('<div>').addClass('inputs')
|
|
821
|
+ .append($('<input>')
|
|
822
|
+ .attr('type', 'button')
|
|
823
|
+ .attr('value', string_tag_add_inputs_cancel)
|
|
824
|
+ .addClass('button')
|
|
825
|
+ .click(function(){
|
|
826
|
+ $('#fade').fadeOut(1000, function(){$('#fade').remove();});
|
|
827
|
+ $('#add_tag').remove();
|
|
828
|
+
|
|
829
|
+ return false;
|
|
830
|
+ })
|
|
831
|
+ )
|
|
832
|
+ .append($('<input>')
|
|
833
|
+ .attr('type', 'button')
|
|
834
|
+ .attr('value', string_tag_add_inputs_submit)
|
|
835
|
+ .addClass('button')
|
|
836
|
+ .click(function(){
|
|
837
|
+
|
|
838
|
+ var arguments = $('#add_tag textarea').val();
|
|
839
|
+
|
|
840
|
+ $('#fade').fadeOut(400, function(){$('#fade').remove();});
|
|
841
|
+ $('#add_tag').remove();
|
|
842
|
+
|
|
843
|
+ // On récupère le nom du tag
|
|
844
|
+ name = link_add_tag.attr('href').substr(1,link_add_tag.attr('href').length);
|
|
845
|
+ name = name.substr(strpos(name, '#')+1, name.length);
|
800
|
846
|
|
801
|
|
- // La on fait l'ajout en base en tant que nouveau tag
|
802
|
|
- $.getJSON(url_add_tag+'/'+name, function(response){
|
803
|
|
-
|
804
|
|
- if (response.status == 'mustbeconnected')
|
805
|
|
- {
|
806
|
|
- $(location).attr('href', url_index);
|
807
|
|
- }
|
808
|
|
-
|
809
|
|
- tag_id = response.tag_id;
|
810
|
|
- tag_name = response.tag_name;
|
811
|
|
-
|
812
|
|
- $('input#tags_selected_tag_'+form_name).val(tag_id);
|
813
|
|
- inputTag.val(tag_name);
|
814
|
|
- // Et on execute l'évènement selectTag de l'input
|
815
|
|
- inputTag.trigger("selectTag");
|
816
|
|
- // On cache la liste puisque le choix vient d'être fait
|
817
|
|
- divtags.hide();
|
818
|
|
- inputTag.val(tag_text_help);
|
819
|
|
-
|
820
|
|
- $(this).parent('li').parent('ul').parent('div').find('img.tag_loader').hide();
|
821
|
|
- });
|
|
847
|
+ link_add_tag.parent('li').parent('ul').parent('div').find('img.tag_loader').show();
|
822
|
848
|
|
|
849
|
+ // La on fait l'ajout en base en tant que nouveau tag
|
|
850
|
+ $.getJSON(url_add_tag+'/'+name+'/'+arguments, function(response){
|
|
851
|
+
|
|
852
|
+ if (response.status == 'mustbeconnected')
|
|
853
|
+ {
|
|
854
|
+ $(location).attr('href', url_index);
|
|
855
|
+ }
|
|
856
|
+
|
|
857
|
+ tag_id = response.tag_id;
|
|
858
|
+ tag_name = response.tag_name;
|
|
859
|
+
|
|
860
|
+ $('input#tags_selected_tag_'+form_name).val(tag_id);
|
|
861
|
+ inputTag.val(tag_name);
|
|
862
|
+ // Et on execute l'évènement selectTag de l'input
|
|
863
|
+ inputTag.trigger("selectTag");
|
|
864
|
+ // On cache la liste puisque le choix vient d'être fait
|
|
865
|
+ divtags.hide();
|
|
866
|
+ inputTag.val(tag_text_help);
|
|
867
|
+
|
|
868
|
+ link_add_tag.parent('li').parent('ul').parent('div').find('img.tag_loader').hide();
|
|
869
|
+ });
|
|
870
|
+
|
|
871
|
+ return false;
|
|
872
|
+ })
|
|
873
|
+ )
|
|
874
|
+ )
|
|
875
|
+ ;
|
|
876
|
+
|
|
877
|
+ // Il faut ajouter le popup au dom avant de le positionner en css
|
|
878
|
+ // Sinon la valeur height n'est pas encore calculable
|
|
879
|
+ $('body').prepend(popup);
|
|
880
|
+
|
|
881
|
+ //Récupération du margin, qui permettra de centrer la fenêtre - on ajuste de 80px en conformité avec le CSS
|
|
882
|
+ var popMargTop = (popup.height() + 50) / 2;
|
|
883
|
+ var popMargLeft = (popup.width() + 50) / 2;
|
|
884
|
+
|
|
885
|
+ //On affecte le margin
|
|
886
|
+ $(popup).css({
|
|
887
|
+ 'margin-top' : -popMargTop,
|
|
888
|
+ 'margin-left' : -popMargLeft
|
|
889
|
+ });
|
823
|
890
|
|
824
|
891
|
return false;
|
|
892
|
+
|
825
|
893
|
})
|
826
|
894
|
.append($.trim(input.val()))
|
827
|
895
|
);
|