-function setContainerMinHeight(){\r
+function setContainerMinHeight( applicableDiv){\r
+ \r
+ if ( $(applicableDiv).length > 0 ) {\r
+ //var h = $('.header').height(); div.header is not found \r
+ var f = $('.footer').height();\r
+ var w = $(window).height();\r
+ var pTop = parseInt (($(applicableDiv).css('padding-top').replace("px", "")) );\r
+ var pBottom = parseInt (($(applicableDiv).css('padding-bottom').replace("px", "")));\r
+\r
+ var c = w - ( f+pTop+pBottom+36);//36 is header's height.\r
+ $(applicableDiv).css('min-height', c);\r
+ } \r
+\r
+}\r
+\r
+function tableFixedCols(table, firstColWidth ){\r
+ ColsNum = $('table th').size();\r
+ var ColWidth = parseFloat( (100 - firstColWidth)/ColsNum ).toFixed(0);\r
+ var ColWidthPercentage = ColWidth+'%';\r
+ var firstColWidthPercentage = firstColWidth+'%';\r
+ $('.projects table th, .projects table td').attr('width',ColWidthPercentage ); \r
+ $('.projects table tr td:first-child,.projects table tr th:first-child').attr('width',firstColWidthPercentage );\r
+ \r
+}\r
+\r
+function addClassHover(hoverEl, applicableEl){ \r
+ $(hoverEl).hover(\r
+ function () {\r
+ \r
+ $(applicableEl).addClass('red-border')\r
+ }, \r
+ function () {\r
+ $(applicableEl).removeClass('red-border');\r
+ \r
+ });\r
+}\r
+//equal heights\r
+ \r
+(function($) {\r
+ $.fn.equalHeights = function(minHeight, maxHeight) {\r
+ tallest = (minHeight) ? minHeight : 0;\r
+ this.each(function() {\r
+ if($(this).height() > tallest) {\r
+ tallest = $(this).height();\r
+ }\r
+ });\r
+ if((maxHeight) && tallest > maxHeight) tallest = maxHeight;\r
+ return this.each(function() {\r
+ $(this).height(tallest);\r
+ });\r
+ }\r
+})(jQuery);\r
+\r
\r
- var h = $('.header').height();\r
- var f = $('.footer').height();\r
- var w = $(window).height();\r
- var pTop = parseInt (($('.container .wrapper').css('padding-top').replace("px", "")) );\r
- var pBottom = parseInt (($('.container .wrapper').css('padding-bottom').replace("px", "")));\r
\r
- var c = w - ( h+f+pTop+pBottom);\r
- $('.container .wrapper').css('min-height', c);\r
+// fix for iPhone - iPad orientation bug \r
+var metas = document.getElementsByTagName('meta');\r
+function resetViewport() {\r
+ var i;\r
+ if (navigator.userAgent.match(/iPhone/i)) {\r
+ for (i=0; i<metas.length; i++) {\r
+ if (metas[i].name == "viewport") {\r
+ metas[i].content = "width=device-width, minimum-scale=1.0, maximum-scale=1.0";\r
+ }\r
+ }\r
+ }\r
+}\r
+resetViewport();\r
\r
+window.onorientationchange = function() {\r
+ resetViewport();\r
+};\r
+ \r
+function gestureStart() {\r
+ for (i=0; i<metas.length; i++) {\r
+ if (metas[i].name == "viewport") {\r
+ metas[i].content = "width=device-width, minimum-scale=0.25, maximum-scale=1.6";\r
+ }\r
+ }\r
+}\r
\r
+if (navigator.userAgent.match(/iPhone/i)) {\r
+ document.addEventListener("gesturestart", gestureStart, false);\r
}\r
+//end of fix\r
\r
+ \r
$(document).ready(function() {\r
+ \r
+\r
\r
- setContainerMinHeight();\r
+ setContainerMinHeight('.container .wrapper');\r
+ tableFixedCols('my-projects', 25);\r
\r
- $('.show-extra').click(function(e) {\r
+ $('.show-extra').click(function(e) {\r
e.preventDefault();\r
- \r
- $(this).parents('.bg-wrap').find('.extra').toggle('slow');\r
- $('.hide-extra').toggle(); \r
+ $(this).parents('.bg-wrap').find('.extra').slideToggle(600);\r
});\r
$('.hide-extra').click(function(e) {\r
e.preventDefault();\r
- $(this).hide();\r
- $(this).parents('.bg-wrap').find('.extra').hide('slow');\r
+ $(this).parents('.bg-wrap').find('.extra').slideUp(600);\r
});\r
\r
$('.box-more p').click(function(e) {\r
$(this).parents('.box-more').toggleClass('border');\r
});\r
\r
- \r
+ var fixTopMessageHeight = function() {\r
+ var topMargin = parseInt($('.mainlogo img').height())+parseInt($('.top-msg').css('marginBottom'));\r
+ $('.mainlogo').css('marginTop','-'+topMargin+'px');\r
+ }\r
+ \r
+ // Uncomment to hide logo upon top message appearance\r
+\r
+ // if ($('.mainlogo img').length > 0) {\r
+ // $('.mainlogo img').bind('load', fixTopMessageHeight)\r
+ // } else {\r
+ // fixTopMessageHeight();\r
+ // }\r
+ \r
$('.top-msg a.close').click(function(e) {\r
- e.preventDefault();\r
- $(this).parents('.top-msg').slideUp('5000', function() {\r
+ e.preventDefault();\r
+ $('.top-msg').animate({\r
+ paddingTop:'0',\r
+ paddingBottom:'0',\r
+ height:'0'\r
+ }, 1000, function (){\r
$('.top-msg').removeClass('active')\r
});\r
+ $('.mainlogo').animate({\r
+ marginTop:'0'\r
+ }, 1000, function (){\r
+ //todo\r
+ });\r
+ }); \r
+ \r
+ \r
+ $('select.dropkicked').dropkick({\r
+ change: function (value, label) {\r
+ $(this).parents('form').submit();\r
+ \r
+ }\r
+ });\r
+ \r
+ $('.with-info select').attr('tabindex','1');\r
+ $('.with-info select').dropkick();\r
+ \r
+ $('.top-msg .success').parents('.top-msg').addClass('success');\r
+ $('.top-msg .error').parents('.top-msg').addClass('error');\r
+ $('.top-msg .warning').parents('.top-msg').addClass('warning');\r
+ $('.top-msg .info').parents('.top-msg').addClass('info');\r
+ \r
+ // clouds homepage animation\r
+ $('#animation a').hover(\r
+ function () {\r
+ \r
+ $(this).animate({\r
+ top: '+=-3' \r
+ }, 0, function() {\r
+ if ($(this).find('img').attr('src').indexOf("_top") == -1) {\r
+ var src = $(this).find('img').attr('src').replace('.png', '_top.png')\r
+ $(this).find('img').attr("src", src);\r
+ }\r
+\r
+ });\r
+ $(this).siblings('p').find('img').animate({\r
+ width: '60%' \r
+ }, 600);\r
+ }, \r
+ function () {\r
+\r
+ $(this).animate({top: '0'}, 600, function() {\r
+ var src = $(this).find('img').attr('src').replace('_top.png', '.png')\r
+ $(this).find('img').attr("src", src);\r
+ });\r
+ $(this).siblings('p').find('img').animate({\r
+ width: '65%' \r
+ },600);\r
+ }\r
+ );\r
+ \r
+ \r
+ \r
+ \r
+ $(function() { \r
+ $( "#id_start_date" ).datepicker({\r
+ minDate: 0,\r
+ defaultDate: "+0", \r
+ dateFormat: "yy-mm-dd",\r
+ onSelect: function( selectedDate ) {\r
+ $( "#id_end_date" ).datepicker( "option", "minDate", selectedDate );\r
+ }\r
+ });\r
+ \r
+ $( "#id_end_date" ).datepicker({\r
+ defaultDate: "+3w", \r
+ dateFormat: "yy-mm-dd",\r
+ onSelect: function( selectedDate ) {\r
+ $( "#id_start_date" ).datepicker( "option", "maxDate", selectedDate );\r
+ }\r
+ });\r
+ });\r
+ \r
+ \r
+ \r
+ $('table .more-info').click(function(e){\r
+ e.preventDefault();\r
+ $(this).toggleClass('open');\r
+ if ($(this).hasClass('open')){\r
+ $(this).html('- less info ')\r
+ } else {\r
+ $(this).html('+ more info ')\r
+ }\r
+ $(this).parents('tr').next('tr').toggle();\r
+ \r
+ });\r
+ \r
+ $('.projects .details .edit').click( function(e){\r
+ e.preventDefault();\r
+ $(this).parents('.details').children('.data').hide();\r
+ $(this).parents('.details').children('.editable').slideDown(500, 'linear');\r
+ $(this).hide();\r
+ });\r
+ \r
+ $('.editable .form-row').each(function() {\r
+ if ( $(this).hasClass('with-errors') ){\r
+ $('.editable').show();\r
+ $('.projects .details a.edit, .projects .details .data').hide();\r
+ \r
+ }\r
+ });\r
+ \r
+ \r
+ $("input.leave, input.join").click(function () {\r
+ $('dialog').hide();\r
+ $(this).parents('.msg-wrap').find('.dialog').show();\r
+ return false; \r
+ \r
});\r
\r
- //$('select').dropkick();\r
+ $('.msg-wrap .no').click( function(e){\r
+ e.preventDefault();\r
+ $(this).parents('.dialog').hide();\r
+ })\r
\r
- \r
- if ( $('#os').length > 0 ) {\r
- var os = BrowserDetect.OS;\r
- if ( os!=="an unknown OS" ) {\r
- $('#os').html('version '+os);\r
- }\r
- }\r
+ $('.msg-wrap .yes').click( function(e){\r
+ e.preventDefault();\r
+ $(this).parents('.dialog').siblings('form').submit();\r
+ })\r
+ \r
+ $('.hidden-submit input[readonly!="True"]').focus(function () {\r
+ $('.hidden-submit .form-row.submit').slideDown(500);\r
+ });\r
+ \r
+ \r
+ \r
+ \r
+ \r
+ \r
+ setTimeout(function() {\r
+ if ($('input#id_username').val()){ \r
+ $('input#id_username').siblings('label').css('opacity','0');\r
+ };\r
+ if ($('input#id_password').val()){ \r
+ $('input#id_password').siblings('label').css('opacity','0');\r
+ }\r
+ }, 100);\r
+ \r
+ \r
+ \r
+ \r
+ $('.landing-page .cms').hover(\r
+ function () {\r
+ el = $('.cloudbar ul.services li').first();\r
+ var offset = el.offset();\r
+ positionX = offset.left;\r
+ $('#hand').css('left',positionX); \r
+ $('#hand').show();\r
+ }, \r
+ function () {\r
+ $('#hand').hide();\r
+ \r
+ }); \r
+ \r
+ $('.landing-page .pithos').hover(\r
+ function () {\r
+ el = $('.cloudbar ul.services li:nth-child(3)');\r
+ var offset = el.offset();\r
+ positionX = offset.left;\r
+ left = parseInt(positionX) +20;\r
+ $('#hand').css('left',left+'px'); \r
+ $('#hand').show();\r
+ }, \r
+ function () {\r
+ $('#hand').hide();\r
\r
- $('.top-msg .success').parents('.top-msg').css(\r
- {\r
- backgroundColor: '#f3c',\r
- color: '#fff'\r
- }\r
- )\r
+ }); \r
\r
- $('.top-msg .error').parents('.top-msg').css(\r
- {\r
- backgroundColor: 'red',\r
- color: '#fff'\r
- }\r
- )\r
+ $('.landing-page .cyclades').hover(\r
+ function () {\r
+ el = $('.cloudbar ul.services li:nth-child(2)').first();\r
+ var offset = el.offset();\r
+ positionX = offset.left;\r
+ left = parseInt(positionX) +20;\r
+ $('#hand').css('left',left+'px'); \r
+ $('#hand').show();\r
+ }, \r
+ function () {\r
+ $('#hand').hide();\r
\r
+ }); \r
\r
- $('.top-msg .warning').parents('.top-msg').css(\r
- {\r
- backgroundColor: '#90f',\r
- color: '#fff'\r
- }\r
- )\r
\r
+ $('.landing-page .dashboard').hover(\r
+ function () {\r
+ el = $('.cloudbar .profile');\r
+ var offset = el.offset();\r
+ positionX = offset.left +50;\r
+ $('#hand').css('left',positionX); \r
+ $('#hand').show();\r
+ }, \r
+ function () {\r
+ $('#hand').hide();\r
+ \r
+ }); \r
+ \r
+ $('.pagination a.disabled').click(function(e){\r
+ e.preventDefault();\r
+ });\r
+ \r
+ // fix for recaptcha fields\r
+ $('#okeanos_recaptcha').parents('.form-row').find('.extra-img').hide();\r
+\r
+ fixEl = $('.details .lt');\r
+ if (fixEl.length){ window.fixEloffsetTop = fixEl.offset().top;} \r
+ \r
+\r
+ $(".stats-block li em").equalHeights();\r
+\r
+ \r
});\r
+ \r
+$(window).resize(function() {\r
+ \r
+ setContainerMinHeight('.container .wrapper');\r
+ \r
+\r
+});\r
+\r
+\r
+/* js for fixed faq/userguide side nav */\r
+$(window).scroll(function () {\r
+\r
+ if ( $('.details .lt').height() < $('.details .rt').height() ) {\r
+ if ($(window).scrollTop() > window.fixEloffsetTop){ \r
+ fixEl.addClass('fixed');\r
+ } else {\r
+ fixEl.removeClass('fixed');\r
+ }\r
+ }\r
+\r
+\r
+\r
+});