// // iWeb - FooterControls.js // Copyright (c) 2007-2008 Apple Inc. All rights reserved. // var FooterControls=Class.create(Widget,{widgetIdentifier:"com-apple-iweb-widget-footercontrols",initialize:function($super,instanceID,widgetPath,sharedPath,sitePath,preferences,runningInApp) {if(instanceID!=null) {$super(instanceID,widgetPath,sharedPath,sitePath,preferences,runningInApp);NotificationCenter.addObserver(this,FooterControls.prototype.p_handlePaginationContentsNotification,"paginationSpanContents",this.p_mediaGridID());this.updateFromPreferences();}},onload:function() {if(this.preferences&&this.preferences.postNotification) {this.preferences.postNotification("BLWidgetIsSafeToDrawNotification",1);}},onunload:function() {},updateFromPreferences:function() {this.setPage(0);},changedPreferenceForKey:function(key) {if(this.runningInApp) {if(key=="x-paginationSpanContents") {this.p_setPaginationControls(this.p_paginationSpanContents());}}},prevPage:function() {if(this.runningInApp) {this.setPreferenceForKey(null,"x-previousPage");} else {NotificationCenter.postNotification(new IWNotification("PreviousPage",this.p_mediaGridID(),null));}},nextPage:function() {if(this.runningInApp) {this.setPreferenceForKey(null,"x-nextPage");} else {NotificationCenter.postNotification(new IWNotification("NextPage",this.p_mediaGridID(),null));}},setPage:function(pageIndex) {if(this.runningInApp) {this.setPreferenceForKey(pageIndex,"x-setPage");} else {NotificationCenter.postNotification(new IWNotification("SetPage",this.p_mediaGridID(),{pageIndex:pageIndex}));}},p_mediaGridID:function() {var mediaGridID=null;if(this.preferences) {mediaGridID=this.preferenceForKey("gridID");} if(mediaGridID===undefined) {mediaGridID=null;} return mediaGridID;},p_paginationSpanContents:function() {var paginationSpanContents=null;if(this.preferences) {paginationSpanContents=this.preferenceForKey("x-paginationSpanContents");} if(paginationSpanContents===undefined) {paginationSpanContents=null;} return paginationSpanContents;},p_handlePaginationContentsNotification:function(notification) {var userInfo=notification.userInfo();var controls=userInfo.controls||"";this.p_setPaginationControls(controls);},p_setPaginationControls:function(controls) {var template=new Template(controls);var myControls=template.evaluate({WIDGET_ID:this.instanceID});this.getElementById("pagination_controls").update(myControls);}});