Subversion Repositories My Stuff

Rev

Rev 15 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
14 kardasa 1
/*#######################################################################
2
# This script is distributed in the hope that it will be useful,
3
# but WITHOUT ANY WARRANTY; without even the implied warranty of
4
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
5
# GNU General Public License for more details.
6
# Author: Andrzej Kardas
7
# License: GPLv3
8
# The full version of the licencse can be obtainted by visiting:
9
# http://www.gnu.org/licenses/gpl.html
10
#######################################################################*/
11
$(document).ready(function(){
12
        checkBoxChange();
13
        toggleLinkClick();
14
        checkboxChacked();
15
 
16
        var $options = {
17
                        success: function(data) {
18
                var response = $(data).find('#comments');
19
                $('#comments').replaceWith(response);
20
                $('#comment_form').find('form:first').validator().ajaxForm($options);
21
                checkboxChacked();
22
                checkBoxChange();
23
                toggleLinkClickSlide();
24
                $('#comment_form > #comments-indicator').hide();
25
                        },
26
                        beforeSubmit: function() {
27
                                $('#comment_form > #comments-indicator').show();
28
                        }
29
                };
30
            $('#comment_form').find('form:first').validator().ajaxForm($options);
31
});
32
 
33
function checkboxChacked(){
34
        var form = $('#comment_form').find('form:first');
35
        var checkbox = form.find(':checkbox:first');
36
        var email = form.find(':email');
37
        if (checkbox.is(':checked')){
38
                email.attr("required", "required");
39
                email.attr("disabled", false);
40
        }else{
41
                email.attr("required", false);
42
                email.attr("required", true);
43
        }
44
}
45
 
46
function toggleLinkClickSlide(){
47
        var form = $('#comment_form').find('form:first');
48
        var toggle_link = $('#comments').find('a.toggle_link:first');
49
        var content = $('#comment_form');
50
        toggle_link.click(function(){
51
                if (toggle_link.is('.toggle_close')){
52
                        toggle_link.removeClass('toggle_close');
53
                        toggle_link.addClass('toggle_open');
54
                 } else if (toggle_link.is('.toggle_open')){
55
                        toggle_link.removeClass('toggle_open');
56
                        toggle_link.addClass('toggle_close');
57
                 }
58
                content.slideToggle('slow');
59
                var api = form.data("validator");
60
                api.reset();
61
                return false;
62
        });
63
}
64
 
65
function toggleLinkClick(){
66
        var form = $('#comment_form').find('form:first');
67
        var toggle_link = $('#comments').find('a.toggle_link:first');
68
        toggle_link.click(function(){
69
                var api = form.data("validator");
70
                api.reset();
71
                return false;
72
        });
73
}
74
 
75
function checkBoxChange(){
76
        var form = $('#comment_form').find('form:first');
77
        var email = form.find(':email');
78
        $('#comment_form').find(':checkbox:first').change(function(){
79
                if ($(this).is(':checked')) {
80
                        email.attr("required", "required");
81
                        email.attr("disabled", false);
82
                }else{
83
                        email.attr("required", false);
84
                        email.val("");
85
                        email.attr("disabled", true);
86
                        var api = form.data("validator");
87
                        api.reset(email);
88
                }      
89
        });
90
}