1 | /*global $, getData */ |
---|
2 | 'use strict'; |
---|
3 | |
---|
4 | $(function() { |
---|
5 | var post_remember_str = post_remember_str || getData('dc_post_remember_str').post_remember_str; |
---|
6 | |
---|
7 | $('#comment-form p:has(input[type=submit][name=preview],button[type=submit][name=preview])'). |
---|
8 | before( |
---|
9 | '<p class="remember"><input type="checkbox" id="c_remember" name="c_remember" /> ' + |
---|
10 | '<label for="c_remember">' + post_remember_str + '</label>' + |
---|
11 | '</p>' |
---|
12 | ); |
---|
13 | |
---|
14 | var cookie = readCookie($.cookie('comment_info')); |
---|
15 | |
---|
16 | if (cookie != false) { |
---|
17 | $('#c_name').val(cookie[0]); |
---|
18 | $('#c_mail').val(cookie[1]); |
---|
19 | $('#c_site').val(cookie[2]); |
---|
20 | $('#c_remember').attr('checked','checked'); |
---|
21 | } |
---|
22 | |
---|
23 | $('#c_remember').click(function() { |
---|
24 | if (this.checked) { |
---|
25 | setCookie(); |
---|
26 | } else { |
---|
27 | dropCookie(); |
---|
28 | } |
---|
29 | }); |
---|
30 | |
---|
31 | $('#c_name').change(function() { |
---|
32 | if ($('#c_remember').get(0).checked) { |
---|
33 | setCookie(); |
---|
34 | } |
---|
35 | }); |
---|
36 | |
---|
37 | $('#c_mail').change(function() { |
---|
38 | if ($('#c_remember').get(0).checked) { |
---|
39 | setCookie(); |
---|
40 | } |
---|
41 | }); |
---|
42 | |
---|
43 | $('#c_site').change(function() { |
---|
44 | if ($('#c_remember').get(0).checked) { |
---|
45 | setCookie(); |
---|
46 | } |
---|
47 | }); |
---|
48 | |
---|
49 | function setCookie() { |
---|
50 | var name = $('#c_name').val(); |
---|
51 | var mail = $('#c_mail').val(); |
---|
52 | var site = $('#c_site').val(); |
---|
53 | var cpath = $('h1 a').attr('href'); |
---|
54 | if (!cpath) { |
---|
55 | cpath = '/'; |
---|
56 | } else { |
---|
57 | cpath = cpath.replace(/.*:\/\/[^\/]*([^?]*).*/g,'$1'); |
---|
58 | } |
---|
59 | |
---|
60 | $.cookie('comment_info', name + '\n' + mail + '\n' + site, {expires: 60, path: cpath}); |
---|
61 | } |
---|
62 | |
---|
63 | function dropCookie() { |
---|
64 | $.cookie('comment_info','',{expires: -30, path: '/'}); |
---|
65 | } |
---|
66 | |
---|
67 | function readCookie(c) { |
---|
68 | if (!c) { |
---|
69 | return false; |
---|
70 | } |
---|
71 | |
---|
72 | var s = c.split('\n'); |
---|
73 | |
---|
74 | if (s.length != 3) { |
---|
75 | dropCookie(); |
---|
76 | return false; |
---|
77 | } |
---|
78 | |
---|
79 | return s; |
---|
80 | } |
---|
81 | }); |
---|