window.random_images = {
       cookie_time: 1000 * 60 * 2,
       cookie_names: ['random_image_addrs', 'random_image_indexes'],
       random_images_counter: 0,
       path: '/images/banart/header/',
       list: 'header_01.jpg header_02.jpg header_03.jpg header_04.jpg'.split(' ')
       }

Object.prototype.in_array = function(str) {
       var flag = false;
       for(i = 0; i < this.length; i++) {
              if(str == this[i]) {
                     flag = true;
                     break;
                     }
              }
       return flag;
       }
Object.prototype.array_search = function(value) {
       flag = false;
       for(i = 0; i < this.length; i++) {
              if(this[i] == value) {
                     flag = i;
                     break;
                     }
              }
       return flag;
       }
Object.prototype.sort_random = function() {
       for(i = 0; i < this.length; i++) {
              rand1 = Math.round(Math.random() * (this.length - 1) );
              rand2 = Math.round(Math.random() * (this.length - 1) );
              value1 = this[rand1];
              value2 = this[rand2];
              this[rand1] = value2;
              this[rand2] = value1;
       }
       return this;
}


// Functions for work with cookie
function setCookie(n,v,t) {
     t = t || 0;
     d = (new Date((new Date()).getTime() + t)).toUTCString();
     document.cookie = n + '=' + v + ';expires=' + d;
     }

function getCookie(parse_obj) {
       parse_obj = parse_obj || [];
       cookies = document.cookie.split('; ');

       if(document.cookie && cookies.length > 0) {
              for(i = 0; i < cookies.length; i++) {
                     params = cookies[i].split('=');
                     if(params[0] == parse_obj) {
                            parse_obj = params[1];
                            break;
                            }
                     else if(typeof parse_obj == 'object') parse_obj.push([ params[1] ]);
                     }
              }
       return parse_obj;
       }

// Random bgc...
function set_random_bgc(obj_id) {
       obj = document.getElementById(obj_id);
       addr = location.href;
       if(getCookie(random_images.cookie_names[0]) != random_images.cookie_names[0]) {
              addrs = getCookie(random_images.cookie_names[0]).split(',');
              indexes = getCookie(random_images.cookie_names[1]).split(',');
              
              if(addrs.in_array(addr)) {
                     obj.style.backgroundImage = 'url("'+ random_images.path + random_images.list[ indexes[ addrs.array_search(addr) ] ] +'")';
                     }
              else {
                     // new random index...
                     while(1) {
                            rand = Math.round(Math.random() * (random_images.list.length - 1));
                            if(!indexes.in_array(rand)) {
                                   break;
                                   }
                            }
                     // set attributes...
                     addrs.push(addr);
                     indexes.push(rand);
                     setCookie(random_images.cookie_names[0], addrs, random_images.cookie_time);
                     setCookie(random_images.cookie_names[1], indexes, random_images.cookie_time);
                     obj.style.backgroundImage = 'url("'+ random_images.path + random_images.list[rand] +'")';
                     }
              
              }
       else {
              index = Math.round(Math.random() * (random_images.list.length - 1));
              setCookie(random_images.cookie_names[0], [addr], random_images.cookie_time);
              setCookie(random_images.cookie_names[1], [index], random_images.cookie_time);
              obj.style.backgroundImage = 'url("'+ random_images.path + random_images.list[index] +'")';
              }
       }
