-rw-r--r-- | content/fireflix.js | 14 | ||||
-rw-r--r-- | locale/en-US/fireflix.properties | 2 |
2 files changed, 12 insertions, 4 deletions
diff --git a/content/fireflix.js b/content/fireflix.js index 92c42f4..966630c 100644 --- a/content/fireflix.js +++ b/content/fireflix.js | |||
@@ -769,68 +769,74 @@ var fireflix = { | |||
769 | _this.update_paging(); | 769 | _this.update_paging(); |
770 | _this.on_select(); | 770 | _this.on_select(); |
771 | }, function(x,s,c,m) { | 771 | }, function(x,s,c,m) { |
772 | _this.fireflix.flickr_failure(x,s,c,m); | 772 | _this.fireflix.flickr_failure(x,s,c,m); |
773 | } | 773 | } |
774 | ); | 774 | ); |
775 | }, | 775 | }, |
776 | on_cmd_prev: function(ev) { | 776 | on_cmd_prev: function(ev) { |
777 | var pars = new Object(); | 777 | var pars = new Object(); |
778 | for(var p in this.paging.pars) pars[p] = this.paging.pars[p]; | 778 | for(var p in this.paging.pars) pars[p] = this.paging.pars[p]; |
779 | pars.page=this.paging.page-1; pars.per_page=this.paging.perpage; | 779 | pars.page=this.paging.page-1; pars.per_page=this.paging.perpage; |
780 | this.perform_search(pars); | 780 | this.perform_search(pars); |
781 | }, | 781 | }, |
782 | on_cmd_next: function(ev) { | 782 | on_cmd_next: function(ev) { |
783 | var pars = new Object(); | 783 | var pars = new Object(); |
784 | for(var p in this.paging.pars) pars[p] = this.paging.pars[p]; | 784 | for(var p in this.paging.pars) pars[p] = this.paging.pars[p]; |
785 | pars.page=this.paging.page+1; pars.per_page=this.paging.perpage; | 785 | pars.page=this.paging.page+1; pars.per_page=this.paging.perpage; |
786 | this.perform_search(pars); | 786 | this.perform_search(pars); |
787 | }, | 787 | }, |
788 | update_paging: function() { | 788 | update_paging: function() { |
789 | if(! (this.paging.pars && this.paging.page && this.paging.pages) ) { | 789 | if(! (this.paging.pars && this.paging.page && this.paging.pages) ) { |
790 | this.search_page.value=''; this.search_page.hidden = true; | 790 | this.search_page.value=''; this.search_page.hidden = true; |
791 | this.cmd_search_prev_page.setAttribute('disabled','true'); | 791 | this.cmd_search_prev_page.setAttribute('disabled','true'); |
792 | this.cmd_search_next_page.setAttribute('disabled','true'); | 792 | this.cmd_search_next_page.setAttribute('disabled','true'); |
793 | }else{ | 793 | }else{ |
794 | this.search_page.value=this.fireflix.loc_strings.getFormattedString('search_page',[this.paging.page,this.paging.pages]); | 794 | this.search_page.value=this.fireflix.loc_strings.getFormattedString('search_page',[this.paging.page,this.paging.pages]); |
795 | this.search_page.hidden=false; | 795 | this.search_page.hidden=false; |
796 | this.cmd_search_prev_page.setAttribute('disabled',(this.paging.page>1)?'false':'true'); | 796 | this.cmd_search_prev_page.setAttribute('disabled',(this.paging.page>1)?'false':'true'); |
797 | this.cmd_search_next_page.setAttribute('disabled',(this.paging.page<this.paging.pages)?'false':'true'); | 797 | this.cmd_search_next_page.setAttribute('disabled',(this.paging.page<this.paging.pages)?'false':'true'); |
798 | } | 798 | } |
799 | }, | 799 | }, |
800 | render_description_frame: function(content) { | 800 | render_description_frame: function(content) { |
801 | if(!content) { | 801 | this.searchresult_description.innerHTML = ''; |
802 | this.searchresult_description.innerHTML = ''; | 802 | if(content) { |
803 | }else{ | 803 | var dp = new DOMParser(); |
804 | this.searchresult_description.innerHTML = content?content:''; | 804 | var pd = dp.parseFromString( |
805 | '<div xmlns="http://www.w3.org/1999/xhtml">'+content+'</div>', 'text/xml' ); | ||
806 | var de = pd.documentElement; | ||
807 | if(de.tagName=='parsererror') | ||
808 | this.searchresult_description.innerHTML=this.fireflix.loc_strings.getString('broken_description'); | ||
809 | else | ||
810 | this.searchresult_description.appendChild(de); | ||
805 | /* of all linking elements flickr only allows a */ | 811 | /* of all linking elements flickr only allows a */ |
806 | var as = this.searchresult_description.getElementsByTagName('a'); | 812 | var as = this.searchresult_description.getElementsByTagName('a'); |
807 | for(var a=0;a<as.length;++a) | 813 | for(var a=0;a<as.length;++a) |
808 | as.item(a).setAttribute('target','_blank'); | 814 | as.item(a).setAttribute('target','_blank'); |
809 | } | 815 | } |
810 | }, | 816 | }, |
811 | on_select: function() { | 817 | on_select: function() { |
812 | if(this.selection.currentIndex<0) { | 818 | if(this.selection.currentIndex<0) { |
813 | this.searchresult_props.hidden = true; | 819 | this.searchresult_props.hidden = true; |
814 | }else{ | 820 | }else{ |
815 | var p = this.photos[this.selection.currentIndex]; | 821 | var p = this.photos[this.selection.currentIndex]; |
816 | if(!p) { | 822 | if(!p) { |
817 | this.searchresult_props.hidden = true; | 823 | this.searchresult_props.hidden = true; |
818 | }else{ | 824 | }else{ |
819 | this.search_photo.src = this.fireflix.flickr.make_photo_url(p,'t'); | 825 | this.search_photo.src = this.fireflix.flickr.make_photo_url(p,'t'); |
820 | this.searchresult_title.value = p.title; | 826 | this.searchresult_title.value = p.title; |
821 | this.searchresult_title.tooltipText = p.title; | 827 | this.searchresult_title.tooltipText = p.title; |
822 | this.render_description_frame(null); | 828 | this.render_description_frame(null); |
823 | if(p.description==null && p.description==undefined) { | 829 | if(p.description==null && p.description==undefined) { |
824 | var pid = p.id; | 830 | var pid = p.id; |
825 | var ci = this.selection.currentIndex; | 831 | var ci = this.selection.currentIndex; |
826 | var _this = this; | 832 | var _this = this; |
827 | this.fireflix.flickr.api_call( | 833 | this.fireflix.flickr.api_call( |
828 | { | 834 | { |
829 | method: 'flickr.photos.getInfo', | 835 | method: 'flickr.photos.getInfo', |
830 | auth_token: 'default', | 836 | auth_token: 'default', |
831 | photo_id: p.id, | 837 | photo_id: p.id, |
832 | secret: p.secret | 838 | secret: p.secret |
833 | }, function(xr) { | 839 | }, function(xr) { |
834 | var pp = _this.photos[ci]; | 840 | var pp = _this.photos[ci]; |
835 | if(ci==_this.selection.currentIndex && pp.id==pid) { | 841 | if(ci==_this.selection.currentIndex && pp.id==pid) { |
836 | var n = xp_node('/rsp/photo',xr.responseXML); | 842 | var n = xp_node('/rsp/photo',xr.responseXML); |
diff --git a/locale/en-US/fireflix.properties b/locale/en-US/fireflix.properties index 18300ff..f583040 100644 --- a/locale/en-US/fireflix.properties +++ b/locale/en-US/fireflix.properties | |||
@@ -1,13 +1,15 @@ | |||
1 | postUploadPhotoset=Create a new photoset for uploaded photos (cancel if you don't want to create a photoset) | 1 | postUploadPhotoset=Create a new photoset for uploaded photos (cancel if you don't want to create a photoset) |
2 | 2 | ||
3 | menutitle_Images=Images | 3 | menutitle_Images=Images |
4 | menutitle_Links=Linked to… | 4 | menutitle_Links=Linked to… |
5 | urltype_s=Small square (75x75) | 5 | urltype_s=Small square (75x75) |
6 | urltype_t=Thumbnail (fits in 100x100) | 6 | urltype_t=Thumbnail (fits in 100x100) |
7 | urltype_m=Small (fits in 240x240) | 7 | urltype_m=Small (fits in 240x240) |
8 | urltype__=Medium (fits in 500x500) | 8 | urltype__=Medium (fits in 500x500) |
9 | urltype_b=Large (fits in 1024x1024) | 9 | urltype_b=Large (fits in 1024x1024) |
10 | urltype_o=Original image | 10 | urltype_o=Original image |
11 | urltype_p=Flickr photo URL | 11 | urltype_p=Flickr photo URL |
12 | 12 | ||
13 | search_page=Page %S of %S | 13 | search_page=Page %S of %S |
14 | |||
15 | broken_description=Broken photo description | ||