Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.AttributeCollection = function(owner) { this._owner = owner; this._data = {}; this._keys = []; }
NestleAustralia.SharePoint.Controls.Navigation.AttributeCollection.prototype = { getAttribute: function(key) { return this._data[key]; }, setAttribute: function(key, value) { this._add(key, value); var attributeEntry = {}; attributeEntry[key] = value; this._owner._notifyPropertyChanged("attributes", attributeEntry); }, _add: function(key, value) {
    if (Array.indexOf(this._keys, key) < 0)
        Array.add(this._keys, key); this._data[key] = value;
}, removeAttribute: function(key) { Array.remove(this._keys, key); delete this._data[key]; }, _load: function(json, wcf) {
    if (wcf) {
        for (var i = 0, l = json.length; i < l; i++)
            this._add(json[i].Key, json[i].Value);
    }
    else {
        for (var key in json)
            this._add(key, json[key]);
    } 
}, get_count: function() { return this._keys.length; } 
}
NestleAustralia.SharePoint.Controls.Navigation.AttributeCollection.registerClass('NestleAustralia.SharePoint.Controls.Navigation.AttributeCollection'); Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.JavaScriptSerializer = { _stringRegEx: new RegExp('["\b\f\n\r\t\\\\\x00-\x1F]', 'i'), serialize: function(object) { var stringBuilder = new NestleAustralia.SharePoint.Controls.Navigation.StringBuilder(); NestleAustralia.SharePoint.Controls.Navigation.JavaScriptSerializer._serializeWithBuilder(object, stringBuilder); return stringBuilder.toString(); }, _serializeWithBuilder: function(object, stringBuilder) {
    var i; switch (typeof object) {
        case 'object': if (object) {
                if (object.constructor == Array) {
                    stringBuilder.append('['); for (i = 0; i < object.length; ++i) {
                        if (i > 0) { stringBuilder.append(','); }
                        this._serializeWithBuilder(object[i], stringBuilder);
                    }
                    stringBuilder.append(']');
                }
                else {
                    if (object.constructor == Date) { stringBuilder.append('"\\/Date('); stringBuilder.append(object.getTime()); stringBuilder.append(')\\/"'); break; }
                    var properties = []; var propertyCount = 0; for (var name in object) {
                        if (name.startsWith('$')) { continue; }
                        properties[propertyCount++] = name;
                    }
                    stringBuilder.append('{'); var needComma = false; for (i = 0; i < propertyCount; i++) {
                        var value = object[properties[i]]; if (typeof value !== 'undefined' && typeof value !== 'function') {
                            if (needComma) { stringBuilder.append(','); }
                            else { needComma = true; }
                            this._serializeWithBuilder(properties[i], stringBuilder); stringBuilder.append(':'); this._serializeWithBuilder(value, stringBuilder);
                        } 
                    }
                    stringBuilder.append('}');
                } 
            }
            else { stringBuilder.append('null'); }
            break; case 'number': if (isFinite(object)) { stringBuilder.append(String(object)); }
            else { throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers); }
            break; case 'string': stringBuilder.append('"'); if (Sys.Browser.agent === Sys.Browser.Safari || NestleAustralia.SharePoint.Controls.Navigation.JavaScriptSerializer._stringRegEx.test(object)) {
                var length = object.length; for (i = 0; i < length; ++i) {
                    var curChar = object.charAt(i); if (curChar >= ' ') {
                        if (curChar === '\\' || curChar === '"') { stringBuilder.append('\\'); }
                        stringBuilder.append(curChar);
                    }
                    else { switch (curChar) { case '\b': stringBuilder.append('\\b'); break; case '\f': stringBuilder.append('\\f'); break; case '\n': stringBuilder.append('\\n'); break; case '\r': stringBuilder.append('\\r'); break; case '\t': stringBuilder.append('\\t'); break; default: stringBuilder.append('\\u00'); if (curChar.charCodeAt() < 16) stringBuilder.append('0'); stringBuilder.append(curChar.charCodeAt().toString(16)); } } 
                } 
            }
            else { stringBuilder.append(object); }
            stringBuilder.append('"'); break; case 'boolean': stringBuilder.append(object.toString()); break; default: stringBuilder.append('null'); break;
    } 
} 
}
NestleAustralia.SharePoint.Controls.Navigation.ChangeLog = function() { this._opCodeInsert = 1; this._opCodeDelete = 2; this._opCodeClear = 3; this._opCodePropertyChanged = 4; this._opCodeReorder = 5; this._logEntries = null; }
NestleAustralia.SharePoint.Controls.Navigation.ChangeLog.prototype = { initialize: function() { this._logEntries = []; this._serializedEntries = null; }, logInsert: function(item) { var logEntry = {}; logEntry.Type = this._opCodeInsert; logEntry.Index = item._getHierarchicalIndex(); logEntry.Data = item._getData(); Array.add(this._logEntries, logEntry); }, logDelete: function(item) { var logEntry = {}; logEntry.Type = this._opCodeDelete; logEntry.Index = item._getHierarchicalIndex(); Array.add(this._logEntries, logEntry); }, logClear: function(item) {
    var logEntry = {}; logEntry.Type = this._opCodeClear; if (item._getHierarchicalIndex) { logEntry.Index = item._getHierarchicalIndex(); }
    Array.add(this._logEntries, logEntry);
}, logPropertyChanged: function(item, propertyName, propertyValue) { var logEntry = {}; logEntry.Type = this._opCodePropertyChanged; logEntry.Index = item._getHierarchicalIndex(); logEntry.Data = {}; logEntry.Data[propertyName] = propertyValue; Array.add(this._logEntries, logEntry); }, logReorder: function(item, oldIndex, newIndex) { Array.add(this._logEntries, { Type: this._opCodeReorder, Index: oldIndex + "", Data: { NewIndex: newIndex + ""} }); }, serialize: function() {
    if (this._logEntries.length == 0) {
        if (this._serializedEntries == null) { return "[]"; }
        return this._serializedEntries;
    }
    var newEntries = NestleAustralia.SharePoint.Controls.Navigation.JavaScriptSerializer.serialize(this._logEntries); if (this._serializedEntries == null) { this._serializedEntries = newEntries; }
    else { this._serializedEntries = this._serializedEntries.substring(0, this._serializedEntries.length - 1) + ',' + newEntries.substring(1); }
    this._logEntries = []; return this._serializedEntries;
} 
}
NestleAustralia.SharePoint.Controls.Navigation.ChangeLog.registerClass("NestleAustralia.SharePoint.Controls.Navigation.ChangeLog"); Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.EventMap = function() { this._owner = null; this._element = null; this._eventMap = {}; this._onDomEventDelegate = null; this._browserHandlers = {}; }
NestleAustralia.SharePoint.Controls.Navigation.EventMap.prototype = { initialize: function(owner, element) {
    this._owner = owner; if (!element)
        element = this._owner.get_element(); this._element = element;
}, skipElement: function(e, knownClassName) {
    var target = e.target; var tagName = target.tagName.toLowerCase(); var className = target.className; if (tagName == "select")
        return true; if (tagName == "option")
        return true; if (tagName == "a" && (!knownClassName || className.indexOf(knownClassName) < 0))
        return true; if (tagName == "input")
        return true; if (tagName == "textarea")
        return true; if (tagName == "button")
        return true; return false;
}, dispose: function() {
    if (this._onDomEventDelegate) {
        for (var eventName in this._eventMap) {
            if (this._shouldUseEventCapture(eventName)) { var browserHandler = this._browserHandlers[eventName]; this._element.removeEventListener(eventName, browserHandler, true); }
            else { $removeHandler(this._element, eventName, this._onDomEventDelegate); } 
        }
        this._onDomEventDelegate = null; var dispose = true; if (this._element._events) {
            for (var e in this._element._events) { if (this._element._events[e].length > 0) { dispose = false; break; } }
            if (dispose)
                this._element._events = null;
        } 
    } 
}, addHandlerForClassName: function(eventName, className, handler) {
    if (typeof (this._eventMap[eventName]) == "undefined") {
        this._eventMap[eventName] = {}; if (this._shouldUseEventCapture(eventName)) {
            var domEventHandler = this._getDomEventDelegate(); var element = this._element; var browserHandler = function(e) { return domEventHandler.call(element, new Sys.UI.DomEvent(e)); }
            this._browserHandlers[eventName] = browserHandler; element.addEventListener(eventName, browserHandler, true);
        }
        else { $addHandler(this._element, eventName, this._getDomEventDelegate()); } 
    }
    var eventHandlers = this._eventMap[eventName]; eventHandlers[className] = handler;
}, _onDomEvent: function(e) {
    var dispatchees = this._eventMap[e.type]; if (!dispatchees)
        return; var target = e.target; while (target && target.nodeType !== 9) {
        var className = target.className; if (!className) { target = target.parentNode; continue; }
        var subClasses = className.split(' '); var dispatchee = null; for (var i = 0; i < subClasses.length; i++) { dispatchee = dispatchees[subClasses[i]]; if (dispatchee) break; }
        if (dispatchee) {
            this._fillEventFields(e, target); if (dispatchee.call(this._owner, e) != true) {
                if (!target.parentNode) { e.stopPropagation(); }
                return;
            } 
        }
        if (target == this._element) { return; }
        target = target.parentNode;
    } 
}, _fillEventFields: function(e, currentTarget) {
    e.eventMapTarget = currentTarget; if (e.rawEvent.relatedTarget) { e.eventMapRelatedTarget = e.rawEvent.relatedTarget; }
    else {
        if (e.type == "mouseover") { e.eventMapRelatedTarget = e.rawEvent.fromElement; }
        else { e.eventMapRelatedTarget = e.rawEvent.toElement; } 
    }
    if (!e.eventMapRelatedTarget)
        return; try { var className = e.eventMapRelatedTarget.className; }
    catch (ex) { e.eventMapRelatedTarget = this._element; } 
}, _shouldUseEventCapture: function(eventName) { return (eventName == "blur" || eventName == "focus") && $telerik.isFirefox && Sys.Browser.version >= 3; }, _getDomEventDelegate: function() {
    if (!this._onDomEventDelegate) { this._onDomEventDelegate = Function.createDelegate(this, this._onDomEvent); }
    return this._onDomEventDelegate;
} 
}
NestleAustralia.SharePoint.Controls.Navigation.EventMap.registerClass('NestleAustralia.SharePoint.Controls.Navigation.EventMap'); Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.ScrollerOrientation = function() { }
NestleAustralia.SharePoint.Controls.Navigation.ScrollerOrientation.prototype = { Vertical: 0, Horizontal: 1 }
NestleAustralia.SharePoint.Controls.Navigation.ScrollerOrientation.registerEnum("NestleAustralia.SharePoint.Controls.Navigation.ScrollerOrientation"); NestleAustralia.SharePoint.Controls.Navigation.ScrollerSpeed = function() { }
NestleAustralia.SharePoint.Controls.Navigation.ScrollerSpeed.prototype = { Invalid: 0, Slow: 1, Medium: 2, Fast: 3 }
NestleAustralia.SharePoint.Controls.Navigation.ScrollerSpeed.registerEnum("NestleAustralia.SharePoint.Controls.Navigation.ScrollerSpeed"); NestleAustralia.SharePoint.Controls.Navigation.ArrowPosition = function() { }
NestleAustralia.SharePoint.Controls.Navigation.ArrowPosition.prototype = { Top: 0, Bottom: 1, Left: 2, Right: 3 }
NestleAustralia.SharePoint.Controls.Navigation.ArrowPosition.registerEnum("NestleAustralia.SharePoint.Controls.Navigation.ArrowPosition"); NestleAustralia.SharePoint.Controls.Navigation.Scroller = function(scrolledElement, element, orientation) { this._timerInterval = 10; this._scrolledElement = scrolledElement; this._element = element; this._orientation = orientation; this._minPosition = 0; this._maxPosition = null; this._currentPosition = 0; this._speed = NestleAustralia.SharePoint.Controls.Navigation.ScrollerSpeed.Invalid; this._direction = 0; this._events = null; this._timer = null; this._onTickDelegate = null; }
NestleAustralia.SharePoint.Controls.Navigation.Scroller.prototype = { initialize: function() {
    this._onTickDelegate = Function.createDelegate(this, this._onTick); this._timer = new NestleAustralia.SharePoint.Controls.Navigation.Timer()
    this._timer.set_interval(this._timerInterval); this._timer.add_tick(this._onTickDelegate);
}, dispose: function() {
    if (this._timer)
        this._timer.dispose(); this._onTickDelegate = null; this._events = null;
}, get_element: function() { return this._element; }, get_events: function() {
    if (!this._events)
        this._events = new Sys.EventHandlerList(); return this._events;
}, add_positionChanged: function(handler) { this.get_events().addHandler('positionChanged', handler); }, remove_positionChanged: function(handler) { this.get_events().removeHandler('positionChanged', handler); }, setScrollingLimits: function(minPosition, maxPosition) { this._minPosition = minPosition; this._maxPosition = Math.min(this._getElementSize(), maxPosition); }, isAtMinPosition: function() { return this._currentPosition <= this._minPosition; }, isAtMaxPosition: function() { return this._currentPosition >= this._maxPosition; }, resetState: function() { this._resetOverflowStyle(); this._scrollTo(0); }, startScroll: function(speed, direction) { this._speed = speed; this._direction = direction; this._timer.set_enabled(true); }, changeScrollSpeed: function(speed) { this._speed = speed; }, stopScroll: function() { this._speed = NestleAustralia.SharePoint.Controls.Navigation.ScrollerSpeed.Invalid; this._direction = 0; this._timer.set_enabled(false); }, scrollToMaxPosition: function() { this._scrollTo(this._maxPosition); }, _onTick: function() {
    var nextPosition = this._currentPosition + (this._direction * this._speed); nextPosition = Math.max(nextPosition, this._minPosition); nextPosition = Math.min(nextPosition, this._maxPosition); this._scrollTo(nextPosition); if (nextPosition == this._minPosition || nextPosition == this._maxPosition)
        this.stopScroll();
}, _scrollTo: function(position) {
    var scrollProperty = "left"; if (this._orientation == NestleAustralia.SharePoint.Controls.Navigation.ScrollerOrientation.Vertical)
        scrollProperty = "top"; this._currentPosition = position; this._scrolledElement.style[scrollProperty] = -position + "px"; this._raiseEvent('positionChanged', Sys.EventArgs.Empty);
}, _resetOverflowStyle: function() {
    if ($telerik.isIE) {
        this._element.style.overflow = "visible"; if (this._orientation == NestleAustralia.SharePoint.Controls.Navigation.ItemFlow.Vertical) { this._element.style.overflowX = "visible"; this._element.style.overflowY = "hidden"; }
        else { this._element.style.overflowX = "hidden"; this._element.style.overflowY = "hidden"; } 
    }
    else { this._element.style.overflow = "hidden"; } 
}, _getElementSize: function() {
    if (this._orientation == NestleAustralia.SharePoint.Controls.Navigation.ScrollerOrientation.Vertical) { return this._scrolledElement.offsetHeight; }
    else { return this._scrolledElement.offsetWidth; } 
}, _raiseEvent: function(eventName, eventArgs) {
    var handler = this.get_events().getHandler(eventName); if (handler) {
        if (!eventArgs)
            eventArgs = Sys.EventArgs.Empty; handler(this, eventArgs);
    } 
} 
}
NestleAustralia.SharePoint.Controls.Navigation.Scroller.registerClass('NestleAustralia.SharePoint.Controls.Navigation.Scroller', null, Sys.IDisposable); Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.Overlay = function(targetElement) { this._targetElement = targetElement; this._element = null; }
NestleAustralia.SharePoint.Controls.Navigation.Overlay.IsSupported = function() { return $telerik.isIE; }
NestleAustralia.SharePoint.Controls.Navigation.Overlay.prototype = { initialize: function() {
    var placeholder = document.createElement("div"); placeholder.innerHTML = "<iframe>Your browser does not support inline frames or is currently configured not to display inline frames.</iframe>"; this._element = placeholder.firstChild; this._element.src = "javascript:'';"; this._targetElement.parentNode.insertBefore(this._element, this._targetElement); if (this._targetElement.style.zIndex > 0) { this._element.style.zIndex = this._targetElement.style.zIndex - 1; }
    this._element.style.position = "absolute"; this._element.style.border = "0px"; this._element.frameBorder = 0; this._element.style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)"; this._element.tabIndex = -1; if (!$telerik.isSafari)
        placeholder.outerHTML = null; this.updatePosition();
}, dispose: function() {
    if (this._element.parentNode) { this._element.parentNode.removeChild(this._element); }
    this._targetElement = null; this._element = null;
}, get_targetElement: function() { return this._targetElement; }, set_targetElement: function(value) { this._targetElement = value; }, get_element: function() { return this._element; }, updatePosition: function() { this._element.style.top = this._toUnit(this._targetElement.style.top); this._element.style.left = this._toUnit(this._targetElement.style.left); this._element.style.width = this._targetElement.offsetWidth + "px"; this._element.style.height = this._targetElement.offsetHeight + "px"; }, _toUnit: function(value) { if (!value) return "0px"; return parseInt(value) + "px"; } 
}
NestleAustralia.SharePoint.Controls.Navigation.Overlay.registerClass('NestleAustralia.SharePoint.Controls.Navigation.Overlay', null, Sys.IDisposable); (function($) {
    Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection = function() { }; NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.prototype = { Up: 1, Down: 2, Left: 3, Right: 4 }
    NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.registerEnum("NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection"); NestleAustralia.SharePoint.Controls.Navigation.jSlide = function(animatedElement, expandAnimation, collapseAnimation, enableOverlay) {
        this._animatedElement = animatedElement; this._element = animatedElement.parentNode; this._expandAnimation = expandAnimation; this._collapseAnimation = collapseAnimation; this._direction = NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Down; this._expanding = null; if (enableOverlay == null) { this._enableOverlay = true; }
        else { this._enableOverlay = enableOverlay; }
        this._events = null; this._overlay = null; this._animationEndedDelegate = null;
    }
    NestleAustralia.SharePoint.Controls.Navigation.jSlide.prototype = { initialize: function() {
        if (NestleAustralia.SharePoint.Controls.Navigation.Overlay.IsSupported() && this._enableOverlay) { var animatedElement = this.get_animatedElement(); this._overlay = new NestleAustralia.SharePoint.Controls.Navigation.Overlay(animatedElement); this._overlay.initialize(); }
        this._animationEndedDelegate = Function.createDelegate(this, this._animationEnded);
    }, dispose: function() {
        this._animatedElement = null; this._events = null; if (this._overlay) { this._overlay.dispose(); this._overlay = null; }
        this._animationEndedDelegate = null;
    }, get_element: function() { return this._element; }, get_animatedElement: function() { return this._animatedElement; }, set_animatedElement: function(value) { this._animatedElement = value; if (this._overlay) { this._overlay.set_targetElement(this._animatedElement); } }, get_direction: function() { return this._direction; }, set_direction: function(value) { this._direction = value; }, get_events: function() {
        if (!this._events) { this._events = new Sys.EventHandlerList(); }
        return this._events;
    }, updateSize: function() {
        var animatedElement = this.get_animatedElement(); var element = this.get_element(); var top = 0; if (animatedElement.style.top) { top = Math.max(parseInt(animatedElement.style.top), 0); }
        var left = 0; if (animatedElement.style.left) { left = Math.max(parseInt(animatedElement.style.left), 0); }
        var height = animatedElement.offsetHeight + top; if (element.style.height != height + "px") { element.style.height = Math.max(height, 0) + "px"; }
        var width = animatedElement.offsetWidth + left; if (element.style.width != width + "px") { element.style.width = Math.max(width, 0) + "px"; }
        if (this._overlay) { this._updateOverlay(); } 
    }, show: function() { this._showElement(); }, expand: function() {
        this._expanding = true; this.get_animatedElement().style.visibility = "hidden"; this._resetState(true); var startPosition = null; var finalPosition = null; switch (this.get_direction()) { case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Up: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Left: startPosition = parseInt(this._getSize()); finalPosition = 0; break; case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Down: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Right: startPosition = parseInt(this._getPosition()); finalPosition = 0; break; }
        this._expandAnimationStarted(); if ((startPosition == finalPosition) || (this._expandAnimation.get_type() == NestleAustralia.SharePoint.Controls.Navigation.AnimationType.None)) { this._setPosition(finalPosition); this._animationEnded(); this.get_animatedElement().style.visibility = "visible"; }
        else { this._playAnimation(this._expandAnimation, finalPosition); } 
    }, collapse: function() {
        this._resetState(); this._expanding = false; var startPosition = null; var finalPosition = null; var size = parseInt(this._getSize()); var position = parseInt(this._getPosition()); switch (this.get_direction()) { case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Up: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Left: startPosition = 0; finalPosition = size; break; case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Down: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Right: startPosition = 0; finalPosition = position - size; break; }
        this._collapseAnimationStarted(); if ((startPosition == finalPosition) || (this._collapseAnimation.get_type() == NestleAustralia.SharePoint.Controls.Navigation.AnimationType.None)) { this._setPosition(finalPosition); this._animationEnded(); }
        else { this._playAnimation(this._collapseAnimation, finalPosition); } 
    }, add_collapseAnimationStarted: function(handler) { this.get_events().addHandler('collapseAnimationStarted', handler); }, remove_collapseAnimationStarted: function(handler) { this.get_events().removeHandler('collapseAnimationStarted', handler); }, add_collapseAnimationEnded: function(handler) { this.get_events().addHandler('collapseAnimationEnded', handler); }, remove_collapseAnimationEnded: function(handler) { this.get_events().removeHandler('collapseAnimationEnded', handler); }, add_expandAnimationStarted: function(handler) { this.get_events().addHandler('expandAnimationStarted', handler); }, remove_expandAnimationStarted: function(handler) { this.get_events().removeHandler('expandAnimationStarted', handler); }, add_expandAnimationEnded: function(handler) { this.get_events().addHandler('expandAnimationEnded', handler); }, remove_expandAnimationEnded: function(handler) { this.get_events().removeHandler('expandAnimationEnded', handler); }, _playAnimation: function(animationSettings, finalPosition) { this.get_animatedElement().style.visibility = "visible"; var query = this._getAnimationQuery(); var animatedProperty = this._getAnimatedStyleProperty(); var params = {}; params[animatedProperty] = finalPosition; var duration = animationSettings.get_duration(); query.animate(params, duration, NestleAustralia.SharePoint.Controls.Navigation.AnimationType.toEasing(animationSettings.get_type()), this._animationEndedDelegate); }, _expandAnimationStarted: function() { this._raiseEvent('expandAnimationStarted', Sys.EventArgs.Empty); }, _collapseAnimationStarted: function() { this._raiseEvent('collapseAnimationStarted', Sys.EventArgs.Empty); }, _animationEnded: function() {
        if (this._expanding) { this.get_element().style.overflow = "visible"; this._raiseEvent('expandAnimationEnded', Sys.EventArgs.Empty); }
        else { this.get_element().style.display = "none"; this._raiseEvent('collapseAnimationEnded', Sys.EventArgs.Empty); }
        if (this._overlay) { this._updateOverlay(); } 
    }, _updateOverlay: function() { this._overlay.updatePosition(); }, _showElement: function() {
        var animatedElement = this.get_animatedElement(); var element = this.get_element(); if (!element)
            return; if (!element.style)
            return; element.style.display = (element.tagName.toUpperCase() != "TABLE") ? "block" : ""; animatedElement.style.display = (animatedElement.tagName.toUpperCase() != "TABLE") ? "block" : ""; element.style.overflow = "hidden";
    }, _resetState: function(resetPosition) { this._stopAnimation(); this._showElement(); var animatedElement = this.get_animatedElement(); if (resetPosition) { var animatedElement = this.get_animatedElement(); switch (this.get_direction()) { case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Up: animatedElement.style.top = animatedElement.offsetHeight + "px"; ; break; case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Down: animatedElement.style.top = -animatedElement.offsetHeight + "px"; break; case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Left: animatedElement.style.left = animatedElement.offsetWidth + "px"; break; case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Right: animatedElement.style.left = -animatedElement.offsetWidth + "px"; break; default: Error.argumentOutOfRange("direction", this.get_direction(), "Slide direction is invalid. Use one of the values in the NestleAustralia.SharePoint.Controls.Navigation.SlideDirection enumeration."); break; } } }, _stopAnimation: function() { this._getAnimationQuery().stop(false, true); }, _getAnimationQuery: function() {
        var animatedElements = [this.get_animatedElement()]; if (this._enableOverlay && this._overlay) { animatedElements[animatedElements.length] = this._overlay.get_element(); }
        return $(animatedElements);
    }, _getSize: function() { var animatedElement = this.get_animatedElement(); switch (this.get_direction()) { case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Up: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Down: return animatedElement.offsetHeight; break; case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Left: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Right: return animatedElement.offsetWidth; break; default: return 0; } }, _setPosition: function(value) { var animatedElement = this.get_animatedElement(); var animatedProperty = this._getAnimatedStyleProperty(); animatedElement.style[animatedProperty] = value; }, _getPosition: function() { var animatedElement = this.get_animatedElement(); var animatedProperty = this._getAnimatedStyleProperty(); return animatedElement.style[animatedProperty] || 0; }, _getAnimatedStyleProperty: function() { switch (this.get_direction()) { case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Up: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Down: return "top"; case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Left: case NestleAustralia.SharePoint.Controls.Navigation.jSlideDirection.Right: return "left"; } }, _raiseEvent: function(eventName, eventArgs) {
        var handler = this.get_events().getHandler(eventName); if (handler) {
            if (!eventArgs) { eventArgs = Sys.EventArgs.Empty; }
            handler(this, eventArgs);
        } 
    } 
    }
    NestleAustralia.SharePoint.Controls.Navigation.jSlide.registerClass('NestleAustralia.SharePoint.Controls.Navigation.jSlide', null, Sys.IDisposable);
})($telerik.$); Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.ControlItemCollection = function(parent) { this._array = new Array(); this._parent = parent; this._control = null; }
NestleAustralia.SharePoint.Controls.Navigation.ControlItemCollection.prototype = { add: function(item) { var index = this._array.length; this.insert(index, item); }, insert: function(index, item) {
    var itemParent = item.get_parent(); var control = this._parent._getControl(); if (itemParent)
        itemParent._getChildren().remove(item); if (control)
        control._childInserting(index, item, this._parent); Array.insert(this._array, index, item); item.set_parent(this._parent); if (control) { control._childInserted(index, item, this._parent); control._logInserted(item); } 
}, remove: function(item) {
    var control = this._parent._getControl(); if (control)
        control._childRemoving(item); Array.remove(this._array, item); if (control)
        control._childRemoved(item, this._parent); item.set_parent(null); item._control = null;
}, removeAt: function(index) {
    var item = this.getItem(index); if (item)
        this.remove(item);
}, clear: function() {
    var control = this._parent._getControl(); if (control) { control._logClearing(this._parent); control._childrenCleared(this._parent); }
    this._array = new Array();
}, get_count: function() { return this._array.length; }, getItem: function(index) { return this._array[index]; }, indexOf: function(item) {
    for (var i = 0, l = this._array.length; i < l; i++) {
        if (this._array[i] === item)
            return i;
    }
    return -1;
}, forEach: function(lambda) { for (var i = 0, count = this.get_count(); i < count; i++) { lambda(this._array[i]); } } 
}
NestleAustralia.SharePoint.Controls.Navigation.ControlItemCollection.registerClass("NestleAustralia.SharePoint.Controls.Navigation.ControlItemCollection"); Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.PropertyBag = function(owner) { this._data = {}; this._owner = owner; }
NestleAustralia.SharePoint.Controls.Navigation.PropertyBag.prototype = { getValue: function(propertyName, defaultValue) {
    var value = this._data[propertyName]; if (typeof (value) === "undefined")
        return defaultValue; return value;
}, setValue: function(propertyName, value, notify) {
    this._data[propertyName] = value; if (notify)
        this._owner._notifyPropertyChanged(propertyName, value);
}, load: function(data) { this._data = data; } 
}; NestleAustralia.SharePoint.Controls.Navigation.ControlItem = function() { this._element = null; this._parent = null; this._text = null; this._children = null; this._childControlsCreated = false; this._itemData = null; this._control = null; this._properties = new NestleAustralia.SharePoint.Controls.Navigation.PropertyBag(this); }
NestleAustralia.SharePoint.Controls.Navigation.ControlItem.prototype = { _shouldNavigate: function() { var navigateUrl = this.get_navigateUrl(); if (!navigateUrl) return false; return !navigateUrl.endsWith("#"); }, _getNavigateUrl: function() {
    if (this.get_linkElement())
        return this._properties.getValue("navigateUrl", this.get_linkElement().getAttribute("href", 2)); return this._properties.getValue("navigateUrl", null);
}, _initialize: function(json, element) {
    this.set_element(element); this._properties.load(json); if (json["attributes"])
        this.get_attributes()._load(json["attributes"]); this._itemData = json["items"];
}, _dispose: function() {
    if (this._children)
        this._children.forEach(function(child) { child._dispose(); }); if (this._element) { this._element._item = null; this._element = null; }
    if (this._control)
        this._control = null;
}, _initializeRenderedItem: function() {
    var childItems = this._children; if (!childItems || childItems.get_count() < 1)
        return; var childElements = this._getChildElements(); for (var i = 0, length = childItems.get_count(); i < length; i++) { var childItem = childItems.getItem(i); if (!childItem.get_element()) { childItem.set_element(childElements[i]); if (this._shouldInitializeChild(childItem)) { childItem._initializeRenderedItem(); } } } 
}, findControl: function(id) { return $telerik.findControl(this.get_element(), id); }, get_attributes: function() {
    if (!this._attributes)
        this._attributes = new NestleAustralia.SharePoint.Controls.Navigation.AttributeCollection(this); return this._attributes;
}, get_element: function() { return this._element; }, set_element: function(value) { this._element = value; this._element._item = this; this._element._itemTypeName = Object.getTypeName(this); }, get_parent: function() { return this._parent; }, set_parent: function(value) { this._parent = value; }, get_text: function() {
    if (this._text !== null) return this._text; if (this._text = this._properties.getValue("text", ""))
        return this._text; if (!this.get_element())
        return ""; var textElement = this.get_textElement(); if (!textElement)
        return ""; if (typeof (textElement.innerText) != "undefined")
        this._text = textElement.innerText; else
        this._text = textElement.textContent; if ($telerik.isSafari2) { this._text = textElement.innerHTML; }
    return this._text;
}, set_text: function(text) {
    var textElement = this.get_textElement(); if (textElement)
        textElement.innerHTML = text; this._text = text; this._properties.setValue("text", text, true);
}, get_value: function() { return this._properties.getValue("value", null); }, set_value: function(value) { this._properties.setValue("value", value, true); }, get_itemData: function() { return this._itemData; }, get_index: function() {
    if (!this.get_parent())
        return -1; return this.get_parent()._getChildren().indexOf(this);
}, set_enabled: function(value) { this._properties.setValue("enabled", value, true); }, get_enabled: function() { return this._properties.getValue("enabled", true) == true; }, get_isEnabled: function() {
    var control = this._getControl(); if (control)
        return control.get_enabled() && this.get_enabled(); return this.get_enabled();
}, set_visible: function(value) { this._properties.setValue("visible", value); }, get_visible: function() { return this._properties.getValue("visible", true); }, get_level: function() {
    var parent = this.get_parent(); var level = 0; while (parent) {
        if (NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer.isInstanceOfType(parent)) { return level; }
        level++; parent = parent.get_parent();
    }
    return level;
}, get_isLast: function() { return this.get_index() == this.get_parent()._getChildren().get_count() - 1; }, get_isFirst: function() { return this.get_index() == 0; }, get_nextSibling: function() {
    if (!this.get_parent())
        return null; return this.get_parent()._getChildren().getItem(this.get_index() + 1);
}, get_previousSibling: function() {
    if (!this.get_parent())
        return null; return this.get_parent()._getChildren().getItem(this.get_index() - 1);
}, toJsonString: function() { return Sys.Serialization.JavaScriptSerializer.serialize(this._getData()); }, _getHierarchicalIndex: function() {
    var indexes = []; var control = this._getControl(); var current = this; while (current != control) { indexes[indexes.length] = current.get_index(); current = current.get_parent(); }
    return indexes.reverse().join(":");
}, _getChildren: function() { this._ensureChildControls(); return this._children; }, _ensureChildControls: function() { if (!this._childControlsCreated) { this._createChildControls(); this._childControlsCreated = true; } }, _setCssClass: function(element, cssClass) {
    if (element.className != cssClass)
        element.className = cssClass;
}, _createChildControls: function() { this._children = this._createItemCollection(); }, _createItemCollection: function() { }, _getControl: function() {
    if (!this._control) {
        var parent = this.get_parent(); if (parent) {
            if (NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer.isInstanceOfType(parent)) { this._control = parent; }
            else { this._control = parent._getControl(); } 
        } 
    }
    return this._control;
}, _getAllItems: function() { var items = []; this._getAllItemsRecursive(items, this); return items; }, _getAllItemsRecursive: function(items, currentItem) { var children = currentItem._getChildren(); for (var i = 0; i < children.get_count(); i++) { var child = children.getItem(i); Array.add(items, child); this._getAllItemsRecursive(items, child); } }, _getData: function() {
    var data = this._properties._data; delete data.items; data["text"] = this.get_text()
    if (this.get_attributes().get_count() > 0)
        data["attributes"] = this.get_attributes()._data; return data;
}, _notifyPropertyChanged: function(property, value) {
    var control = this._getControl(); if (control)
        control._itemPropertyChanged(this, property, value);
}, _loadFromDictionary: function(data, wcf) {
    if (typeof (data.Text) != "undefined")
        this.set_text(data.Text); if (typeof (data.Value) != "undefined" && data.Value !== "")
        this.set_value(data.Value); if (typeof (data.Enabled) != "undefined" && data.Enabled !== true)
        this.set_enabled(data.Enabled); if (data.Attributes)
        this.get_attributes()._load(data.Attributes, wcf);
}, _createDomElement: function() { var itemElementParent = document.createElement("ul"); var html = []; this._render(html); itemElementParent.innerHTML = html.join(""); return itemElementParent.firstChild; } 
}
NestleAustralia.SharePoint.Controls.Navigation.ControlItem.registerClass('NestleAustralia.SharePoint.Controls.Navigation.ControlItem'); function WebForm_CallbackComplete() {
    for (var i = 0; i < __pendingCallbacks.length; i++) {
        var callbackObject = __pendingCallbacks[i]; if (callbackObject && callbackObject.xmlRequest && (callbackObject.xmlRequest.readyState == 4)) {
            __pendingCallbacks[i] = null; WebForm_ExecuteCallback(callbackObject); if (!callbackObject.async) { __synchronousCallBackIndex = -1; }
            var callbackFrameID = "__CALLBACKFRAME" + i; var xmlRequestFrame = document.getElementById(callbackFrameID); if (xmlRequestFrame) { xmlRequestFrame.parentNode.removeChild(xmlRequestFrame); } 
        } 
    } 
}
Type.registerNamespace("NestleAustralia.SharePoint.Controls.Navigation"); NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer = function(element) { NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer.initializeBase(this, [element]); this._childControlsCreated = false; this._enabled = true; this._log = new NestleAustralia.SharePoint.Controls.Navigation.ChangeLog(); this._enableClientStatePersistence = false; this._eventMap = new NestleAustralia.SharePoint.Controls.Navigation.EventMap(); this._attributes = new NestleAustralia.SharePoint.Controls.Navigation.AttributeCollection(this); this._children = null; }
NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer.prototype = { initialize: function() { NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer.callBaseMethod(this, 'initialize'); this._ensureChildControls(); this._log.initialize(); this._initializeEventMap(); }, dispose: function() {
    this._eventMap.dispose(); if (this._childControlsCreated) { for (var i = 0; i < this._getChildren().get_count(); i++) { this._getChildren().getItem(i)._dispose(); } }
    NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer.callBaseMethod(this, 'dispose');
}, trackChanges: function() { this._enableClientStatePersistence = true; }, set_enabled: function(value) { this._enabled = value; }, get_enabled: function() { return this._enabled; }, commitChanges: function() { this.updateClientState(); this._enableClientStatePersistence = false; }, get_attributes: function() { return this._attributes; }, set_attributes: function(value) { this._attributes._load(value); }, _initializeEventMap: function() { this._eventMap.initialize(this); }, _getChildren: function() { this._ensureChildControls(); return this._children; }, _extractErrorMessage: function(error) {
    if (error.get_message) { return error.get_message(); }
    else { return error.replace(/(\d*\|.*)/, ""); } 
}, _notifyPropertyChanged: function(propertyName, propertyValue) { }, _childInserting: function(index, item, parent) { }, _childInserted: function(index, item, parent) {
    if (!parent._childControlsCreated) return; if (!parent.get_element()) return; var itemElement = item._createDomElement(); var parentListElement = parent.get_childListElement(); if (!parentListElement)
        parentListElement = parent._createChildListElement(); var nextItem = item.get_nextSibling(); var nextItemElement = nextItem ? nextItem.get_element() : null; parent.get_childListElement().insertBefore(itemElement, nextItemElement); if (!item.get_element()) { item.set_element(itemElement); item._initializeRenderedItem(); }
    else { item.set_element(itemElement); } 
}, _childrenCleared: function(parent) {
    for (var i = 0; i < parent._getChildren().get_count(); i++) { parent._getChildren().getItem(i)._dispose(); }
    var childListElement = parent.get_childListElement(); if (childListElement)
        childListElement.innerHTML = "";
}, _childRemoving: function(child) { this._logRemoving(child); }, _childRemoved: function(item, parent) { item._dispose(); }, _createChildListElement: function() { throw Error.notImplemented(); }, _createDomElement: function() { throw Error.notImplemented(); }, _getControl: function() { return this; }, _logInserted: function(item) { if (!item.get_parent()._childControlsCreated || !this._enableClientStatePersistence) return; this._log.logInsert(item); var children = item._getAllItems(); for (var i = 0; i < children.length; i++) { this._log.logInsert(children[i]); } }, _logRemoving: function(item) {
    if (this._enableClientStatePersistence)
        this._log.logDelete(item);
}, _logClearing: function(item) {
    if (this._enableClientStatePersistence)
        this._log.logClear(item);
}, _itemPropertyChanged: function(item, property, value) {
    if (this._enableClientStatePersistence)
        this._log.logPropertyChanged(item, property, value);
}, _ensureChildControls: function() { if (!this._childControlsCreated) { this._createChildControls(); this._childControlsCreated = true; } }, _createChildControls: function() { throw Error.notImplemented(); }, _extractItemFromDomElement: function(element) {
    this._ensureChildControls(); while (element && element.nodeType !== 9) {
        if (element._item && this._verifyChildType(element._itemTypeName))
            return element._item; element = element.parentNode;
    }
    return null;
}, _verifyChildType: function(targetTypeName) { return targetTypeName === this._childTypeName; }, _getAllItems: function() {
    var allItems = []; for (var i = 0; i < this._getChildren().get_count(); i++) { var item = this._getChildren().getItem(i); Array.add(allItems, item); Array.addRange(allItems, item._getAllItems()); }
    return allItems;
}, _findItemByText: function(text) {
    var allItems = this._getAllItems(); for (var i = 0; i < allItems.length; i++) {
        if (allItems[i].get_text() == text)
            return allItems[i];
    }
    return null;
}, _findItemByValue: function(value) {
    var allItems = this._getAllItems(); for (var i = 0; i < allItems.length; i++) {
        if (allItems[i].get_value() == value)
            return allItems[i];
    }
    return null;
}, _findItemByAttribute: function(attributeName, value) {
    var allItems = this._getAllItems(); for (var i = 0; i < allItems.length; i++) {
        if (allItems[i].get_attributes().getAttribute(attributeName) == value)
            return allItems[i];
    }
    return null;
}, _findItemByAbsoluteUrl: function(value) {
    var allItems = this._getAllItems(); for (var i = 0; i < allItems.length; i++) {
        if (allItems[i].get_linkElement() && allItems[i].get_linkElement().href == value)
            return allItems[i];
    }
    return null;
}, _findItemByUrl: function(value) {
    var allItems = this._getAllItems(); for (var i = 0; i < allItems.length; i++) {
        if (allItems[i].get_navigateUrl() == value)
            return allItems[i];
    }
    return null;
}, _findItemByHierarchicalIndex: function(index) {
    var currentItem = null; var container = this; var indexes = index.split(":"); for (var i = 0; i < indexes.length; i++) {
        var currentIndex = parseInt(indexes[i]); if (container._getChildren().get_count() <= currentIndex)
            return null; currentItem = container._getChildren().getItem(currentIndex); container = currentItem;
    }
    return currentItem;
} 
}
NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer.registerClass("NestleAustralia.SharePoint.Controls.Navigation.ControlItemContainer", NestleAustralia.SharePoint.Controls.Navigation.RadWebControl);
