liquid_feedback_frontend

annotate app/main/_layout/default.html @ 1045:701a5cf6b067

Imported LiquidFeedback Frontend 3.0 branch
author bsw
date Thu Jul 10 01:19:48 2014 +0200 (2014-07-10)
parents b865f87ea810
children 58d703bb06e4
rev   line source
bsw/jbe@0 1 <html>
bsw@1045 2 <head>
bsw@1045 3 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
bsw@1045 4 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
bsw@1045 5 <title><!-- WEBMCP SLOTNODIV html_title --></title>
bsw@1045 6 <link rel="stylesheet" type="text/css" media="screen" href="__BASEURL__/static/gregor.js/gregor.css" />
bsw@1045 7 <link rel="stylesheet" type="text/less" href="__BASEURL__/static/lf3.less" />
bsw@1045 8 <!-- WEBMCP SLOTNODIV html_head -->
bsw@1045 9 <script type="text/javascript" src="__BASEURL__/static/js/less-1.4.1.min.js"></script>
bsw@1045 10 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
bsw@1045 11 <script type="text/javascript">jsFail = true;</script>
bsw@1045 12 <![if !IE]>
bsw@1045 13 <script type="text/javascript">jsFail = false;</script>
bsw@1045 14 <![endif]>
bsw@1045 15 <script type="text/javascript" src="__BASEURL__/static/js/jsprotect.js"></script>
bsw@1045 16 <script type="text/javascript" src="__BASEURL__/static/js/partialload.js"></script>
bsw@1045 17 <script type="text/javascript">var ui_tabs_active = {};</script>
bsw@1045 18 </head>
bsw@1045 19 <body style="">
bsw@1045 20 <div class="head_outer">
bsw@1045 21 <div class="head">
bsw@1045 22 <div class="nav">
bsw@1045 23 <!--WEBMCP SLOTNODIV navigation -->
bsw@1045 24 <!--WEBMCP SLOTNODIV navigation_right -->
bsw@1045 25 <!--WEBMCP SLOTNODIV notification -->
bsw@1045 26 </div>
bsw@1045 27
bsw@1045 28 <a class="logo" href="__BASEURL__/">
bsw@1045 29 <span class="liquid">Liquid</span><span class="feedback">Feedback</span>
bsw@1045 30 <span class="instanceName"><!-- WEBMCP SLOTNODIV instance_name --></span>
bsw@1045 31 </a>
bsw@1045 32
bsw@1045 33
bsw@1045 34 </div>
bsw@1045 35 </div>
bsw@1045 36
bsw@1045 37 <div class="page">
bsw@1045 38 <div class="layout_notice" id="layout_notice" onclick="document.getElementById('layout_notice').style.display='none';">
bsw@1045 39 <!-- WEBMCP SLOT notice -->
bsw@1045 40 </div>
bsw@1045 41
bsw@1045 42 <div class="layout_warning" id="layout_warning" onclick="document.getElementById('layout_warning').style.display='none';">
bsw@1045 43 <!-- WEBMCP SLOT warning -->
bsw@1045 44 </div>
bsw@1045 45
bsw@1045 46 <div class="layout_error" id="layout_error" onclick="document.getElementById('layout_error').style.display='none';">
bsw@1045 47 <!-- WEBMCP SLOT error -->
bsw@1045 48 </div>
bsw@1045 49
bsw@1045 50 <div class="layout_motd" id="layout_motd" onclick="document.getElementById('layout_motd').style.display='none';">
bsw@1045 51 <!-- WEBMCP SLOT motd -->
bsw@1045 52 </div>
bsw@1045 53
bsw@1045 54 <div class="title_outer">
bsw@1045 55 <!-- WEBMCP SLOT title -->
bsw@1045 56 </div>
bsw@1045 57
bsw@1045 58 <!-- WEBMCP SLOT tabs -->
bsw@1045 59
bsw@1045 60 <!-- WEBMCP SLOTNODIV actions -->
bsw@1045 61
bsw@1045 62 <div id="swiper_tabs" class="swiper_tabs" style="display: none;">
bsw@1045 63 <!-- <div><a id="tab-0" href="#" onclick="slider.to(0); return false;"><img src="__BASEURL__/static/icons/16/chart_organisation.png" /></a></div>-->
bsw@1045 64 <div><a id="tab-0" href="#" onclick="slider.to(0); return false;"><img src="__BASEURL__/static/icons/16/text_list_bullets.png" width="32" height="32" /></a></div>
bsw@1045 65 <div><a id="tab-1" href="#" onclick="slider.to(1); return false;"><img src="__BASEURL__/static/icons/48/info.png" width="32" height="32" /></a></div>
bsw@1045 66 <div><a id="tab-2" href="#" onclick="slider.to(2); return false;"><img src="__BASEURL__/static/icons/16/group.png" width="32" height="32" /></a></div>
bsw@1045 67 </div>
bsw@1045 68
bsw@1045 69 <div id="swiper_info"><!-- WEBMCP SLOTNODIV swiper_info --></div>
bsw@1045 70 <div id="swiper" class="swiper" style="position: absolute; width: 100%;">
bsw@1045 71 <div id="swiper_wrap" class="swiper_wrap">
bsw@1045 72 </div>
bsw@1045 73 </div>
bsw@1045 74
bsw@1045 75 <div class="content">
bsw@1045 76 <div class="sidebar">
bsw@1045 77 <!-- WEBMCP SLOTNODIV sidebar -->
bsw@1045 78 </div>
bsw@1045 79
bsw@1045 80 <div class="main_outer">
bsw@1045 81 <!-- WEBMCP SLOTNODIV slideshow -->
bsw@1045 82 <div class="main">
bsw@1045 83 <!-- WEBMCP SLOTNODIV default -->
bsw@1045 84 <!-- WEBMCP SLOTNODIV extra -->
bsw/jbe@0 85 </div>
bsw@277 86 </div>
bsw@1045 87 </div>
bsw@1045 88 <br style="clear: both;" />
bsw@1045 89 <div class="footer">
bsw@1045 90 <!-- WEBMCP SLOTNODIV footer -->
bsw@1045 91 </div>
bsw@1045 92 </div>
bsw@1045 93
bsw@1045 94 <div id="trace">
bsw@1045 95 <!-- WEBMCP SLOTNODIV trace_button -->
bsw@868 96 <div id="trace_content" style="display: none;">
bsw@868 97 <tt id="system_error"><!-- WEBMCP SLOT system_error --></tt>
bsw@1045 98 <h1>System trace (for computer programmers purposes)</h1>
bsw@1045 99 <br />
bsw@868 100 <!-- WEBMCP SLOT trace -->
bsw@868 101 <div class="trace_close" onclick="document.getElementById('trace_show').style.display='block';document.getElementById('trace_content').style.display='none';">
bsw@868 102 close
bsw/jbe@0 103 </div>
bsw/jbe@0 104 </div>
bsw@1045 105 </div>
bsw@1045 106 <script>
bsw@1045 107 $(".trace_view > .trace_list").hide();
bsw@1045 108 $(".trace_head").click(function() {
bsw@1045 109 var el = this.nextSibling
bsw@1045 110 if (el) $(el).toggle();
bsw@1045 111 });
bsw@1045 112 </script>
bsw@1045 113
bsw@1045 114 <!-- WEBMCP SLOTNODIV script -->
bsw@1045 115
bsw@1045 116 <script>
bsw@1045 117
bsw@1045 118 var slider;
bsw@1045 119
bsw@1045 120 function initSlider () {
bsw@1045 121
bsw@1045 122 var els = [
bsw@1045 123 $( '.main, .extra' ),
bsw@1045 124 $( '.tab-notification, .tab-whatcanido' ),
bsw@1045 125 $( '.tab-members' )
bsw@1045 126 ];
bsw@1045 127
bsw@1045 128 var sidebarFound = false;
bsw@1045 129 for ( i = 1; i < els.length; i++) {
bsw@1045 130 if (els[i].length > 0) sidebarFound = true;
bsw@1045 131 }
bsw@1045 132
bsw@1045 133 if (sidebarFound) $("#swiper_tabs").show();
bsw@1045 134
bsw@1045 135 var elsCount = 3;
bsw@1045 136
bsw@1045 137 var slidePos;
bsw@1045 138
bsw@1045 139 function slideTo ( pos ) {
bsw@1045 140 if ( typeof ( slidePos ) != "undefined" ) {
bsw@1045 141 els[ slidePos ].hide();
bsw@1045 142 $ ( "#tab-" + slidePos ).removeClass ( "active" );
bsw@1045 143 }
bsw@1045 144 slidePos = pos;
bsw@1045 145 els[ slidePos ].show();
bsw@1045 146 $ ( "#tab-" + slidePos ).addClass ( "active" );
bsw@1045 147 if (pos == 1) {
bsw@1045 148 $("#swiper_info").hide();
bsw@1045 149 }
bsw@1045 150 }
bsw@1045 151
bsw@1045 152 function slideNext () {
bsw@1045 153 var pos = slidePos + 1;
bsw@1045 154 if ( pos > elsCount - 1 ) {
bsw@1045 155 pos = elsCount - 1;
bsw@1045 156 } else {
bsw@1045 157 $( "#swiper").css("left", "400px");
bsw@1045 158 $( "#swiper").animate({ "left": "0px" }, 200);
bsw@1045 159 }
bsw@1045 160 slideTo ( pos );
bsw@1045 161 }
bsw@1045 162
bsw@1045 163 function slidePrev () {
bsw@1045 164 var pos = slidePos - 1;
bsw@1045 165 if ( pos < 0 ) {
bsw@1045 166 pos = 0;
bsw@1045 167 } else {
bsw@1045 168 $( "#swiper").css("left", "-400px");
bsw@1045 169 $( "#swiper").animate({ "left": "0px" }, 200);
bsw@1045 170 }
bsw@1045 171 slideTo ( pos );
bsw@1045 172 }
bsw@1045 173
bsw@1045 174 function exit() {
bsw@1045 175 for ( i = 0; i < els.length; i++) {
bsw@1045 176 els[i].show();
bsw@1045 177 }
bsw@1045 178 $( ".main_outer" ).append ( $( ".main" ).detach() );
bsw@1045 179 $( ".extra_outer" ).append ( $( ".extra" ).detach() );
bsw@1045 180 $( ".sidebar" ).append ( $(els[1]).detach() );
bsw@1045 181 $( ".sidebar" ).append ( $(els[2]).detach() );
bsw@1045 182 $( ".page" ).append ( $('.footer') );
bsw@1045 183 $( "body" ).append ( $('#trace') );
bsw@1045 184
bsw@1045 185 }
bsw@1045 186
bsw@1045 187 var touchStartX;
bsw@1045 188 var touchStartY;
bsw@1045 189 var isScrolling;
bsw@1045 190
bsw@1045 191 function touchDown ( e ) {
bsw@1045 192 touchStartX = e.originalEvent.touches[0].pageX;
bsw@1045 193 touchStartY = e.originalEvent.touches[0].pageY;
bsw@1045 194 isScrolling = undefined;
bsw@1045 195 }
bsw@1045 196
bsw@1045 197 function touchMove ( e ) {
bsw@1045 198 var diffX = touchStartX - e.originalEvent.changedTouches[0].pageX;
bsw@1045 199 var diffY = touchStartY - e.originalEvent.changedTouches[0].pageY;
bsw@1045 200 if ( typeof( isScrolling ) == 'undefined' ) {
bsw@1045 201 isScrolling = Math.abs ( diffY ) > Math.abs ( diffX );
bsw@1045 202 }
bsw@1045 203 if ( ! isScrolling ) {
bsw@1045 204 $( "#swiper").css("left", -diffX + "px");
bsw@1045 205 e.preventDefault();
bsw@1045 206 }
bsw@1045 207 }
bsw@1045 208
bsw@1045 209 function touchUp ( e ) {
bsw@1045 210 var diffX = touchStartX - e.originalEvent.changedTouches[0].pageX;
bsw@1045 211 var diffY = touchStartY - e.originalEvent.changedTouches[0].pageY;
bsw@1045 212
bsw@1045 213 if ( isScrolling ) {
bsw@1045 214 // vertical scrolling
bsw@1045 215 return;
bsw@1045 216 }
bsw@1045 217
bsw@1045 218 if ( Math.abs ( diffX ) < 100 ) {
bsw@1045 219 // go back not enough
bsw@1045 220 $( "#swiper").animate({
bsw@1045 221 "left": "0px",
bsw@1045 222 }, 200);
bsw@1045 223 return;
bsw@1045 224 }
bsw@1045 225 var direction = diffX < 0 ? "right" : "left";
bsw@1045 226
bsw@1045 227 if ( direction == "left" ) {
bsw@1045 228 slideNext();
bsw@1045 229 } else {
bsw@1045 230 slidePrev();
bsw@1045 231 }
bsw@1045 232 }
bsw@1045 233
bsw@1045 234 for ( i = 0; i < els.length; i++) {
bsw@1045 235 var el = els[i].detach();
bsw@1045 236 el.hide();
bsw@1045 237 $('#swiper_wrap').append ( el ) ;
bsw@1045 238 }
bsw@1045 239
bsw@1045 240 $('#swiper_wrap').append ( $('.footer') );
bsw@1045 241 $('#swiper_wrap').append ( $('#trace') );
bsw@1045 242 slideTo ( 0 );
bsw@1045 243
bsw@1045 244 if ( 'ontouchstart' in document.documentElement ) {
bsw@1045 245 $( "body" ).on( "touchstart", touchDown );
bsw@1045 246 $( "body" ).on( "touchmove", touchMove );
bsw@1045 247 $( "body" ).on( "touchend", touchUp );
bsw@1045 248 }
bsw@1045 249
bsw@1045 250 return {
bsw@1045 251 to: slideTo,
bsw@1045 252 exit: exit
bsw@1045 253 }
bsw@1045 254
bsw@1045 255 }
bsw@1045 256
bsw@1045 257 function resizeHandler() {
bsw@1045 258 if ( $(window).width() < 768 ) {
bsw@1045 259 if ( typeof ( slider ) == "undefined" ) {
bsw@1045 260 slider = initSlider();
bsw@1045 261 }
bsw@1045 262 } else {
bsw@1045 263 if ( typeof ( slider ) != "undefined" ) {
bsw@1045 264 slider.exit();
bsw@1045 265 slider = undefined;
bsw@1045 266 }
bsw@1045 267 }
bsw@1045 268
bsw@1045 269 }
bsw@1045 270
bsw@1045 271 $( window ).resize( resizeHandler );
bsw@1045 272 resizeHandler();
bsw@1045 273
bsw@1045 274 </script>
bsw@1045 275
bsw@1045 276 </body>
jorges@113 277 </html>

Impressum / About Us