Statistics
| Branch: | Tag: | Revision:

root / snf-cyclades-app / synnefo / ui / new_ui / ui / javascripts / common.js @ 164fdcd9

History | View | Annotate | Download (12.1 kB)

1 5acf3fcf Olga Brani
/*
2 5acf3fcf Olga Brani
* Various functions that will be used throughout all templates
3 5acf3fcf Olga Brani
* are inside ui Object
4 5acf3fcf Olga Brani
*/
5 b3c1328b Olga Brani
6 5acf3fcf Olga Brani
ui = {};
7 9b6be833 Olga Brani
/*
8 9b6be833 Olga Brani
* ui.wizards get populated in vm-wizard.js
9 9b6be833 Olga Brani
* here is the declaration only
10 9b6be833 Olga Brani
*/
11 6bd1416f Athina Bekakou
ui.wizard = {};
12 98714f8a Olga Brani
13 5acf3fcf Olga Brani
/* when closeEl el is clicked, its parent with class divToCloseClass slidesUp */
14 98714f8a Olga Brani
ui.closeDiv = function(closeEl, divToCloseClass) {
15 d3bfabe8 Olga Brani
    closeEl.click(function(e){
16 d3bfabe8 Olga Brani
        e.preventDefault();
17 d3bfabe8 Olga Brani
        $(this).parents(divToCloseClass).slideUp('slow');
18 d3bfabe8 Olga Brani
    });
19 b3c1328b Olga Brani
}
20 b3c1328b Olga Brani
21 98714f8a Olga Brani
22 9569cdc8 Olga Brani
ui.trimChars = function( str, chars) {
23 9569cdc8 Olga Brani
    if ( str.length>chars){
24 5acf3fcf Olga Brani
        return $.trim(str).substring(0, chars)+ "...";
25 9569cdc8 Olga Brani
    } else {
26 9569cdc8 Olga Brani
        return str;
27 9569cdc8 Olga Brani
    }
28 9569cdc8 Olga Brani
}
29 9569cdc8 Olga Brani
30 5acf3fcf Olga Brani
/* sets lt-sidebar height. Useful for jscrollpane scrollbar */
31 98714f8a Olga Brani
ui.setSidebarHeight = function(){
32 d3bfabe8 Olga Brani
    var WindowHeight = $(window).height();
33 d3bfabe8 Olga Brani
    var h1= WindowHeight - $('.header').outerHeight();
34 5acf3fcf Olga Brani
    var h2= $('.main').outerHeight();
35 5acf3fcf Olga Brani
    $('.lt-sidebar').height((h2>h1) ? h2 : h1);
36 98714f8a Olga Brani
}
37 98714f8a Olga Brani
38 5acf3fcf Olga Brani
39 5acf3fcf Olga Brani
/* 
40 5acf3fcf Olga Brani
* Logic for Entities actions. Present in items_list pages
41 5acf3fcf Olga Brani
* Available categories are :
42 5acf3fcf Olga Brani
*  - both/single ( for multiple entities/single entities)
43 5acf3fcf Olga Brani
*  - running/stopped ( for running/stopped entities)
44 5acf3fcf Olga Brani
*  - permanent ( for entities always active )
45 5acf3fcf Olga Brani
*/
46 5acf3fcf Olga Brani
ui.entitiesActionsEnabled = function(){
47 8db75456 Athina Bekakou
    var all = $('.snf-checkbox-checked').length;
48 8db75456 Athina Bekakou
    var running = $('.snf-checkbox-checked').parents('.container').find('.running').length;
49 8db75456 Athina Bekakou
    var stopped = $('.snf-checkbox-checked').parents('.container').find('.stopped').length;
50 6e3d008c Olga Brani
    $('.header .main-actions li:not(.permanent) a').removeClass('active');  
51 5e62e9c1 Olga Brani
    if ( (running*stopped) > 0 ){          
52 e5c8c342 Olga Brani
         $('.main-actions li.both a').addClass('active');
53 e5c8c342 Olga Brani
         $('.main-actions li.single a').removeClass('active');
54 5e62e9c1 Olga Brani
    } else {
55 5e62e9c1 Olga Brani
        if (running > 0) {
56 e5c8c342 Olga Brani
            $('.main-actions li.both a').addClass('active');
57 e5c8c342 Olga Brani
            $('.main-actions li.running a').addClass('active');
58 5e62e9c1 Olga Brani
        } else if (stopped>0) {
59 e5c8c342 Olga Brani
            $('.main-actions li.both a').addClass('active');
60 e5c8c342 Olga Brani
            $('.main-actions li.stopped a').addClass('active');
61 5e62e9c1 Olga Brani
        }
62 5e62e9c1 Olga Brani
        if ( all > 1 ) {
63 e5c8c342 Olga Brani
            $('.main-actions li.single a').removeClass('active');
64 5e62e9c1 Olga Brani
        }
65 5e62e9c1 Olga Brani
    }
66 5e62e9c1 Olga Brani
}
67 a18bd0ed Olga Brani
68 788833c7 Olga Brani
ui.entitiesActionsInit = function(){
69 5e62e9c1 Olga Brani
70 3f3bb937 Olga Brani
    // TODO: refactor this
71 3f3bb937 Olga Brani
    $('.entities a').click(function(){
72 3f3bb937 Olga Brani
        if ($(this).attr('data-reveal-id')) {
73 3f3bb937 Olga Brani
            $('.entities li .more').hide();
74 3f3bb937 Olga Brani
        }
75 3f3bb937 Olga Brani
    })
76 3f3bb937 Olga Brani
77 17ce081a Olga Brani
    if ($('.entities .items-list >li').length == 1) {
78 17ce081a Olga Brani
        $('.overlay-wrapper').addClass('no-vm');
79 17ce081a Olga Brani
    }
80 31d7e532 Olga Brani
    $('.entities li .more').each(function(){
81 31d7e532 Olga Brani
        var width = $(this).parent('li').outerWidth()  + 20;
82 31d7e532 Olga Brani
        $(this).css('width', width);
83 31d7e532 Olga Brani
    })
84 48971921 Olga Brani
    $('.entities li .img-wrap').mouseenter(function(e) {
85 48971921 Olga Brani
        var that = this;
86 48971921 Olga Brani
        setTimeout(function(){
87 48971921 Olga Brani
            if ($(that).closest('.container').siblings('.more').length>0) {
88 48971921 Olga Brani
                $(that).closest('.container').fadeOut(100,'easeInCirc');
89 48971921 Olga Brani
                $(that).closest('.container').siblings('.more').fadeIn(300,'easeInCirc');
90 48971921 Olga Brani
            }
91 48971921 Olga Brani
        },50);
92 31d7e532 Olga Brani
    });
93 31d7e532 Olga Brani
    $('.entities li .more').mouseleave(function(e) {
94 48971921 Olga Brani
        $(this).fadeOut(200, function() {
95 48971921 Olga Brani
            $(this).siblings('.container').fadeIn('fast');
96 31d7e532 Olga Brani
        });
97 31d7e532 Olga Brani
    });
98 48971921 Olga Brani
    $('.entities .items-list > li').mouseleave(function(e){
99 48971921 Olga Brani
        var that = this;
100 48971921 Olga Brani
        setTimeout(function(){
101 48971921 Olga Brani
            $(that).find('.more').fadeOut(200, function() {
102 48971921 Olga Brani
                $(this).siblings('.container').fadeIn('fast');
103 48971921 Olga Brani
            });
104 48971921 Olga Brani
        },100)
105 48971921 Olga Brani
    });
106 5e62e9c1 Olga Brani
}
107 01fa9e32 Olga Brani
108 5acf3fcf Olga Brani
/*
109 5acf3fcf Olga Brani
* In order for the editable value functionality to work, the html markup
110 5acf3fcf Olga Brani
* should be:
111 5acf3fcf Olga Brani
    <div class="editable">
112 5acf3fcf Olga Brani
        <span class="input-txt">editable value</span>
113 5acf3fcf Olga Brani
        <input type="text">
114 5acf3fcf Olga Brani
        <a href="#" class="edit">edit</a>
115 5acf3fcf Olga Brani
        <a href="#" class="save">save</a>
116 5acf3fcf Olga Brani
        <a href="#" class="cancel">cancel</a>
117 5acf3fcf Olga Brani
    </div>
118 5acf3fcf Olga Brani
*/
119 788833c7 Olga Brani
ui.editable = function(){
120 788833c7 Olga Brani
121 788833c7 Olga Brani
/*
122 5acf3fcf Olga Brani
* resetForm hides save and cancel buttons,
123 5acf3fcf Olga Brani
* text input and shows input-txt. resetForm does not alter
124 5acf3fcf Olga Brani
* input-txt content.
125 788833c7 Olga Brani
*/
126 788833c7 Olga Brani
127 788833c7 Olga Brani
    function resetForm(e, elem) {
128 788833c7 Olga Brani
        var el = elem.parents('.editable');
129 788833c7 Olga Brani
        el.find('input[type="text"]').hide();
130 788833c7 Olga Brani
        el.find('a.cancel, a.save').hide();
131 5acf3fcf Olga Brani
        el.find('a.edit, .input-txt').show();
132 788833c7 Olga Brani
    }
133 788833c7 Olga Brani
134 788833c7 Olga Brani
/* 
135 5acf3fcf Olga Brani
* showForm hides input-txt, shows save and cancel buttons and
136 5acf3fcf Olga Brani
* sets input value to input-txt content.
137 788833c7 Olga Brani
*/
138 788833c7 Olga Brani
    function showForm(e,elem) {
139 788833c7 Olga Brani
        e.stopPropagation(); 
140 788833c7 Olga Brani
        e.preventDefault();
141 788833c7 Olga Brani
        var el = elem.parents('.editable'); 
142 788833c7 Olga Brani
        el.find('input[type="text"]').val(el.find('.input-txt').html());
143 788833c7 Olga Brani
        el.find('input[type="text"]').show();
144 788833c7 Olga Brani
        el.find('a.cancel, a.save').show();
145 788833c7 Olga Brani
        elem.hide();
146 788833c7 Olga Brani
        el.find('.input-txt').hide();
147 788833c7 Olga Brani
148 788833c7 Olga Brani
    }
149 788833c7 Olga Brani
150 788833c7 Olga Brani
/*
151 788833c7 Olga Brani
setValue sets input-txt value to the input value.
152 788833c7 Olga Brani
Makes sure that the input value is not empty.
153 788833c7 Olga Brani
TODO:
154 788833c7 Olga Brani
Ajax request to submit form
155 788833c7 Olga Brani
*/
156 788833c7 Olga Brani
157 788833c7 Olga Brani
    function setValue(elem) {
158 788833c7 Olga Brani
        var el = elem.parents('.editable');
159 788833c7 Olga Brani
        if( el.find('input[type="text"]').val() ) {
160 788833c7 Olga Brani
            el.find('.input-txt').html(el.find('input[type="text"]').val());
161 788833c7 Olga Brani
        }
162 788833c7 Olga Brani
    }
163 788833c7 Olga Brani
164 788833c7 Olga Brani
165 788833c7 Olga Brani
    $('.editable .edit').click(function(e){
166 788833c7 Olga Brani
        showForm(e, $(this));
167 788833c7 Olga Brani
    })
168 788833c7 Olga Brani
169 788833c7 Olga Brani
    $('.editable .cancel').click(function(e){
170 788833c7 Olga Brani
        e.stopPropagation();
171 788833c7 Olga Brani
        e.preventDefault();
172 788833c7 Olga Brani
        resetForm(e, $(this));
173 788833c7 Olga Brani
    })
174 788833c7 Olga Brani
175 788833c7 Olga Brani
    $('.editable .save').click(function(e){
176 788833c7 Olga Brani
        e.stopPropagation();
177 788833c7 Olga Brani
        e.preventDefault();
178 788833c7 Olga Brani
        setValue($(this));
179 788833c7 Olga Brani
        resetForm(e, $(this));
180 788833c7 Olga Brani
181 788833c7 Olga Brani
    })
182 788833c7 Olga Brani
183 788833c7 Olga Brani
184 788833c7 Olga Brani
    $('.editable input[type="text"]').click(function(e){
185 788833c7 Olga Brani
        e.stopPropagation();
186 788833c7 Olga Brani
    })
187 788833c7 Olga Brani
188 788833c7 Olga Brani
    $('.editable input[type="text"]').keyup(function(e){
189 788833c7 Olga Brani
        if(e.keyCode == 13) { 
190 788833c7 Olga Brani
            setValue($(this));
191 788833c7 Olga Brani
            resetForm(e, $(this));
192 788833c7 Olga Brani
            
193 788833c7 Olga Brani
        }
194 788833c7 Olga Brani
    
195 788833c7 Olga Brani
    })
196 788833c7 Olga Brani
197 788833c7 Olga Brani
    $('html').click(function(e) {
198 788833c7 Olga Brani
        resetForm(e, $('.editable a.cancel'));
199 788833c7 Olga Brani
    });
200 788833c7 Olga Brani
201 9569cdc8 Olga Brani
}
202 9569cdc8 Olga Brani
203 5acf3fcf Olga Brani
/* TODO: better overlay functionality */
204 9569cdc8 Olga Brani
ui.overlay = function() {
205 9569cdc8 Olga Brani
    $('[data-overlay-id]').click(function(e){
206 9569cdc8 Olga Brani
        e.preventDefault();
207 9569cdc8 Olga Brani
        var el = $(this);
208 9569cdc8 Olga Brani
        var id = el.data('overlay-id');
209 03bcb595 Olga Brani
210 bb8cc1dc Olga Brani
        $('.overlay-area').fadeIn(100);
211 bb8cc1dc Olga Brani
        $('body').addClass('with-overlay');
212 6fcab23b Olga Brani
        $(id).fadeIn('slow');
213 bdf1d2fd Olga Brani
        if (id=='#network-wizard') {
214 bdf1d2fd Olga Brani
            $(id).find('input').first().focus();
215 bdf1d2fd Olga Brani
            return false;
216 bdf1d2fd Olga Brani
        }
217 9b6be833 Olga Brani
        $(id).find('a').first().focus();
218 9569cdc8 Olga Brani
    });
219 788833c7 Olga Brani
}
220 788833c7 Olga Brani
221 5c4713f8 Olga Brani
function goToByScroll(id){
222 5c4713f8 Olga Brani
      // Remove "link" from the ID
223 5c4713f8 Olga Brani
    id = id.replace("link", "");
224 5c4713f8 Olga Brani
      // Scroll
225 5c4713f8 Olga Brani
    $('html,body').animate({
226 5c4713f8 Olga Brani
        scrollTop: $("#"+id).offset().top},
227 5c4713f8 Olga Brani
        'slow');
228 5c4713f8 Olga Brani
}
229 f5321878 Olga Brani
230 f5321878 Olga Brani
231 9b6be833 Olga Brani
/*
232 9b6be833 Olga Brani
* functions concerning checkboxes and radiobuttons links
233 9b6be833 Olga Brani
*/
234 9b6be833 Olga Brani
ui.changeCheckboxState =function(checkbox_link) {
235 9b6be833 Olga Brani
     $(checkbox_link).find('.snf-checkbox-unchecked, .snf-checkbox-checked').toggleClass('snf-checkbox-unchecked snf-checkbox-checked');
236 9b6be833 Olga Brani
}
237 9b6be833 Olga Brani
238 9b6be833 Olga Brani
ui.changeRadiobuttonState = function(radiobtn_link) {
239 9b6be833 Olga Brani
    $(radiobtn_link).find('span.snf-radio-unchecked, span.snf-radio-checked').toggleClass('snf-radio-unchecked snf-radio-checked');
240 9b6be833 Olga Brani
}
241 9b6be833 Olga Brani
242 9b6be833 Olga Brani
ui.checkOneRadioButton = function(radiobtn_link) {
243 9b6be833 Olga Brani
    $(radiobtn_link).closest('ul').find('span.snf-radio-checked').toggleClass('snf-radio-unchecked snf-radio-checked');
244 9b6be833 Olga Brani
}
245 9b6be833 Olga Brani
246 9b6be833 Olga Brani
247 937c0d49 Athina Bekakou
// toggle expand arrrow  and corresponding area
248 937c0d49 Athina Bekakou
// todo: one function for all the areas we reveal
249 937c0d49 Athina Bekakou
ui.expandDownArea = function(arrow_link, area) {
250 937c0d49 Athina Bekakou
    var arrow_link = $(arrow_link);
251 937c0d49 Athina Bekakou
    var area = $(area);
252 937c0d49 Athina Bekakou
            arrow_link.find('span.snf-arrow-up, span.snf-arrow-down').toggleClass('snf-arrow-up snf-arrow-down');
253 937c0d49 Athina Bekakou
            // $('.wizard-content').removeAttr('style');
254 937c0d49 Athina Bekakou
            area.stop().slideToggle(600, function() {
255 e3de445d Athina Bekakou
                if (area.is(':visible')) {
256 937c0d49 Athina Bekakou
                    arrow_link.find('.snf-arrow-down .snf-arrow-up').removeClass('snf-arrow-down').addClass('snf-arrow-up');
257 937c0d49 Athina Bekakou
                } else {
258 937c0d49 Athina Bekakou
                    arrow_link.find('.snf-arrow-down .snf-arrow-up').addClass('snf-arrow-down');
259 937c0d49 Athina Bekakou
                }
260 937c0d49 Athina Bekakou
261 937c0d49 Athina Bekakou
            });
262 937c0d49 Athina Bekakou
}
263 9b6be833 Olga Brani
264 b3c1328b Olga Brani
$(document).ready(function(){
265 b3c1328b Olga Brani
266 283f4927 Olga Brani
267 283f4927 Olga Brani
    $('#hd-search .hd-icon-search').click(function(e){
268 164fdcd9 Olga Brani
        var that = this;
269 283f4927 Olga Brani
        $(this).parents('.hd-search').toggleClass('hd-open');
270 164fdcd9 Olga Brani
        if ($(this).parents('.hd-search').hasClass('hd-open')) {
271 164fdcd9 Olga Brani
            $(that).parents('.hd-search').find('input[type="search"]').focus();
272 164fdcd9 Olga Brani
        } else {
273 164fdcd9 Olga Brani
            $(that).parents('.hd-search').find('input[type="search"]').val('');
274 164fdcd9 Olga Brani
        }
275 283f4927 Olga Brani
    })
276 283f4927 Olga Brani
277 164fdcd9 Olga Brani
278 5acf3fcf Olga Brani
    ui.setSidebarHeight();
279 d3bfabe8 Olga Brani
    ui.closeDiv($('.info .close'), '.info');
280 5acf3fcf Olga Brani
    ui.editable();
281 5acf3fcf Olga Brani
    ui.overlay();
282 4ff5dda5 Athina Bekakou
    ui.colorPickerVisible = 0;
283 d3bfabe8 Olga Brani
284 937c0d49 Athina Bekakou
    $("a.disabled").each(function() {
285 937c0d49 Athina Bekakou
        $(this).removeAttr('href');
286 937c0d49 Athina Bekakou
    });
287 937c0d49 Athina Bekakou
    
288 937c0d49 Athina Bekakou
    $("a.disabled").click(function(e) {
289 937c0d49 Athina Bekakou
        e.preventDefault();
290 937c0d49 Athina Bekakou
    });
291 937c0d49 Athina Bekakou
292 62462e34 Athina Bekakou
    // checkbox: basic reaction on click (checked, unchecked)
293 05205849 Athina Bekakou
    // see wizard
294 62462e34 Athina Bekakou
    $('.check').click(function(e){
295 62462e34 Athina Bekakou
        e.preventDefault();
296 62462e34 Athina Bekakou
        e.stopPropagation();
297 62462e34 Athina Bekakou
        ui.changeCheckboxState(this);
298 62462e34 Athina Bekakou
    });
299 62462e34 Athina Bekakou
300 937c0d49 Athina Bekakou
301 937c0d49 Athina Bekakou
    $('.with-checkbox').click(function(e){
302 937c0d49 Athina Bekakou
        e.preventDefault();
303 937c0d49 Athina Bekakou
        e.stopPropagation();
304 937c0d49 Athina Bekakou
        var checkbox = self.find('.check');
305 937c0d49 Athina Bekakou
        ui.changeCheckboxState(checkbox);
306 937c0d49 Athina Bekakou
    });
307 937c0d49 Athina Bekakou
308 937c0d49 Athina Bekakou
    $('.radio_btn').click(function(e) {
309 937c0d49 Athina Bekakou
        e.preventDefault();
310 937c0d49 Athina Bekakou
         var state = $(this).find('span');
311 937c0d49 Athina Bekakou
         if(state.hasClass('snf-radio-unchecked')) {
312 937c0d49 Athina Bekakou
            ui.checkOneRadioButton(this);
313 937c0d49 Athina Bekakou
            ui.changeRadiobuttonState(this);
314 937c0d49 Athina Bekakou
        }
315 937c0d49 Athina Bekakou
    })
316 937c0d49 Athina Bekakou
317 62462e34 Athina Bekakou
    ui.entitiesActionsInit();
318 d3bfabe8 Olga Brani
    
319 d3bfabe8 Olga Brani
    $('.new-btn a.current').click(function(e){
320 d3bfabe8 Olga Brani
        e.preventDefault();
321 d3bfabe8 Olga Brani
    })
322 d3bfabe8 Olga Brani
323 d3bfabe8 Olga Brani
    $('.main-actions li a').click(function(e){
324 d3bfabe8 Olga Brani
        if (!($(this).hasClass('active'))) {
325 d3bfabe8 Olga Brani
            e.preventDefault();
326 d3bfabe8 Olga Brani
        }
327 d3bfabe8 Olga Brani
    })
328 788833c7 Olga Brani
    $('.scroll-pane').jScrollPane();
329 f2126967 Olga Brani
330 dafb5cab Athina Bekakou
    // $('.main .items-list .title em').each(function(){
331 dafb5cab Athina Bekakou
    //     $(this).html( ui.trimChars($(this).html(), 20) );
332 9569cdc8 Olga Brani
333 dafb5cab Athina Bekakou
    // })
334 9569cdc8 Olga Brani
335 f2126967 Olga Brani
    $('.main-actions li a').click(function(e){
336 f2126967 Olga Brani
        if (!($(this).hasClass('active'))) {
337 f2126967 Olga Brani
            e.preventDefault();
338 f2126967 Olga Brani
        }
339 f2126967 Olga Brani
    })
340 62462e34 Athina Bekakou
    $('.overlay-area').children('.close').click(function(e){
341 9569cdc8 Olga Brani
        e.preventDefault();
342 62462e34 Athina Bekakou
        e.stopPropagation();
343 9569cdc8 Olga Brani
        $(this).parents('.overlay-area').hide();
344 03bcb595 Olga Brani
        $(this).parents('.overlay-area').find($('.overlay-div')).hide();
345 bb8cc1dc Olga Brani
        $('body').removeClass('with-overlay');
346 9569cdc8 Olga Brani
    })
347 f2126967 Olga Brani
348 182f3fe2 Olga Brani
    $('.browse-files').click(function(e){
349 182f3fe2 Olga Brani
        e.preventDefault();
350 182f3fe2 Olga Brani
    })
351 182f3fe2 Olga Brani
352 846f5913 Olga Brani
    Dropzone.options.filesDropzone = {
353 182f3fe2 Olga Brani
        dictDefaultMessage:'',
354 182f3fe2 Olga Brani
        clickable: '.browse-files',
355 846f5913 Olga Brani
        previewsContainer: '.dropzone-files',
356 846f5913 Olga Brani
        createImageThumbnails: false,
357 846f5913 Olga Brani
        dictRemoveFile: "snf-Remove file",
358 182f3fe2 Olga Brani
    };
359 182f3fe2 Olga Brani
360 342fa48b Olga Brani
361 342fa48b Olga Brani
    $('.main .files').magnificPopup({
362 342fa48b Olga Brani
        delegate: 'a.show.image',
363 342fa48b Olga Brani
        type: 'image',
364 342fa48b Olga Brani
        tLoading: 'Loading image #%curr%...',
365 342fa48b Olga Brani
        mainClass: 'mfp-img-mobile',
366 342fa48b Olga Brani
        gallery: {
367 342fa48b Olga Brani
            enabled: true,
368 342fa48b Olga Brani
            navigateByImgClick: true,
369 342fa48b Olga Brani
            preload: [0,1] // Will preload 0 - before current, and 1 after the current image
370 342fa48b Olga Brani
        },
371 342fa48b Olga Brani
        image: {
372 bb8cc1dc Olga Brani
            tError: 'The image could not be loaded.',
373 342fa48b Olga Brani
            titleSrc: function(item) {
374 342fa48b Olga Brani
                return item.el.data('title');
375 342fa48b Olga Brani
            }
376 342fa48b Olga Brani
        }
377 342fa48b Olga Brani
    });
378 342fa48b Olga Brani
379 62462e34 Athina Bekakou
    if($('#picker').length>0) {
380 62462e34 Athina Bekakou
        $('#picker').farbtastic('#color');
381 62462e34 Athina Bekakou
    };
382 f2380a69 Athina Bekakou
    if($('#sb-search').length>0) {
383 f2380a69 Athina Bekakou
        new UISearch( document.getElementById( 'sb-search' ) );
384 f2380a69 Athina Bekakou
    }
385 026edcbc Olga Brani
386 026edcbc Olga Brani
387 026edcbc Olga Brani
    /* grid/list view for items-list */
388 026edcbc Olga Brani
389 026edcbc Olga Brani
    $('.view-type .list').click(function(e){
390 026edcbc Olga Brani
        e.preventDefault();
391 026edcbc Olga Brani
        $('.view-type .grid span').removeClass('current');
392 026edcbc Olga Brani
        $(this).find('span').addClass('current');
393 026edcbc Olga Brani
        $('.items-list').removeClass('small-block-grid-2 large-block-grid-3');
394 026edcbc Olga Brani
        $('.items-list').addClass('list-view');
395 775d43ea Athina Bekakou
    });
396 026edcbc Olga Brani
397 026edcbc Olga Brani
     $('.view-type .grid').click(function(e){
398 026edcbc Olga Brani
        e.preventDefault();
399 026edcbc Olga Brani
        $('.view-type .list span').removeClass('current');
400 026edcbc Olga Brani
        $(this).find('span').addClass('current');
401 026edcbc Olga Brani
        $('.items-list').addClass('small-block-grid-2 large-block-grid-3');
402 026edcbc Olga Brani
        $('.items-list').removeClass('list-view');
403 775d43ea Athina Bekakou
    });
404 775d43ea Athina Bekakou
405 775d43ea Athina Bekakou
    // set filter visible
406 775d43ea Athina Bekakou
    $('.filter-menu .filter').click(function(e) {
407 775d43ea Athina Bekakou
        e.preventDefault();
408 283f4927 Olga Brani
        $(this).parents('.filter-menu').toggleClass('current');
409 d4427ef0 Athina Bekakou
    });
410 d4427ef0 Athina Bekakou
411 d4427ef0 Athina Bekakou
    // temp function used to demonstrate the visual effect of the building state of vm
412 d4427ef0 Athina Bekakou
    $('.btn5.temp').click(function(e) {
413 d4427ef0 Athina Bekakou
        e.preventDefault();
414 d4427ef0 Athina Bekakou
        $(this).siblings('.container').find('.complete').toggleClass('build-progress');
415 026edcbc Olga Brani
    })
416 98714f8a Olga Brani
})
417 b3c1328b Olga Brani
418 9569cdc8 Olga Brani
419 98714f8a Olga Brani
$(window).resize(function(e){
420 d3bfabe8 Olga Brani
    ui.setSidebarHeight();
421 e106fc8f Olga Brani
    $('.scroll-pane').jScrollPane();
422 b3c1328b Olga Brani
})