Display calendar in timeline date fields
[astakos] / snf-astakos-app / astakos / im / static / im / js / common.js
1 function setContainerMinHeight( applicableDiv){\r
2         \r
3     if ( $(applicableDiv).length > 0 ) {\r
4         //var h = $('.header').height(); div.header is not found \r
5         var f = $('.footer').height();\r
6         var w = $(window).height();\r
7         var pTop = parseInt (($(applicableDiv).css('padding-top').replace("px", "")) );\r
8         var pBottom = parseInt (($(applicableDiv).css('padding-bottom').replace("px", "")));\r
9 \r
10         var c = w - ( f+pTop+pBottom+36);//36 is header's height.\r
11         $(applicableDiv).css('min-height', c);\r
12     }    \r
13 \r
14 }\r
15 \r
16 \r
17 //equal heights\r
18  \r
19 (function($) {\r
20         $.fn.equalHeights = function(minHeight, maxHeight) {\r
21                 tallest = (minHeight) ? minHeight : 0;\r
22                 this.each(function() {\r
23                         if($(this).height() > tallest) {\r
24                                 tallest = $(this).height();\r
25                         }\r
26                 });\r
27                 if((maxHeight) && tallest > maxHeight) tallest = maxHeight;\r
28                 return this.each(function() {\r
29                         $(this).height(tallest);\r
30                 });\r
31         }\r
32 })(jQuery);\r
33 \r
34 \r
35 \r
36 // fix for iPhone - iPad orientation bug \r
37 var metas = document.getElementsByTagName('meta');\r
38 function resetViewport() {\r
39     var i;\r
40     if (navigator.userAgent.match(/iPhone/i)) {\r
41                 for (i=0; i<metas.length; i++) {\r
42                 if (metas[i].name == "viewport") {\r
43                         metas[i].content = "width=device-width, minimum-scale=1.0, maximum-scale=1.0";\r
44                 }\r
45                 }\r
46         }\r
47 }\r
48 resetViewport();\r
49     \r
50 window.onorientationchange = function() {\r
51     resetViewport();\r
52 };\r
53     \r
54 function gestureStart() {\r
55   for (i=0; i<metas.length; i++) {\r
56     if (metas[i].name == "viewport") {\r
57       metas[i].content = "width=device-width, minimum-scale=0.25, maximum-scale=1.6";\r
58     }\r
59   }\r
60 }\r
61 \r
62 if (navigator.userAgent.match(/iPhone/i)) {\r
63         document.addEventListener("gesturestart", gestureStart, false);\r
64 }\r
65 //end of fix\r
66 \r
67 $(document).ready(function() {\r
68         \r
69          \r
70     setContainerMinHeight('.container .wrapper');\r
71     \r
72         \r
73     $('.show-extra').click(function(e) {\r
74         e.preventDefault();\r
75         $(this).parents('.bg-wrap').find('.extra').slideToggle(600);\r
76     });\r
77     $('.hide-extra').click(function(e) {\r
78         e.preventDefault();\r
79         $(this).parents('.bg-wrap').find('.extra').slideUp(600);\r
80     });\r
81     \r
82     $('.box-more p').click(function(e) {\r
83         $(this).siblings('.clearfix').toggle('slow');\r
84         $(this).parents('.box-more').toggleClass('border');\r
85     });\r
86         \r
87         var fixTopMessageHeight = function() {\r
88                 var topMargin = parseInt($('.mainlogo img').height())+parseInt($('.top-msg').css('marginBottom'));\r
89                 $('.mainlogo').css('marginTop','-'+topMargin+'px');\r
90         }\r
91         \r
92         if ($('.mainlogo img').length > 0) {\r
93                 $('.mainlogo img').bind('load', fixTopMessageHeight)\r
94         } else {\r
95                 fixTopMessageHeight();\r
96         }\r
97         \r
98         $('.top-msg a.close').click(function(e) {\r
99                 e.preventDefault();\r
100         $('.top-msg').animate({\r
101             paddingTop:'0',\r
102             paddingBottom:'0',\r
103             height:'0'\r
104         }, 1000, function (){\r
105              $('.top-msg').removeClass('active')\r
106         });\r
107         $('.mainlogo').animate({\r
108             marginTop:'0'\r
109         }, 1000, function (){\r
110              //todo\r
111         });\r
112     }); \r
113     \r
114     \r
115      \r
116         //$('select').dropkick();\r
117  \r
118     \r
119     $('.top-msg .success').parents('.top-msg').addClass('success');\r
120     $('.top-msg .error').parents('.top-msg').addClass('error');\r
121     $('.top-msg .warning').parents('.top-msg').addClass('warning');\r
122     $('.top-msg .info').parents('.top-msg').addClass('info');\r
123     \r
124     // clouds homepage animation\r
125     $('#animation a').hover(\r
126       function () {\r
127         \r
128         $(this).animate({\r
129            top: '+=-10'   \r
130            }, 600, function() {\r
131                 if ($(this).find('img').attr('src').indexOf("_top") == -1) {\r
132                         var src = $(this).find('img').attr('src').replace('.png', '_top.png')\r
133                         $(this).find('img').attr("src", src);\r
134                 }\r
135 \r
136                 });\r
137         $(this).siblings('p').find('img').animate({\r
138           width: '60%'       \r
139         }, 600);\r
140       }, \r
141       function () {\r
142 \r
143         $(this).animate({top: '0'}, 600, function() {\r
144                 var src = $(this).find('img').attr('src').replace('_top.png', '.png')\r
145                 $(this).find('img').attr("src", src);\r
146                 });\r
147         $(this).siblings('p').find('img').animate({\r
148           width: '65%'       \r
149         },600);\r
150       }\r
151     );\r
152     \r
153     \r
154    \r
155     \r
156     \r
157     if ($('.widjets'.length > 0)) {\r
158                 $('.widjets li div').equalHeights();\r
159         }\r
160     \r
161     $(function() {\r
162         if($("#id_issue_date").length > 0 ){\r
163                         $( "#id_issue_date" ).datepicker({\r
164                                 defaultDate: "+0", \r
165                                 dateFormat: "yy-mm-dd",\r
166                                 onSelect: function( selectedDate ) {\r
167                                         $( "#id_expiration_date" ).datepicker( "option", "minDate", selectedDate );\r
168                                 }\r
169                         });\r
170                         $( "#id_expiration_date" ).datepicker({\r
171                                 defaultDate: "+1w", \r
172                                 dateFormat: "yy-mm-dd",\r
173                                 onSelect: function( selectedDate ) {\r
174                                         $( "#id_issue_date" ).datepicker( "option", "maxDate", selectedDate );\r
175                                 }\r
176                         });\r
177                 }\r
178                 $( "#id_start_date" ).datepicker({\r
179             dateFormat: "yy-mm-dd",\r
180             onSelect: function( selectedDate ) {\r
181                 $( "#id_start_date" ).datepicker( "option", "maxDate", selectedDate );\r
182             }\r
183         });\r
184         \r
185         $( "#id_end_date" ).datepicker({\r
186             dateFormat: "yy-mm-dd",\r
187             onSelect: function( selectedDate ) {\r
188                 $( "#id_end_date" ).datepicker( "option", "maxDate", selectedDate );\r
189             }\r
190         });\r
191         });\r
192         \r
193         \r
194         $(".table_sorting").tablesorter(); \r
195         \r
196         $('table .more-info').click(function(e){\r
197                 e.preventDefault();\r
198                 $(this).toggleClass('open');\r
199                 $(this).parents('tr').next('tr').toggle();\r
200                  \r
201         });\r
202         \r
203         $('.projects .details .edit').click( function(e){\r
204                 e.preventDefault();\r
205                 $(this).parents('.details').children('.data').hide();\r
206                 $(this).parents('.details').children('.editable').show();\r
207                 $(this).hide();\r
208         })\r
209         \r
210 });\r
211 \r
212 $(window).resize(function() {\r
213     \r
214    setContainerMinHeight('.container .wrapper');\r
215    if ($('.widjets').length > 0) {\r
216                 $('.widjets  li div').equalHeights();\r
217         }\r
218 \r
219 });