/*
Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved.
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
if(!dojo._hasResource["dojox.atom.widget.FeedViewer"]){dojo._hasResource["dojox.atom.widget.FeedViewer"]=true;dojo.provide("dojox.atom.widget.FeedViewer");dojo.require("dijit._Widget");dojo.require("dijit._Templated");dojo.require("dijit._Container");dojo.require("dojox.atom.io.Connection");dojo.requireLocalization("dojox.atom.widget","FeedViewerEntry",null,"ROOT,ar,ca,cs,da,de,el,es,fi,fr,he,hu,it,ja,ko,nb,nl,pl,pt,pt-pt,ru,sk,sl,sv,th,tr,zh,zh-tw");dojo.experimental("dojox.atom.widget.FeedViewer");dojo.declare("dojox.atom.widget.FeedViewer",[dijit._Widget,dijit._Templated,dijit._Container],{feedViewerTableBody:null,feedViewerTable:null,entrySelectionTopic:"",url:"",xmethod:false,localSaveOnly:false,templateString:dojo.cache("dojox.atom","widget/templates/FeedViewer.html","
\n"),_feed:null,_currentSelection:null,_includeFilters:null,alertsEnabled:false,postCreate:function(){this._includeFilters=[];if(this.entrySelectionTopic!==""){this._subscriptions=[dojo.subscribe(this.entrySelectionTopic,this,"_handleEvent")];}this.atomIO=new dojox.atom.io.Connection();this.childWidgets=[];},startup:function(){this.containerNode=this.feedViewerTableBody;var _1=this.getDescendants();for(var i in _1){var _2=_1[i];if(_2&&_2.isFilter){this._includeFilters.push(new dojox.atom.widget.FeedViewer.CategoryIncludeFilter(_2.scheme,_2.term,_2.label));_2.destroy();}}if(this.url!==""){this.setFeedFromUrl(this.url);}},clear:function(){this.destroyDescendants();},setFeedFromUrl:function(_3){if(_3!==""){if(this._isRelativeURL(_3)){var _4="";if(_3.charAt(0)!=="/"){_4=this._calculateBaseURL(window.location.href,true);}else{_4=this._calculateBaseURL(window.location.href,false);}this.url=_4+_3;}this.atomIO.getFeed(_3,dojo.hitch(this,this.setFeed));}},setFeed:function(_5){this._feed=_5;this.clear();var _6=function(a,b){var _7=this._displayDateForEntry(a);var _8=this._displayDateForEntry(b);if(_7>_8){return -1;}if(_7<_8){return 1;}return 0;};var _9=function(_a){var _b=_a.split(",");_b.pop();return _b.join(",");};var _c=_5.entries.sort(dojo.hitch(this,_6));if(_5){var _d=null;for(var i=0;i<_c.length;i++){var _e=_c[i];if(this._isFilterAccepted(_e)){var _f=this._displayDateForEntry(_e);var _10="";if(_f!==null){_10=_9(_f.toLocaleString());if(_10===""){_10=""+(_f.getMonth()+1)+"/"+_f.getDate()+"/"+_f.getFullYear();}}if((_d===null)||(_d!=_10)){this.appendGrouping(_10);_d=_10;}this.appendEntry(_e);}}}},_displayDateForEntry:function(_11){if(_11.updated){return _11.updated;}if(_11.modified){return _11.modified;}if(_11.issued){return _11.issued;}return new Date();},appendGrouping:function(_12){var _13=new dojox.atom.widget.FeedViewerGrouping({});_13.setText(_12);this.addChild(_13);this.childWidgets.push(_13);},appendEntry:function(_14){var _15=new dojox.atom.widget.FeedViewerEntry({"xmethod":this.xmethod});_15.setTitle(_14.title.value);_15.setTime(this._displayDateForEntry(_14).toLocaleTimeString());_15.entrySelectionTopic=this.entrySelectionTopic;_15.feed=this;this.addChild(_15);this.childWidgets.push(_15);this.connect(_15,"onClick","_rowSelected");_14.domNode=_15.entryNode;_14._entryWidget=_15;_15.entry=_14;},deleteEntry:function(_16){if(!this.localSaveOnly){this.atomIO.deleteEntry(_16.entry,dojo.hitch(this,this._removeEntry,_16),null,this.xmethod);}else{this._removeEntry(_16,true);}dojo.publish(this.entrySelectionTopic,[{action:"delete",source:this,entry:_16.entry}]);},_removeEntry:function(_17,_18){if(_18){var idx=dojo.indexOf(this.childWidgets,_17);var _19=this.childWidgets[idx-1];var _1a=this.childWidgets[idx+1];if(_19.declaredClass==="dojox.atom.widget.FeedViewerGrouping"&&(_1a===undefined||_1a.declaredClass==="dojox.atom.widget.FeedViewerGrouping")){_19.destroy();}_17.destroy();}else{}},_rowSelected:function(evt){var _1b=evt.target;while(_1b){if(_1b.attributes){var _1c=_1b.attributes.getNamedItem("widgetid");if(_1c&&_1c.value.indexOf("FeedViewerEntry")!=-1){break;}}_1b=_1b.parentNode;}for(var i=0;i0)&&(_29<_26.length)&&(_29!==(_26.length-1))){_28=_26.substring(0,(_29+1));}else{_28=_26;}}else{_29=_26.indexOf("://");if(_29>0){_29=_29+3;var _2a=_26.substring(0,_29);var _2b=_26.substring(_29,_26.length);_29=_2b.indexOf("/");if((_29<_2b.length)&&(_29>0)){_28=_2a+_2b.substring(0,_29);}else{_28=_2a+_2b;}}}}return _28;},_isFilterAccepted:function(_2c){var _2d=false;if(this._includeFilters&&(this._includeFilters.length>0)){for(var i=0;i0){for(var i=0;i0){for(var i=0;i\n \n | \n \n \n \n \n | \n \n [delete]\n | \n \n \n | \n\n"),entryNode:null,timeNode:null,deleteButton:null,entry:null,feed:null,postCreate:function(){var _3d=dojo.i18n.getLocalization("dojox.atom.widget","FeedViewerEntry");this.deleteButton.innerHTML=_3d.deleteButton;},setTitle:function(_3e){if(this.titleNode.lastChild){this.titleNode.removeChild(this.titleNode.lastChild);}var _3f=document.createElement("div");_3f.innerHTML=_3e;this.titleNode.appendChild(_3f);},setTime:function(_40){if(this.timeNode.lastChild){this.timeNode.removeChild(this.timeNode.lastChild);}var _41=document.createTextNode(_40);this.timeNode.appendChild(_41);},enableDelete:function(){if(this.deleteButton!==null){this.deleteButton.style.display="inline";}},disableDelete:function(){if(this.deleteButton!==null){this.deleteButton.style.display="none";}},deleteEntry:function(_42){_42.preventDefault();_42.stopPropagation();this.feed.deleteEntry(this);},onClick:function(e){}});dojo.declare("dojox.atom.widget.FeedViewerGrouping",[dijit._Widget,dijit._Templated],{templateString:dojo.cache("dojox.atom","widget/templates/FeedViewerGrouping.html","\n\t\n\t | \n
\n"),groupingNode:null,titleNode:null,setText:function(_43){if(this.titleNode.lastChild){this.titleNode.removeChild(this.titleNode.lastChild);}var _44=document.createTextNode(_43);this.titleNode.appendChild(_44);}});dojo.declare("dojox.atom.widget.AtomEntryCategoryFilter",[dijit._Widget,dijit._Templated],{scheme:"",term:"",label:"",isFilter:true});dojo.declare("dojox.atom.widget.FeedViewer.CategoryIncludeFilter",null,{constructor:function(_45,_46,_47){this.scheme=_45;this.term=_46;this.label=_47;},match:function(_48){var _49=false;if(_48!==null){var _4a=_48.categories;if(_4a!==null){for(var i=0;i<_4a.length;i++){var _4b=_4a[i];if(this.scheme!==""){if(this.scheme!==_4b.scheme){break;}}if(this.term!==""){if(this.term!==_4b.term){break;}}if(this.label!==""){if(this.label!==_4b.label){break;}}_49=true;}}}return _49;}});}