
    var g_slideup_timer    = null;
    var g_slidedown_timer  = null;
    var g_slideleft_timer  = null;
    var g_slideright_timer = null;

    var g_slideup_timer_b    = false;
    var g_slidedown_timer_b  = false;
    var g_slideleft_timer_b  = false;
    var g_slideright_timer_b = false;

    var g_delay_time         = 1000;

    var g_point_timer        = null;
    var g_timer_enabled      = false;

    var g_allow = false;

    function debug( msg )
    {
//        window.status = msg;
    }

    function getItem ( objID )
    {
        if ( document.getElementById( objID ) ) {
            return document.getElementById( objID );
        } // if
        return null;
    }
    // }}} getItem

    var g_point = null;
    var g_id    = null;

    function Over( _id )
    {
        var obj = getItem( 'm_' + _id );
        if ( obj ) {
            g_point = getRealPos( obj );
            g_id = _id;
            obj.className = 'cm-item5';
        } // if
    }

    function Out( _id )
    {
        var obj = getItem( 'm_' + _id );
        if ( obj ) {
            obj.className = 'cm-item1';
        } // if
    }

    // {{{ getRealPos
    /**
     * Получить реальные координаты объекта
     */
    function getRealPos( obj )
    {
        if ( obj ) {
            var _left = 0;
            var _top  = 0;

            var point = new Array( );

            point[ 'right'  ] = obj.offsetWidth;
            point[ 'bottom' ] = obj.offsetHeight;

            do {
                _left += obj.offsetLeft;
                _top  += obj.offsetTop;
            } while( ( obj = obj.offsetParent ) != null );

            point[ 'left' ]   = _left;
            point[ 'top'  ]   = _top;
            point[ 'right'  ] += _left;
            point[ 'bottom' ] += _top;

            return point;
        }
        return null;
    }
    // }}} getRealPos

    document.onmousemove = move;

    function move(e)
    {
        oCanvas = document.getElementsByTagName(
        (document.compatMode && document.compatMode == "CSS1Compat") ? "HTML" : "BODY"
        )[0];
        x = window.event ? event.clientX + oCanvas.scrollLeft : e.pageX;
        y = window.event ? event.clientY + oCanvas.scrollTop : e.pageY;
        if ( g_point ) {
            if ( (x < g_point[ 'left' ]) || (x > g_point[ 'right' ] ) ||
                 (y+10 < g_point[ 'top' ]) || (y > g_point[ 'bottom' ] )
               ) {
                Out( g_id )
            } // if
        } // if

        if ( g_point_timer ) {
            if ( (x < g_point_timer[ 'left' ]) || (x > g_point_timer[ 'right' ] ) ||
                 (y+10 < g_point_timer[ 'top' ]) || (y > g_point_timer[ 'bottom' ] )
               ) {
                debug( 'g_timer_enabled = false' );
                g_timer_enabled = false;
                g_allow = false;
                window.clearTimeout( g_slideup_timer );
                window.clearTimeout( g_slidedown_timer );
                window.clearTimeout( g_slideleft_timer );
                window.clearTimeout( g_slideright_timer );
                slideright_m2();
                slideleft_m2();
                slideup_m2();
                slidedown_m2();
            } // if
        } // if
    }

    var g_count_hor = 0;
    var g_index_hor = 0;
    var g_indexs_hor = null;

    function init_hor( count, _data )
    {
        g_count_hor = count;
        g_indexs_hor = _data;
    }

    var g_count = 0;
    var g_first_index = 0;
    var g_offset = 6;

    function init( count, start )
    {
        g_count = count;
        g_first_index = start;

        for ( i = 0 ; i <= start ; i ++) {
            var obj = getItem( 's_' + i );
            if ( obj ) {
                obj.style.display = 'none';
            }
        } // if

        for ( i = start + g_offset + 1 ; i <= count ; i ++) {
            var obj = getItem( 's_' + i );
            if ( obj ) {
                obj.style.display = 'none';
            }
        } // if
    }


    function slideup( timer )
    {
        if ( g_allow == false ) {
            return false;
        } // if
        if ( g_first_index < (g_count - g_offset)) {

            g_first_index ++ ;
            var obj = getItem( 's_' + g_first_index );
            if ( obj ) {
                obj.style.display = 'none';
            }
            var obj = getItem( 's_' + (g_first_index + g_offset) );
            if ( obj ) {
                obj.style.display = '';
            }
        } // if
        if ( timer ) {
            if ( g_slideup_timer_b && g_timer_enabled ) {
                g_slideup_timer = window.setTimeout( 'slideup(true)', g_delay_time ) ;
            }
            else {
              window.clearTimeout( g_slideup_timer );
            }
        } // if
        savePositionv( g_first_index );
        return false;
    }

    function slidedown( timer )
    {
        if ( g_allow == false ) {
            return false;
        } // if
        if ( g_first_index > 0 ) {
            var obj = getItem( 's_' + g_first_index );
            if ( obj ) {
                obj.style.display = '';
             } // if
            var obj = getItem( 's_' + (g_first_index + g_offset) );
            if ( obj ) {
                obj.style.display = 'none';
            } // if
            g_first_index -- ;
        } // if
        if ( timer ) {
            if ( g_slidedown_timer_b && g_timer_enabled ) {
                g_slidedown_timer = window.setTimeout( 'slidedown(true)', g_delay_time ) ;
            }
            else {
              window.clearTimeout( g_slidedown_timer );
            }
        } // if
        savePositionv( g_first_index );
        return false;
    }

    var g_v_count = 0;
    var g_v_first_index = 0;
    var g_v_offset = 18;

    function init_v( count, start )
    {
        g_v_count = count;
        g_v_first_index = start;

        for ( i = 0 ; i <= start ; i ++) {
            var obj = getItem( 'v_' + i );
            if ( obj ) {
                obj.style.display = 'none';
            }
        } // if

        for ( i = start + g_v_offset + 1 ; i <= count ; i ++) {
            var obj = getItem( 'v_' + i );
            if ( obj ) {
                obj.style.display = 'none';
            }
        } // if
    }

    function slideleft( timer )
    {
        if ( g_allow == false ) {
            return false;
        } // if
        if ( g_v_first_index < (g_v_count - g_v_offset)) {
            g_v_first_index ++ ;
            var obj = getItem( 'v_' + g_v_first_index );
            if ( obj ) {
                obj.style.display = 'none';
            }
            var obj = getItem( 'v_' + (g_v_first_index + g_v_offset) );
            if ( obj ) {
                obj.style.display = '';
            }
        } // if
        if ( timer ) {
            if ( g_slideleft_timer_b && g_timer_enabled ) {
                g_slideleft_timer = window.setTimeout( 'slideleft(true)', g_delay_time ) ;
            }
            else {
              window.clearTimeout( g_slideleft_timer );
            }
        } // if
        savePosition( g_v_first_index );
        return false;
    }

    function slideright( timer )
    {
        if ( g_allow == false ) {
            return false;
        } // if
        if ( g_v_first_index > 0 ) {
            var obj = getItem( 'v_' + g_v_first_index );
            if ( obj ) {
                obj.style.display = '';
             } // if
            var obj = getItem( 'v_' + (g_v_first_index + g_v_offset) );
            if ( obj ) {
                obj.style.display = 'none';
            } // if
            g_v_first_index -- ;
        } // if

        if ( timer ) {
            if ( g_slideright_timer_b && g_timer_enabled ) {
                g_slideright_timer = window.setTimeout( 'slideright(true)', g_delay_time ) ;
            }
            else {
              window.clearTimeout( g_slideright_timer );
            }
        } // if
        savePosition( g_v_first_index );
        return false;
    }

    function f1()
    {
        slidedown_m();
    }

    function f2()
    {
        slideup_m();
    }

    /**
     * DOWN
     */
    function slidedown_m()
    {
        g_allow = true;
        var obj = getItem( 'slidedown_m' );
        if ( obj ) {
            g_point_timer = getRealPos( obj );
            obj.src = '/images/upa.gif';
            g_slidedown_timer_b = true;
            g_timer_enabled = true;
            slidedown( true );
        } // if
    }

    function slidedown_m2(e)
    {
        g_allow = false;
        var obj = getItem( 'slidedown_m' );
        if ( obj ) {
            obj.src = '/images/up.gif';
            if ( g_slidedown_timer ) {
                g_slidedown_timer_b = false;
                window.clearTimeout( g_slidedown_timer );
                g_slidedown_timer = null;
            } // if
        } // if
    }

    /**
     * UP
     */
    function slideup_m()
    {
        g_allow = true;
        var obj = getItem( 'slideup_m' );
        if ( obj ) {
            g_point_timer = getRealPos( obj );
            obj.src = '/images/downa.gif';
            g_slideup_timer_b = true;
            g_timer_enabled = true;
            slideup( true );
        } // if
    }

    function slideup_m2(e)
    {
        g_allow = false;
        var obj = getItem( 'slideup_m' );
        if ( obj ) {
            obj.src = '/images/down.gif';
            if ( g_slideup_timer ) {
                g_slideup_timer_b = false;
                window.clearTimeout( g_slideup_timer );
                g_slideup_timer = null;
            } // if
        } // if
    }

    /**
     * Left
     */
    function slideleft_m()
    {
        g_allow = true;
        var obj = getItem( 'slideleft_m' );
        if ( obj ) {
            g_point_timer = getRealPos( obj );
            obj.src = '/images/arrow_right_a.gif';
             debug( 'g_slideleft_timer_b = true' );
             g_slideleft_timer_b = true;
            g_timer_enabled = true;
            slideleft( true );
        } // if
    }

    function slideleft_m2(e)
    {
        g_allow = false;
        var obj = getItem( 'slideleft_m' );
        if ( obj ) {
            obj.src = '/images/arrow_right.gif';
            if ( g_slideleft_timer ) {
                debug( 'g_slideleft_timer_b = false' );
                 g_slideleft_timer_b = false;
                window.clearTimeout( g_slideleft_timer );
                g_slideleft_timer = null;
            } // if
        } // if
    }

    /**
     * Right
     */
    function slideright_m()
    {
        g_allow = true;
        var obj = getItem( 'slideright_m' );
        if ( obj ) {
            g_point_timer = getRealPos( obj );
            obj.src = '/images/arrow_left_a.gif';
            g_slideright_timer_b = true;
            g_timer_enabled = true;
            slideright( true );
        } // if
    }

    function slideright_m2(e)
    {
        g_allow = false;
        var obj = getItem( 'slideright_m' );
        if ( obj ) {
            obj.src = '/images/arrow_left.gif';
            if ( g_slideright_timer ) {
                g_slideright_timer_b = false;
                window.clearTimeout( g_slideright_timer );
                g_slideright_timer = null;
            } // if
        } // if
    }

    function v1()
    {
        slideright_m();
    }

    function v2()
    {
        slideleft_m();
    }

    function Over2(id, path)
    {
        var obj = getItem( 'img_' + id );
        if ( obj ) {
            obj.src = path;
            obj.style.border = '1px solid red';
        } // if
    }

    function Out2(id, path)
    {
        var obj = getItem( 'img_' + id );
        if ( obj ) {
            obj.src = path;
            obj.style.border = '1px solid #909090';
        } // if
    }




    $(document).ready(function()
    {
      $("#pImage").load(function(){
          $("#pWorkPlace").unblock();
      });
      $.extend($.blockUI.defaults.overlayCSS, { backgroundColor: "#000" });
            $("a[@foo=pBla]").click(function(){
                var p=$(this).attr("jId");
                var d=$(this).attr("pId");

                var hor_found = false;
                var pNext=$(this).attr('pNext');
                if ( pNext ) {
                    if ( g_index_hor >= g_count_hor - 1 ) {
                        return false;
                    } // if
                    g_index_hor ++ ;
                    p = g_indexs_hor[ g_index_hor ];
                    hor_found = true;
                } // if

                var pPrev=$(this).attr('pPrev');
                if ( pPrev ) {
                    if ( g_index_hor < 1 ) {
                        var btn = getItem( 'prev_btn' );
                        return false;
                    } // if
                    g_index_hor -- ;
                    p = g_indexs_hor[ g_index_hor ];
                    hor_found = true;
                } // if

                if ( hor_found == false ) {
                    for(_index in g_indexs_hor) {
                        if ( g_indexs_hor[ _index ] == p ) {
                            g_index_hor = _index ;
                        } // if
                    } // for
                }

                var t_ind = parseInt(g_index_hor) + 1;
                for ( var i = 1 ; i <= g_count_hor ; i ++ ) {
                    var obj = getItem( 'mnav_' + i );
                    if ( obj ) {
                        if ( i == t_ind ) {
                            obj.className = 'cm-item1_';
                        }
                        else {
                            obj.className = 'cm-item6';
                        } // if
                    } // if
                } // for

                if ($("#pImage").attr("src")!="/userfiles/portfolio/" + d + "/b/"+p+".jpg") {
                    $("#pWorkPlace").block("<img src='/images/loading.gif'>", { backgroundColor: "#fff", color: "#fff", width: "417px", height: "376px" });
                    $("#pImage").attr("src","/userfiles/portfolio/" + d + "/b/"+p+".jpg");
                }
                return false;
            });
    });

    function setCookie(name,value,days, hours, minutes){	// ъБРЙУШ cookie
          //alert('value='+value)
      	if (days || hours || minutes) {
      	    var date = new Date();
      	    days = days ? days : 0
      	    hours = hours ? hours :0
      	    minutes = minutes ? minutes : 0
      	    date.setTime(date.getTime()+ 60*1000*(minutes+60*(hours+ 24*days)))
      	    var expires = "; expires="+date.toGMTString()
      	}
      	else expires = ""
      	    document.cookie = name+"="+escape(value)+expires+"; path=/"
    }

    function savePosition( pos )
    {
        setCookie('WeembleMenuStatus', pos, 1, 2, 45);
//	window.status = document.cookie;
    }

    function savePositionv( pos )
    {
        setCookie('WeembleMenuVStatus', pos, 1, 2, 45);
    }

    function hasClass( id, className )
    {
      var obj = document.getElementById( id );
      if ( obj ) {
        var classes = obj.className.split( ' ' );
        for ( var i = 0 ; i < classes.length ; i++ ) {
          if ( classes[ i ] == className ) {
              return true;
          }
        }
        return false;
      } else {
        alert( "Объекта " + names[ i ] + " нет, обратитесь к администратору" );
        return false;
      }
    }

    function addClass( id, classname )
    {
      var obj = document.getElementById( id );
      if ( obj ) {
        obj.className = classname + ' ' + obj.className;
      } else {
        alert( "Объекта " + names[ i ] + " нет, обратитесь к администратору" );
        return false;
      }
    }

    function removeClass( id, className )
    {
      var obj = document.getElementById( id );
      if ( obj ) {
        var classes = obj.className.split( ' ' );
        for ( var i = 0 ; i < classes.length ; i++ ) {
          if ( classes[ i ] == className ) {
              classes.splice( i, 1 );
              obj.className = classes.join( ' ' );
              return true;
          }
        }
        return false;
      } else {
        alert( "Объекта " + names[ i ] + " нет, обратитесь к администратору" );
        return false;
      }
    }

    function clearIfEqual( id, value, classname )
    {
      var obj = document.getElementById( id );
      if ( obj ) {
        if ( obj.value == value ) {
          if ( classname != undefined ) {
            if ( hasClass( id, classname ) ) {
              removeClass( id, classname );
              obj.value = '';
            }
          } else {
            obj.value = '';
          }
          return true;
        }
        return false;
      } else {
          alert( "Объекта " + names[ i ] + " нет, обратитесь к администратору" );
          return false;
      }
    }

    function setIfEmpty( id, value, classname )
    {
      var obj = document.getElementById( id );
      if ( obj ) {
        if ( obj.value.length == 0 ) {
          if ( classname != undefined ) {
            addClass( id, classname );
          }
          obj.value = value;
          return true;
        }
        return false;
      }
      else {
          alert( "Объекта " + names[ i ] + " нет, обратитесь к администратору" );
          return false;
      }
    }

    function clearFields( ids, classname )
    {
      ids = ids.split( ',' );
      for ( var i = 0 ; i < ids.length ; i++ ) {
        var id = ids[ i ].split( ':' );
        var value = id[ 1 ];
        var id = id[ 0 ];
        var obj = document.getElementById( id );
        if ( obj ) {
          if ( !hasClass( id, classname ) ) {
            addClass( id, classname );
          }
          obj.value = value;
        }
        else {
          alert( "Объекта " + names[ i ] + " нет, обратитесь к администратору" );
          return false;
        }
      }
    }

    function classVerifyForm( ids, classname )
    {
      ids = ids.split( ',' );
      for ( var i = 0 ; i < ids.length ; i++ ) {
        var obj = document.getElementById( ids[ i ] );
        if ( obj ) {
          if ( hasClass( ids[ i ], classname ) ) {
            return false;
          }
        }
        else {
          alert( "Объекта " + names[ i ] + " нет, обратитесь к администратору" );
          return false;
        }
      }
      return true;
    }

    function post2( wm_message, dest_class )
    {
      document.contacts_frm.wm_message.value = wm_message;
      document.contacts_frm.class_id.value = dest_class;
      document.contacts_frm.parent_id.value = 1;
      document.contacts_frm.submit();
    }
