Statistics
| Branch: | Tag: | Revision:

root / snf-astakos-app / astakos / im / static / im / js / common.js @ a93f2d64

History | View | Annotate | Download (9.9 kB)

1 0c887794 Olga Brani
function setContainerMinHeight( applicableDiv){
2 0c887794 Olga Brani
        
3 0c887794 Olga Brani
    if ( $(applicableDiv).length > 0 ) {
4 0c887794 Olga Brani
        //var h = $('.header').height(); div.header is not found 
5 0c887794 Olga Brani
        var f = $('.footer').height();
6 0c887794 Olga Brani
        var w = $(window).height();
7 0c887794 Olga Brani
        var pTop = parseInt (($(applicableDiv).css('padding-top').replace("px", "")) );
8 0c887794 Olga Brani
        var pBottom = parseInt (($(applicableDiv).css('padding-bottom').replace("px", "")));
9 0f4a8a68 Olga Brani
10 0c887794 Olga Brani
        var c = w - ( f+pTop+pBottom+36);//36 is header's height.
11 0c887794 Olga Brani
        $(applicableDiv).css('min-height', c);
12 0c887794 Olga Brani
    }    
13 0f4a8a68 Olga Brani
14 0f4a8a68 Olga Brani
}
15 0f4a8a68 Olga Brani
16 b88b1976 Olga Brani
function tableFixedCols(table, firstColWidth ){
17 b88b1976 Olga Brani
        ColsNum = $('table th').size();
18 b88b1976 Olga Brani
        var ColWidth = parseFloat( (100 - firstColWidth)/ColsNum ).toFixed(0);
19 b88b1976 Olga Brani
        var ColWidthPercentage = ColWidth+'%';
20 b88b1976 Olga Brani
        var firstColWidthPercentage = firstColWidth+'%';
21 b88b1976 Olga Brani
        $('table th, table td').attr('width',ColWidthPercentage ); 
22 b88b1976 Olga Brani
        $('table tr td:first-child, table tr th:first-child').attr('width',firstColWidthPercentage );
23 b88b1976 Olga Brani
        
24 b88b1976 Olga Brani
}
25 b88b1976 Olga Brani
26 003d8fcf Olga Brani
function addClassHover(hoverEl, applicableEl){ 
27 003d8fcf Olga Brani
        $(hoverEl).hover(
28 003d8fcf Olga Brani
      function () {
29 003d8fcf Olga Brani
               
30 003d8fcf Olga Brani
         $(applicableEl).addClass('red-border')
31 003d8fcf Olga Brani
      }, 
32 003d8fcf Olga Brani
      function () {
33 003d8fcf Olga Brani
              $(applicableEl).removeClass('red-border');
34 003d8fcf Olga Brani
    
35 003d8fcf Olga Brani
    });
36 003d8fcf Olga Brani
}
37 49a1289d Olga Brani
//equal heights
38 49a1289d Olga Brani
 
39 49a1289d Olga Brani
(function($) {
40 49a1289d Olga Brani
        $.fn.equalHeights = function(minHeight, maxHeight) {
41 49a1289d Olga Brani
                tallest = (minHeight) ? minHeight : 0;
42 49a1289d Olga Brani
                this.each(function() {
43 49a1289d Olga Brani
                        if($(this).height() > tallest) {
44 49a1289d Olga Brani
                                tallest = $(this).height();
45 49a1289d Olga Brani
                        }
46 49a1289d Olga Brani
                });
47 49a1289d Olga Brani
                if((maxHeight) && tallest > maxHeight) tallest = maxHeight;
48 49a1289d Olga Brani
                return this.each(function() {
49 49a1289d Olga Brani
                        $(this).height(tallest);
50 49a1289d Olga Brani
                });
51 49a1289d Olga Brani
        }
52 49a1289d Olga Brani
})(jQuery);
53 49a1289d Olga Brani
54 49a1289d Olga Brani
55 49a1289d Olga Brani
56 d9484003 Olga Brani
// fix for iPhone - iPad orientation bug 
57 d9484003 Olga Brani
var metas = document.getElementsByTagName('meta');
58 d9484003 Olga Brani
function resetViewport() {
59 d9484003 Olga Brani
    var i;
60 d9484003 Olga Brani
    if (navigator.userAgent.match(/iPhone/i)) {
61 d9484003 Olga Brani
                  for (i=0; i<metas.length; i++) {
62 d9484003 Olga Brani
                    if (metas[i].name == "viewport") {
63 d9484003 Olga Brani
                              metas[i].content = "width=device-width, minimum-scale=1.0, maximum-scale=1.0";
64 d9484003 Olga Brani
                    }
65 d9484003 Olga Brani
                  }
66 d9484003 Olga Brani
          }
67 d9484003 Olga Brani
}
68 d9484003 Olga Brani
resetViewport();
69 d9484003 Olga Brani
    
70 d9484003 Olga Brani
window.onorientationchange = function() {
71 d9484003 Olga Brani
    resetViewport();
72 d9484003 Olga Brani
};
73 d9484003 Olga Brani
    
74 d9484003 Olga Brani
function gestureStart() {
75 d9484003 Olga Brani
  for (i=0; i<metas.length; i++) {
76 d9484003 Olga Brani
    if (metas[i].name == "viewport") {
77 d9484003 Olga Brani
      metas[i].content = "width=device-width, minimum-scale=0.25, maximum-scale=1.6";
78 d9484003 Olga Brani
    }
79 d9484003 Olga Brani
  }
80 d9484003 Olga Brani
}
81 d9484003 Olga Brani
82 49a1289d Olga Brani
if (navigator.userAgent.match(/iPhone/i)) {
83 49a1289d Olga Brani
        document.addEventListener("gesturestart", gestureStart, false);
84 49a1289d Olga Brani
}
85 d9484003 Olga Brani
//end of fix
86 d9484003 Olga Brani
87 9a0d8393 Olga Brani
 
88 0f4a8a68 Olga Brani
$(document).ready(function() {
89 0c887794 Olga Brani
        
90 0c887794 Olga Brani
         
91 0c887794 Olga Brani
    setContainerMinHeight('.container .wrapper');
92 6ac34ab5 Olga Brani
    tableFixedCols('my-projects', 25);
93 0f4a8a68 Olga Brani
        
94 0f4a8a68 Olga Brani
    $('.show-extra').click(function(e) {
95 0f4a8a68 Olga Brani
        e.preventDefault();
96 da7eb085 Olga Brani
        $(this).parents('.bg-wrap').find('.extra').slideToggle(600);
97 0f4a8a68 Olga Brani
    });
98 0f4a8a68 Olga Brani
    $('.hide-extra').click(function(e) {
99 0f4a8a68 Olga Brani
        e.preventDefault();
100 da7eb085 Olga Brani
        $(this).parents('.bg-wrap').find('.extra').slideUp(600);
101 0f4a8a68 Olga Brani
    });
102 0f4a8a68 Olga Brani
    
103 0f4a8a68 Olga Brani
    $('.box-more p').click(function(e) {
104 0f4a8a68 Olga Brani
        $(this).siblings('.clearfix').toggle('slow');
105 0f4a8a68 Olga Brani
        $(this).parents('.box-more').toggleClass('border');
106 0f4a8a68 Olga Brani
    });
107 0f4a8a68 Olga Brani
        
108 05294828 Olga Brani
        var fixTopMessageHeight = function() {
109 05294828 Olga Brani
                var topMargin = parseInt($('.mainlogo img').height())+parseInt($('.top-msg').css('marginBottom'));
110 05294828 Olga Brani
                $('.mainlogo').css('marginTop','-'+topMargin+'px');
111 05294828 Olga Brani
        }
112 05294828 Olga Brani
        
113 05294828 Olga Brani
        if ($('.mainlogo img').length > 0) {
114 05294828 Olga Brani
                $('.mainlogo img').bind('load', fixTopMessageHeight)
115 05294828 Olga Brani
        } else {
116 05294828 Olga Brani
                fixTopMessageHeight();
117 05294828 Olga Brani
        }
118 0c887794 Olga Brani
        
119 0f4a8a68 Olga Brani
        $('.top-msg a.close').click(function(e) {
120 9024c501 Olga Brani
                e.preventDefault();
121 0c887794 Olga Brani
        $('.top-msg').animate({
122 0c887794 Olga Brani
            paddingTop:'0',
123 0c887794 Olga Brani
            paddingBottom:'0',
124 0c887794 Olga Brani
            height:'0'
125 0c887794 Olga Brani
        }, 1000, function (){
126 0f4a8a68 Olga Brani
             $('.top-msg').removeClass('active')
127 0f4a8a68 Olga Brani
        });
128 0c887794 Olga Brani
        $('.mainlogo').animate({
129 0c887794 Olga Brani
            marginTop:'0'
130 0c887794 Olga Brani
        }, 1000, function (){
131 0c887794 Olga Brani
             //todo
132 0c887794 Olga Brani
        });
133 0c887794 Olga Brani
    });        
134 0f4a8a68 Olga Brani
    
135 b27c104d Olga Brani
     
136 5841646f Olga Brani
        $('select.dropkicked').dropkick({
137 5841646f Olga Brani
                change: function (value, label) {
138 5841646f Olga Brani
                    $(this).parents('form').submit();
139 3cbd5e47 Olga Brani
                    
140 5841646f Olga Brani
                }
141 5841646f Olga Brani
        });
142 b0c3c7ea Olga Brani
        
143 b0c3c7ea Olga Brani
        $('.with-info select').attr('tabindex','1');
144 5c878faf Olga Brani
    $('.with-info select').dropkick();
145 0f4a8a68 Olga Brani
    
146 4f78c22c Sofia Papagiannaki
    $('.top-msg .success').parents('.top-msg').addClass('success');
147 4f78c22c Sofia Papagiannaki
    $('.top-msg .error').parents('.top-msg').addClass('error');
148 4f78c22c Sofia Papagiannaki
    $('.top-msg .warning').parents('.top-msg').addClass('warning');
149 4f78c22c Sofia Papagiannaki
    $('.top-msg .info').parents('.top-msg').addClass('info');
150 0f4a8a68 Olga Brani
    
151 da7eb085 Olga Brani
    // clouds homepage animation
152 696f0e1f Olga Brani
    $('#animation a').hover(
153 696f0e1f Olga Brani
      function () {
154 da7eb085 Olga Brani
              
155 696f0e1f Olga Brani
        $(this).animate({
156 da7eb085 Olga Brani
           top: '+=-10'   
157 da7eb085 Olga Brani
           }, 600, function() {
158 da7eb085 Olga Brani
                   if ($(this).find('img').attr('src').indexOf("_top") == -1) {
159 da7eb085 Olga Brani
                           var src = $(this).find('img').attr('src').replace('.png', '_top.png')
160 da7eb085 Olga Brani
                        $(this).find('img').attr("src", src);
161 da7eb085 Olga Brani
                   }
162 da7eb085 Olga Brani
163 da7eb085 Olga Brani
                });
164 da7eb085 Olga Brani
        $(this).siblings('p').find('img').animate({
165 da7eb085 Olga Brani
          width: '60%'       
166 49a1289d Olga Brani
        }, 600);
167 da7eb085 Olga Brani
      }, 
168 da7eb085 Olga Brani
      function () {
169 da7eb085 Olga Brani
170 da7eb085 Olga Brani
        $(this).animate({top: '0'}, 600, function() {
171 da7eb085 Olga Brani
                var src = $(this).find('img').attr('src').replace('_top.png', '.png')
172 da7eb085 Olga Brani
                       $(this).find('img').attr("src", src);
173 da7eb085 Olga Brani
                });
174 da7eb085 Olga Brani
        $(this).siblings('p').find('img').animate({
175 da7eb085 Olga Brani
          width: '65%'       
176 49a1289d Olga Brani
        },600);
177 da7eb085 Olga Brani
      }
178 da7eb085 Olga Brani
    );
179 da7eb085 Olga Brani
    
180 da7eb085 Olga Brani
    
181 696f0e1f Olga Brani
    
182 696f0e1f Olga Brani
    
183 1f6e179e Olga Brani
    $(function() {                 
184 6e7afad5 Sofia Papagiannaki
                $( "#id_start_date" ).datepicker({
185 1f6e179e Olga Brani
                        minDate: 0,
186 1f6e179e Olga Brani
                        defaultDate: "+0", 
187 6e7afad5 Sofia Papagiannaki
            dateFormat: "yy-mm-dd",
188 6e7afad5 Sofia Papagiannaki
            onSelect: function( selectedDate ) {
189 1f6e179e Olga Brani
                $( "#id_end_date" ).datepicker( "option", "minDate", selectedDate );
190 6e7afad5 Sofia Papagiannaki
            }
191 6e7afad5 Sofia Papagiannaki
        });
192 6e7afad5 Sofia Papagiannaki
        
193 6e7afad5 Sofia Papagiannaki
        $( "#id_end_date" ).datepicker({
194 1f6e179e Olga Brani
                defaultDate: "+3w", 
195 6e7afad5 Sofia Papagiannaki
            dateFormat: "yy-mm-dd",
196 6e7afad5 Sofia Papagiannaki
            onSelect: function( selectedDate ) {
197 1f6e179e Olga Brani
                $( "#id_start_date" ).datepicker( "option", "maxDate", selectedDate );
198 6e7afad5 Sofia Papagiannaki
            }
199 6e7afad5 Sofia Papagiannaki
        });
200 49a1289d Olga Brani
        });
201 b27c104d Olga Brani
        
202 b88b1976 Olga Brani
         
203 c8977d75 Olga Brani
        
204 c8977d75 Olga Brani
        $('table .more-info').click(function(e){
205 c8977d75 Olga Brani
                e.preventDefault();
206 c8977d75 Olga Brani
                $(this).toggleClass('open');
207 bdc1c103 Olga Brani
                if ($(this).hasClass('open')){
208 bdc1c103 Olga Brani
                        $(this).html('- less info ')
209 bdc1c103 Olga Brani
                } else {
210 bdc1c103 Olga Brani
                        $(this).html('+ more info ')
211 bdc1c103 Olga Brani
                }
212 c8977d75 Olga Brani
                $(this).parents('tr').next('tr').toggle();
213 6da417da Olga Brani
                 
214 1954d761 Olga Brani
        });
215 1954d761 Olga Brani
        
216 1954d761 Olga Brani
        $('.projects .details .edit').click( function(e){
217 1954d761 Olga Brani
                e.preventDefault();
218 1954d761 Olga Brani
                $(this).parents('.details').children('.data').hide();
219 59728d4e Olga Brani
                $(this).parents('.details').children('.editable').slideDown(500, 'linear');
220 1954d761 Olga Brani
                $(this).hide();
221 bdc1c103 Olga Brani
        });
222 c8977d75 Olga Brani
        
223 5ebebb20 Olga Brani
        $('.editable .form-row').each(function() {
224 5ebebb20 Olga Brani
                        if ( $(this).hasClass('with-errors') ){
225 5ebebb20 Olga Brani
                                $('.editable').show();
226 5ebebb20 Olga Brani
                                $('.projects .details a.edit, .projects .details .data').hide();
227 5ebebb20 Olga Brani
                                
228 5ebebb20 Olga Brani
                        }
229 5ebebb20 Olga Brani
                });
230 2be26b73 Olga Brani
        
231 b88b1976 Olga Brani
 
232 058b6ec7 Kostas Papadimitriou
        $("input.leave, input.join").click(function (e) {
233 058b6ec7 Kostas Papadimitriou
        e.preventDefault();
234 058b6ec7 Kostas Papadimitriou
        var form = $(this).parents('form');
235 058b6ec7 Kostas Papadimitriou
        var dialog = $(this).parents('.msg-wrap').find('.dialog');
236 058b6ec7 Kostas Papadimitriou
237 058b6ec7 Kostas Papadimitriou
                $('.dialog').hide();
238 bdc1c103 Olga Brani
                $(this).parents('.msg-wrap').find('.dialog').show();
239 058b6ec7 Kostas Papadimitriou
        var offset = dialog.offset();
240 058b6ec7 Kostas Papadimitriou
241 058b6ec7 Kostas Papadimitriou
        if (offset.left <= 10) {
242 058b6ec7 Kostas Papadimitriou
          dialog.css({'left': '10px'})
243 058b6ec7 Kostas Papadimitriou
        }
244 058b6ec7 Kostas Papadimitriou
        if (offset.top <= 10) {
245 058b6ec7 Kostas Papadimitriou
          dialog.css({'top': '10px'})
246 058b6ec7 Kostas Papadimitriou
        }
247 058b6ec7 Kostas Papadimitriou
248 058b6ec7 Kostas Papadimitriou
        if (dialog.find('textarea').length > 0) {
249 058b6ec7 Kostas Papadimitriou
          dialog.find('textarea').val('');
250 058b6ec7 Kostas Papadimitriou
          dialog.find('textarea').focus();
251 058b6ec7 Kostas Papadimitriou
        }
252 058b6ec7 Kostas Papadimitriou
253 bdc1c103 Olga Brani
                return false;      
254 5841646f Olga Brani
                
255 bdc1c103 Olga Brani
    });
256 bdc1c103 Olga Brani
    
257 bdc1c103 Olga Brani
     $('.msg-wrap .no').click( function(e){
258 bdc1c103 Olga Brani
                e.preventDefault();
259 bdc1c103 Olga Brani
                $(this).parents('.dialog').hide();
260 bdc1c103 Olga Brani
        })
261 bdc1c103 Olga Brani
    
262 bdc1c103 Olga Brani
    $('.msg-wrap .yes').click( function(e){
263 bdc1c103 Olga Brani
                e.preventDefault();
264 058b6ec7 Kostas Papadimitriou
        var dialog = $(this).parents('.msg-wrap').find('.dialog');
265 058b6ec7 Kostas Papadimitriou
        var form = $(this).parents('.msg-wrap').find('form');
266 058b6ec7 Kostas Papadimitriou
        var fields = dialog.find('input, textarea')
267 058b6ec7 Kostas Papadimitriou
        
268 058b6ec7 Kostas Papadimitriou
        var toremove = [];
269 058b6ec7 Kostas Papadimitriou
        fields.each(function(){
270 058b6ec7 Kostas Papadimitriou
          var f = $(this).clone();
271 058b6ec7 Kostas Papadimitriou
          f.hide();
272 058b6ec7 Kostas Papadimitriou
          form.append(f);
273 058b6ec7 Kostas Papadimitriou
          f.val($(this).val());
274 058b6ec7 Kostas Papadimitriou
          toremove.push(f);
275 058b6ec7 Kostas Papadimitriou
        });
276 058b6ec7 Kostas Papadimitriou
        
277 058b6ec7 Kostas Papadimitriou
        form.submit();
278 bdc1c103 Olga Brani
        })
279 bdc1c103 Olga Brani
    
280 5ebebb20 Olga Brani
    $('.hidden-submit input[readonly!="True"]').focus(function () {
281 632b6458 Olga Brani
         $('.hidden-submit .form-row.submit').slideDown(500);
282 5ebebb20 Olga Brani
    });
283 bdc1c103 Olga Brani
    
284 632b6458 Olga Brani
    
285 632b6458 Olga Brani
    
286 7b5bca4a Olga Brani
   
287 792c2f3b Olga Brani
      
288 792c2f3b Olga Brani
    
289 792c2f3b Olga Brani
    setTimeout(function() {
290 792c2f3b Olga Brani
      if ($('input#id_username').val()){ 
291 792c2f3b Olga Brani
              $('input#id_username').siblings('label').css('opacity','0');
292 792c2f3b Olga Brani
      };
293 792c2f3b Olga Brani
      if ($('input#id_password').val()){ 
294 792c2f3b Olga Brani
              $('input#id_password').siblings('label').css('opacity','0');
295 792c2f3b Olga Brani
      }
296 792c2f3b Olga Brani
        }, 100);
297 b88b1976 Olga Brani
        
298 9a0d8393 Olga Brani
        
299 9a0d8393 Olga Brani
        
300 9a0d8393 Olga Brani
        
301 9a0d8393 Olga Brani
        $('.landing-page .cms').hover(
302 9a0d8393 Olga Brani
      function () {
303 9a0d8393 Olga Brani
               el = $('.cloudbar ul.services li').first();
304 9a0d8393 Olga Brani
               var offset = el.offset();
305 9a0d8393 Olga Brani
               positionX = offset.left;
306 9a0d8393 Olga Brani
               $('#hand').css('left',positionX);                   
307 9a0d8393 Olga Brani
         $('#hand').show();
308 9a0d8393 Olga Brani
      }, 
309 9a0d8393 Olga Brani
      function () {
310 9a0d8393 Olga Brani
              $('#hand').hide();
311 9a0d8393 Olga Brani
    
312 9a0d8393 Olga Brani
    });  
313 9a0d8393 Olga Brani
    
314 9a0d8393 Olga Brani
    $('.landing-page .pithos').hover(
315 9a0d8393 Olga Brani
      function () {
316 ef083adf Olga Brani
               el = $('.cloudbar ul.services li:nth-child(3)');
317 9a0d8393 Olga Brani
               var offset = el.offset();
318 9a0d8393 Olga Brani
               positionX = offset.left;
319 9a0d8393 Olga Brani
               left = parseInt(positionX) +20;
320 9a0d8393 Olga Brani
               $('#hand').css('left',left+'px');                   
321 9a0d8393 Olga Brani
         $('#hand').show();
322 9a0d8393 Olga Brani
      }, 
323 9a0d8393 Olga Brani
      function () {
324 9a0d8393 Olga Brani
              $('#hand').hide();
325 9a0d8393 Olga Brani
    
326 9a0d8393 Olga Brani
    });  
327 9a0d8393 Olga Brani
    
328 9a0d8393 Olga Brani
    $('.landing-page .cyclades').hover(
329 9a0d8393 Olga Brani
      function () {
330 ef083adf Olga Brani
               el = $('.cloudbar ul.services li:nth-child(2)').first();
331 9a0d8393 Olga Brani
               var offset = el.offset();
332 9a0d8393 Olga Brani
               positionX = offset.left;
333 9a0d8393 Olga Brani
               left = parseInt(positionX) +20;
334 9a0d8393 Olga Brani
               $('#hand').css('left',left+'px');                   
335 9a0d8393 Olga Brani
         $('#hand').show();
336 9a0d8393 Olga Brani
      }, 
337 9a0d8393 Olga Brani
      function () {
338 9a0d8393 Olga Brani
              $('#hand').hide();
339 9a0d8393 Olga Brani
    
340 9a0d8393 Olga Brani
    });  
341 9a0d8393 Olga Brani
    
342 9a0d8393 Olga Brani
    
343 9a0d8393 Olga Brani
    $('.landing-page .dashboard').hover(
344 9a0d8393 Olga Brani
      function () {
345 9a0d8393 Olga Brani
               el = $('.cloudbar .profile');
346 9a0d8393 Olga Brani
               var offset = el.offset();
347 9a0d8393 Olga Brani
               positionX = offset.left +50;
348 9a0d8393 Olga Brani
               $('#hand').css('left',positionX);                   
349 9a0d8393 Olga Brani
         $('#hand').show();
350 9a0d8393 Olga Brani
      }, 
351 9a0d8393 Olga Brani
      function () {
352 9a0d8393 Olga Brani
              $('#hand').hide();
353 9a0d8393 Olga Brani
    
354 9a0d8393 Olga Brani
    });  
355 a3af7d09 Olga Brani
    
356 a3af7d09 Olga Brani
    $('.pagination a.disabled').click(function(e){
357 a3af7d09 Olga Brani
            e.preventDefault();
358 a3af7d09 Olga Brani
    });
359 9a0d8393 Olga Brani
          
360 ef083adf Olga Brani
        // fix for recaptcha fields
361 ef083adf Olga Brani
        $('#okeanos_recaptcha').parents('.form-row').find('.extra-img').hide();          
362 9a0d8393 Olga Brani
     
363 b88b1976 Olga Brani
         
364 e1dc6dec Olga Brani
            
365 ed2f0452 Olga Brani
});
366 9a06d96f Olga Brani
        
367 0c887794 Olga Brani
$(window).resize(function() {
368 0c887794 Olga Brani
    
369 0c887794 Olga Brani
   setContainerMinHeight('.container .wrapper');
370 5ebebb20 Olga Brani
    
371 0c887794 Olga Brani
372 058b6ec7 Kostas Papadimitriou
});