$(document).ready(function(){ var Paging = function(parameters){ var _page_per_view = 25.0; //var _rows_per_page = ""; var _current_page=1; //var _record_count = 100; var _goto_page= 'gotoPage'; var _render_top = null; var _render_bottom = null; //constructor function var _Paging = function(parameters){ if (parameters.page_per_view !=null){ _page_per_view = parameters.page_per_view; } if (parameters.rows_per_page !=null){ _rows_per_page = parameters.rows_per_page; } if (parameters.render_top != null){ _render_top = parameters.render_top; } if (parameters.render_bottom != null){ _render_bottom = parameters.render_bottom; } if (parameters.record_count > 0){ _record_count = parameters.record_count; } if (parameters.current_page){ _current_page = parameters.current_page; } if (parameters.on_success){ _goto_page = parameters.on_success; } } this.getCurrentPage = function(){ return _current_page; } this.setCurrentPage = function(current_page){ _current_page = current_page }; this.getRecordCount = function(){ return _record_count; } this.setRecordCount = function(record_count){ _record_count = record_count }; this.getRowsPerPage = function(){ return _rows_per_page; } this.setRowsPerPage = function(rows_per_page){ _rows_per_page = rows_per_page }; this.getGotoPage = function(){ return _goto_page; } this.setGotoPage = function(goto_page){ _goto_page = goto_page }; this.getRowStart = function(){ return (_current_page * _rows_per_page) - _rows_per_page + 1; } this.getRowEnd = function(){ return _current_page * _rows_per_page; } this.getNextPage = function(){ return _current_page + 1; } this.getPreviousPage = function(){ return _current_page - 1; } this.getTotalPages = function(){ //var result = (_record_count / _rows_per_page) + (_record_count % _rows_per_page == 0? 0: 1); var result = _record_count / _page_per_view; //result = Math.floor(result); result = Math.ceil(result); //result = parseInt(result,10); //disregard the decimal points return result; } this.getCountStart = function(){ var page_no = _current_page; page_no = parseFloat(page_no); page_no = Math.ceil( (page_no / (_page_per_view))) -1 ; page_no = (page_no * _page_per_view) + 1; return page_no ; //return Math.ceil( (page_no / (_page_per_view))) ; //return (((_current_page - 1 )/ _page_per_view) * _page_per_view) + 1 ; } this.getCountEnd = function(){ var count_end = this.getCountStart() + _page_per_view; if(count_end > this.getTotalPages()){ count_end = Number(this.getTotalPages()) + 1; } return count_end; } //Output: [<< < Page 1 2 3 4 5 6 7 8 9 10 11 > >>] this.getPagingStyle2 = function(){ var goto_page = this.getGotoPage(); var current_page = this.getCurrentPage(); //var count_start = this.getCountStart(); var count_start = 1; //var count_end = this.getCountEnd(); var count_end = this.getTotalPages(); var previous_page = Number(this.getCurrentPage()) - 1; var next_page = Number(this.getCurrentPage()) + 1 ; var first_page = 1; var last_page = this.getTotalPages(); var paging =''; var link_page=''; var link_first_page=''; var link_prev_page=''; var link_last_page =''; var link_next_page='' var link_param_others = '"' + this.getRecordCount() + '","' + goto_page + '","' + _render_top + '","' + _render_bottom + '"'; var params = 'render_top:"' + _render_top + '",' + 'render_bottom:"' + _render_bottom + '",' + 'goto_page:"' + goto_page + '",' + 'record_count:"' + this.getRecordCount() + '"' ; //alert("count_start="+count_start +" count_end-1="+ (count_end-1)); //for (var i=count_start; i' + (((i-1)*_page_per_view)+1) + '-' + (i*_page_per_view) + ' |'; }else{ link_page = 'javascript:' + goto_page + '({on_success:"' + i + '",'+ params + '})'; paging = paging + " " + (((i-1)*_page_per_view)+1) + "-" + (i*_page_per_view) + " | "; } if (i==1 && current_page > 3){ paging = paging + "..." } if (i == current_page-2 && current_page > 3){ paging = paging + "" } curr2 = ((current_page)*1.0)+1.0; if (i == curr2){ paging = paging + "..." } if (i == last_page-1){ paging = paging + "" } } if (current_page>1){ link_page = 'javascript:' + goto_page + '({on_success:"' + first_page + '",' + params + '})'; link_first_page = ""+ first_page + "-" + (first_page*_page_per_view) + ""; link_page = 'javascript:' + goto_page + '({on_success:"' + previous_page + '",' + params + '})'; link_prev_page = "«Edellinen"; //add first and last page //paging = link_prev_page + ' ' + link_first_page + ' ' + paging ; paging = link_prev_page + paging ; } if (current_page !=last_page){ link_page = 'javascript:' + goto_page + '({on_success:"' + last_page + '",' + params + '})'; link_last_page = "" + ((last_page*_page_per_view)-(_page_per_view -1)) + "-" + parameters.record_count + ""; link_page = 'javascript:' + goto_page + '({on_success:"' + next_page + '",' + params + '})'; link_next_page = "Seuraava»"; paging = paging + ' ' + link_last_page + ' ' + link_next_page; } else if (current_page == last_page){ link_page = 'javascript:' + goto_page + '({on_success:"' + last_page + '",' + params + '})'; link_last_page = "" + ((last_page*_page_per_view)-(_page_per_view -1)) + "-" + parameters.record_count + ""; link_page = 'javascript:' + goto_page + '({on_success:"' + next_page + '",' + params + '})'; paging = paging + ' ' + link_last_page; } //paging = 'Kommentit ' + paging; //render the paging (at the top) if (_render_top !=null){ document.getElementById(_render_top).innerHTML = paging; } //render the paging (at the bottom) //if (_render_bottom !="null"){ var bottom_page_exist = document.getElementById(_render_bottom); if (bottom_page_exist){ //alert(_render_bottom); document.getElementById(_render_bottom).innerHTML = paging; }else{ //alert(document.getElementById(_render_bottom) ); } } //call the constructor _Paging(parameters); if (_record_count>0){ this.getPagingStyle2(); }else{ if (_render_top){ document.getElementById(_render_top).innerHTML = 'NO DATA AVAILABLE'; } //render the paging (at the bottom) if (_render_bottom){ document.getElementById(_render_bottom).innerHTML ='NO DATA AVAILABLE'; } } } function revealAllPages(){ var pagingCont = document.getElementById('paging1'); if (pagingCont){ var pagingSpans = pagingCont.getElementsByTagName('span'); var pagingReveal = pagingCont.getElementsByTagName('a'); for(i in pagingSpans){ if(pagingSpans[i].style){ pagingSpans[i].style.display = 'inline' } } for(j in pagingReveal){ if(pagingReveal[j].className=='revealAll'){ pagingReveal[j].style.display = 'none' } } } } function clearField(field){ if(field){ field.value=""; field.style.color="#000000"; return true; } return false; } $(".siteMap_level1").addClass('closed'); var $sitemapItem = $(".siteMap_level1 > li > span.openClose"); $sitemapItem.click(function() { if($(this).parents('ul:first').is('.closed')){ $(this).parents('ul:first').removeClass('closed').addClass('open'); }else if($(this).parents('ul:first').is('.open')){ $(this).parents('ul:first').removeClass('open').addClass('closed'); } }); var $toggleView = $("#toggleView a"); var $expandAll = $("#expand"); var $collapseAll = $("#collapse"); var $expandedText = $expandAll.text(); var $collapsedText = $collapseAll.text(); $expandAll.addClass('visible'); $toggleView.click(function() { if($(this).is('#expand')){ $(this).removeClass('visible') $collapseAll.addClass('visible'); $collapseAll.html($collapsedText); $('.siteMap_level1').removeClass('closed').addClass('open'); }else{ $(this).removeClass('visible') $expandAll.addClass('visible'); $expandAll.html($expandedText); $('.siteMap_level1').removeClass('open').addClass('closed'); } }); $(".linkBox.navBox.services ul ul").addClass('closed'); $(".linkBox.navBox.services .serviceContainer.twoLevel").addClass('open'); var $navItem = $(".linkBox.navBox.services span.openClose"); $navItem.next().addClass('toggle_sub_level_visibility'); if($(".linkBox.navBox.services li").is('.selected')){ var $navItemSelected = $(".linkBox.navBox.services li.selected"); $navItemSelected.parents('ul').removeClass('closed').addClass('open'); $navItemSelected.parents('li').addClass('selected').children('.openClose').removeClass('plus').addClass('minus'); $(".serviceContainer > li > ul").removeClass('closed').addClass('open'); $(".serviceContainer.twoLevel > li > ul").removeClass('open').addClass('closed'); $navItemSelected.children('ul').removeClass('closed').addClass('open'); $navItemSelected.children('.openClose').removeClass('plus').addClass('minus'); } if($(".serviceContainer.twoLevel li").is('.selected')){ var $navItemSelected = $(".serviceContainer.twoLevel li.selected"); $navItemSelected.parents('ul').removeClass('closed').addClass('open'); $navItemSelected.parents('li').addClass('selected').children('.openClose').removeClass('plus').addClass('minus'); } $navItem.click(function() { if($(this).siblings('ul:first').is('.closed')){ $(this).siblings('ul:first').removeClass('closed').addClass('open'); $(this).removeClass('plus').addClass('minus'); $(this).parents('li:first').addClass('selected'); }else if($(this).siblings('ul:first').is('.open')){ $(this).siblings('ul:first').removeClass('open').addClass('closed'); $(this).removeClass('minus').addClass('plus'); $(this).parents('li:first').removeClass('selected'); } }); var $clearMunicipalityAndSubmit = $(".clearMunicipality > a"); $clearMunicipalityAndSubmit.click(function() { if ($("#chooseMunicipality")){ $("#chooseMunicipality").val(""); $clearMunicipalityAndSubmit.parents('form:first').submit(); return true; } return false; }); });