Merge branch 'desktop_harry' into desktop_devin
This commit is contained in:
		
						commit
						19b60a2ddb
					
				|  | @ -35,7 +35,7 @@ class GalleryUploader < CarrierWave::Uploader::Base | ||||||
|   # end |   # end | ||||||
|    |    | ||||||
|   version :thumb do |   version :thumb do | ||||||
|     process :resize_to_fit => [120, 90] |     process :resize_to_fill => [120, 90] | ||||||
|   end |   end | ||||||
| 
 | 
 | ||||||
|   # Add a white list of extensions which are allowed to be uploaded. |   # Add a white list of extensions which are allowed to be uploaded. | ||||||
|  |  | ||||||
|  | @ -15,6 +15,9 @@ var galleryAPI = function(){ | ||||||
| 			}else if(typeof g.urlVars['theater']!= "undefined"){ | 			}else if(typeof g.urlVars['theater']!= "undefined"){ | ||||||
| 				g.loadTheater(g.urlVars['theater']); | 				g.loadTheater(g.urlVars['theater']); | ||||||
| 				g.loadArea = "theater"; | 				g.loadArea = "theater"; | ||||||
|  | 			}else if(typeof g.urlVars['edit']!= "undefined"){ | ||||||
|  | 				g.editAlbum(g.urlVars['edit']); | ||||||
|  | 				g.loadArea = "edit"; | ||||||
| 			}else{ | 			}else{ | ||||||
| 				g.loadAlbums("all"); | 				g.loadAlbums("all"); | ||||||
| 				g.loadArea = "albums"; | 				g.loadArea = "albums"; | ||||||
|  | @ -97,6 +100,14 @@ var galleryAPI = function(){ | ||||||
| 
 | 
 | ||||||
| 		}) | 		}) | ||||||
| 	} | 	} | ||||||
|  | 	this.deleteAlbum = function(id){ | ||||||
|  | 		if(confirm("Delete this Album?")){ | ||||||
|  | 			$.post("delete_album",{aid:id},function(){ | ||||||
|  | 				window.location = "orbit_gallery"; | ||||||
|  | 			}) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	this.loadAlbums = function(id){ | 	this.loadAlbums = function(id){ | ||||||
| 		var headbtn = $('<a class="rgui bt-add rgbt" title="Add Album" href="albums" onclick="return false;"><span>Add Album</span></a>'); | 		var headbtn = $('<a class="rgui bt-add rgbt" title="Add Album" href="albums" onclick="return false;"><span>Add Album</span></a>'); | ||||||
| 		headbtn.click(function(){g.makeNewAlbum();}) | 		headbtn.click(function(){g.makeNewAlbum();}) | ||||||
|  | @ -106,7 +117,10 @@ var galleryAPI = function(){ | ||||||
| 		$addsign.find("a").click(function(){g.makeNewAlbum();}) | 		$addsign.find("a").click(function(){g.makeNewAlbum();}) | ||||||
| 		$.getJSON("get_albums",{cid:id},function(albums){ | 		$.getJSON("get_albums",{cid:id},function(albums){ | ||||||
| 			$.each(albums,function(i,album){ | 			$.each(albums,function(i,album){ | ||||||
|  | 				if(album.cover == "default") | ||||||
| 					var $img = $("<div class='rgalbum'><a title='"+album.description+"' href='?album="+album._id+"'><img src='../../../assets/gallery/default.jpg' width='120px' height='90px'/></a><span class='albumname'>"+album.name+"</span></div>"); | 					var $img = $("<div class='rgalbum'><a title='"+album.description+"' href='?album="+album._id+"'><img src='../../../assets/gallery/default.jpg' width='120px' height='90px'/></a><span class='albumname'>"+album.name+"</span></div>"); | ||||||
|  | 				else | ||||||
|  | 					var $img = $("<div class='rgalbum'><a title='"+album.description+"' href='?album="+album._id+"'><img src='"+album.cover_path+"' width='120px' height='90px'/></a><span class='albumname'>"+album.name+"</span></div>"); | ||||||
| 				g.albumArea.find("#imgholder").append($img); | 				g.albumArea.find("#imgholder").append($img); | ||||||
| 			}) | 			}) | ||||||
| 			g.albumArea.find("#imgholder").append($addsign); | 			g.albumArea.find("#imgholder").append($addsign); | ||||||
|  | @ -115,13 +129,20 @@ var galleryAPI = function(){ | ||||||
| 	this.loadImages = function(id){ | 	this.loadImages = function(id){ | ||||||
| 		//<iframe id="upload_panel" width="100%" scrolling="no" height="300" frameborder="0" src="upload_panel.html?id=16">
 | 		//<iframe id="upload_panel" width="100%" scrolling="no" height="300" frameborder="0" src="upload_panel.html?id=16">
 | ||||||
| 
 | 
 | ||||||
| 		var headarea = $('<a class="rgui bt-back rgbt" title="Back to Albums" href="orbit_gallery"><span>Back to Album</span></a>'); | 		var headarea = '<a class="rgui bt-back rgbt" title="Back to Albums" href="orbit_gallery"><span>Back to Album</span></a> '; | ||||||
| 		headarea.append($('<a class="rgui bt-add rgbt" title="Add Images" href="images" onclick="return false;"><span>Add Images</span></a>')); | 		headarea+='<a class="rgui bt-add rgbt" title="Add Images" href="images" onclick="return false;"><span>Add Images</span></a> '; | ||||||
|  | 		headarea+='<a class="rgui bt-del rgbt" title="Delete Album" href="delete" onclick="return false;"><span>Delete this album</span></a> '; | ||||||
|  | 		headarea+='<a class="rgui bt-edit rgbt" title="Edit Album" href="orbit_gallery?edit='+id+'" ><span>Edit</span></a>'; | ||||||
|  | 		headarea = $(headarea); | ||||||
| 		var uploadpanel = $('<div id="upload_panel_holder" style="display:none; margin: 16px 0 50px 0;"><div class="rgfn"><a class="rgui bt-cls rgbt" title="Close" href="" onclick="return false;"><span id="album_name_span">Close Panel</span></a></div></div>'); | 		var uploadpanel = $('<div id="upload_panel_holder" style="display:none; margin: 16px 0 50px 0;"><div class="rgfn"><a class="rgui bt-cls rgbt" title="Close" href="" onclick="return false;"><span id="album_name_span">Close Panel</span></a></div></div>'); | ||||||
| 		var frame = $('<iframe id="upload_panel" width="100%" scrolling="no" height="300" frameborder="0" src="upload_panel"></iframe>'); | 		var frame = $('<iframe id="upload_panel" width="100%" scrolling="no" height="300" frameborder="0" src="upload_panel"></iframe>'); | ||||||
| 		headarea.find("a.bt-add").click(function(){ | 		g.albumArea.find(".rghead .rgfn").html(headarea); | ||||||
|  | 		g.albumArea.find(".rghead .rgfn a.bt-add").click(function(){ | ||||||
| 			showUploadPanel(); | 			showUploadPanel(); | ||||||
| 		}) | 		}) | ||||||
|  | 		g.albumArea.find(".rghead .rgfn a.bt-del").click(function(){ | ||||||
|  | 			g.deleteAlbum(id); | ||||||
|  | 		}) | ||||||
| 		uploadpanel.find("a.bt-cls").click(function(){ | 		uploadpanel.find("a.bt-cls").click(function(){ | ||||||
| 			uploadpanel.hide("slide"); | 			uploadpanel.hide("slide"); | ||||||
| 			frame.remove(); | 			frame.remove(); | ||||||
|  | @ -136,7 +157,7 @@ var galleryAPI = function(){ | ||||||
| 				panelopen = true; | 				panelopen = true; | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 		g.albumArea.find(".rghead .rgfn").html(headarea); | 		 | ||||||
| 		g.albumArea.find(".rghead .rgfn").append(uploadpanel); | 		g.albumArea.find(".rghead .rgfn").append(uploadpanel); | ||||||
| 		g.albumArea.find("#imgholder").empty(); | 		g.albumArea.find("#imgholder").empty(); | ||||||
| 		var $addsign = $('<div class="rgalbum"><a id="global_add" class="rgui bt-addnew" href="add" onclick="return false;">Add Album</a></div>'); | 		var $addsign = $('<div class="rgalbum"><a id="global_add" class="rgui bt-addnew" href="add" onclick="return false;">Add Album</a></div>'); | ||||||
|  | @ -153,13 +174,238 @@ var galleryAPI = function(){ | ||||||
| 
 | 
 | ||||||
| 	} | 	} | ||||||
| 	this.loadTheater = function(id){ | 	this.loadTheater = function(id){ | ||||||
| 		var head = $('<a href="" class="rgui bt-back rgbt" title="Back"><span id="album_name_span">Back to photos</span></a></div><div class="rgtitle">Gallery</div>'); | 		var imageArray; | ||||||
| 		g.albumArea.find("#imgholder").load("theater?pic="+id,function(theater){ | 		var imagecount = 0; | ||||||
| 			var albumid = $(theater).find("#main_pic").attr("data-content"); | 		var picHeight = 0; | ||||||
| 			head.attr("href","orbit_gallery?album="+albumid); | 		var bindHandlers = function(){ | ||||||
| 			g.albumArea.find(".rghead .rgfn").html(head); | 			var $slidelist = $('.slidelist'), | ||||||
|  | 				$rslide = $('.rslide'), | ||||||
|  | 				$rslidenav = $('.rslidenav'), | ||||||
|  | 				$img = $("#main_pic img"), | ||||||
|  | 				wHeight = $(window).height(); | ||||||
|  | 
 | ||||||
|  | 				$("#main_pic").height(picHeight); | ||||||
|  | 				$img.height("100%"); | ||||||
|  | 
 | ||||||
|  | 			$(".slidectrl a.togglelist").click(function(){ | ||||||
|  | 				var rslide_h = $rslide.outerHeight(); | ||||||
|  | 				if ( $slidelist.height() < 1 ){ | ||||||
|  | 					$slidelist.stop().animate({'height':rslide_h - 30}, 300); | ||||||
|  | 					$slidelist.find("ul").show(); | ||||||
|  | 				} else { | ||||||
|  | 					$slidelist.stop().animate({'height':'0px'}, 300); | ||||||
|  | 					$slidelist.find("ul").hide(); | ||||||
|  | 				} | ||||||
|  | 			}) | ||||||
|  | 			$(".slidectrl a.togglescreen").click(function(){ | ||||||
|  | 				toggleFullscreen(); | ||||||
|  | 			}) | ||||||
|  | 			$(".slidectrl a.browserfullscreen").click(function(){ | ||||||
|  | 				browserFullScreen(); | ||||||
|  | 			}) | ||||||
|  | 			$slidelist.find("a.list_element").click(function(){ | ||||||
|  | 				imagecount = parseInt($(this).parent().attr("for")); | ||||||
|  | 				changeImage($(this)); | ||||||
|  | 			}) | ||||||
|  | 			$rslidenav.find("a.navN").click(function(){ | ||||||
|  | 				nextpic($(this)); | ||||||
|  | 			}) | ||||||
|  | 			$rslidenav.find("a.navP").click(function(){ | ||||||
|  | 				prevpic($(this)); | ||||||
|  | 			}) | ||||||
|  | 			$("a#nextpic").click(function(){ | ||||||
|  | 				nextpic($(this)); | ||||||
|  | 			}) | ||||||
|  | 
 | ||||||
|  | 			$(document).keydown(function(e){ | ||||||
|  | 			    if (e.keyCode == 37){  | ||||||
|  | 			    	prevpic($rslidenav.find("a.navP")); | ||||||
|  | 			       return false; | ||||||
|  | 			    } | ||||||
|  | 			    if(e.keyCode == 39){ | ||||||
|  | 			    	nextpic($rslidenav.find("a.navN")); | ||||||
|  | 			    	return false; | ||||||
|  | 			    } | ||||||
|  | 			    if(e.keyCode == 27){ | ||||||
|  | 			    	toggleFullscreen(); | ||||||
|  | 			    	return false; | ||||||
|  | 			    } | ||||||
|  | 			    if(e.keyCode == 70 || e.keyCode == 102){ | ||||||
|  | 			    	if($rslide.hasClass("fullscreen")) | ||||||
|  | 			    	 browserFullScreen(); | ||||||
|  | 			    } | ||||||
|  | 			}); | ||||||
|  | 			var browserFullScreen = function(){ | ||||||
|  | 				var el = document.documentElement, | ||||||
|  |       				rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen; | ||||||
|  |     			rfs.call(el); | ||||||
|  | 			} | ||||||
|  | 			var nextpic = function(dom){ | ||||||
|  | 				if(imagecount == imageArray.length - 1) | ||||||
|  | 					imagecount = 0; | ||||||
|  | 				else | ||||||
|  | 					imagecount++; | ||||||
|  | 				changeImage(dom); | ||||||
|  | 			} | ||||||
|  | 			var prevpic = function(dom){ | ||||||
|  | 				if(imagecount == 0) | ||||||
|  | 					imagecount = imageArray.length - 1 | ||||||
|  | 				else | ||||||
|  | 					imagecount--; | ||||||
|  | 				changeImage(dom); | ||||||
|  | 			} | ||||||
|  | 			var toggleFullscreen = function(){ | ||||||
|  | 				if($rslide.hasClass("fullscreen")){ | ||||||
|  | 					$rslide.css("position","relative"); | ||||||
|  | 					$rslide.removeClass("fullscreen"); | ||||||
|  | 					$(".slidectrl a.browserfullscreen").hide(); | ||||||
|  | 					$img.css({"padding":""}) | ||||||
|  | 					$("#main_pic").height(picHeight); | ||||||
|  | 				}else{ | ||||||
|  | 					 $("#main_pic").height(wHeight); | ||||||
|  | 					// $img.height("100%");
 | ||||||
|  | 					$rslide.css("position",""); | ||||||
|  | 					$rslide.addClass("fullscreen"); | ||||||
|  | 					$img.css({"padding":($rslide.height()-$img.height())/2}) | ||||||
|  | 					$(".slidectrl a.browserfullscreen").show(); | ||||||
|  | 				} | ||||||
|  | 			} | ||||||
|  | 			var changeImage = function(dom){ | ||||||
|  | 				var pageurl = dom.attr('href'); | ||||||
|  | 				$img.fadeOut(200,function(){ | ||||||
|  | 					$img.attr({"src":dom.attr("data-content"),"height":picHeight+"px"}); | ||||||
|  | 					$img.fadeIn(200); | ||||||
|  | 	 				if($rslide.hasClass("fullscreen")){ | ||||||
|  | 	 					$img.css({"padding":($rslide.height()-$img.height())/2}) | ||||||
|  | 	 				} | ||||||
|  | 	 				$slidelist.stop().animate({'height':'0px'}, 300); | ||||||
|  | 					$slidelist.find("ul").hide(); | ||||||
|  | 				    if(pageurl!=window.location){ | ||||||
|  | 				      window.history.pushState({path:pageurl},'',pageurl); | ||||||
|  | 				    } | ||||||
|  | 				    // $(".slideinfo b.info").text(imageArray[imagecount].title);
 | ||||||
|  | 				    $(".slideinfo span.info").text(imageArray[imagecount].description); | ||||||
|  | 				    updateNavigation(); | ||||||
| 			    }) | 			    }) | ||||||
| 			} | 			} | ||||||
|  | 			var updateNavigation = function(){ | ||||||
|  | 				var next, prev; | ||||||
|  | 				if(imagecount == 0){ | ||||||
|  | 					next = 1; | ||||||
|  | 					prev = imageArray.length - 1;  | ||||||
|  | 				}else if(imagecount == imageArray.length - 1){ | ||||||
|  | 					next = 0 | ||||||
|  | 					prev = imageArray.length - 2; | ||||||
|  | 				}else{ | ||||||
|  | 					next = imagecount + 1; | ||||||
|  | 					prev = imagecount - 1; | ||||||
|  | 				} | ||||||
|  | 				$("a.navN").attr({"href":"orbit_gallery?theater="+imageArray[next]._id,"data-content":imageArray[next].file.url}); | ||||||
|  | 				$("a.navP").attr({"href":"orbit_gallery?theater="+imageArray[prev]._id,"data-content":imageArray[prev].file.url}); | ||||||
|  | 			}; | ||||||
|  | 			updateNavigation(); | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		var preparestage = function(albumid){ | ||||||
|  | 			$.getJSON("get_images",{aid:albumid},function(images){ | ||||||
|  | 				imageArray = eval(images); | ||||||
|  | 				$.each(images,function(i,image){ | ||||||
|  | 					if(image._id == id) | ||||||
|  | 						imagecount = i; | ||||||
|  | 				}) | ||||||
|  | 				bindHandlers(); | ||||||
|  | 			}) | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		var head = $('<a href="" class="rgui bt-back rgbt" title="Back"><span id="album_name_span">Back to photos</span></a></div>'); | ||||||
|  | 		var head1 = $('<a class="rgui bt-edit rgbt" title="Edit Album" href="" ><span>Edit</span></a>'); | ||||||
|  | 		g.albumArea.find("#imgholder").load("theater?pic="+id,function(theater,response,xhr){ | ||||||
|  | 			if(xhr.status == 404){ | ||||||
|  | 				$(this).text("Pic not found."); | ||||||
|  | 				return false; | ||||||
|  | 			} | ||||||
|  | 			var albumid = $(theater).find("#main_pic").attr("data-content"); | ||||||
|  | 			head.attr("href","orbit_gallery?album="+albumid); | ||||||
|  | 			head1.attr("href","orbit_gallery?edit="+albumid); | ||||||
|  | 			g.albumArea.find(".rghead .rgfn").html(head); | ||||||
|  | 			g.albumArea.find(".rghead .rgfn").append(head1); | ||||||
|  | 			picHeight = $(window).height() - ($("#orbit-bar").outerHeight() + $("#gallery_panel").outerHeight() + $("#orbit_gallery .rghead").outerHeight()); | ||||||
|  | 			preparestage(albumid); | ||||||
|  | 		}) | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	this.editAlbum = function(id){ | ||||||
|  | 		var bindHandlers = function(){ | ||||||
|  | 			$("#description_loader .edit_fn .bt-cover").click(function(){ | ||||||
|  | 				$(".bt-cover").removeClass("setcover"); | ||||||
|  | 				$(this).addClass("setcover"); | ||||||
|  | 				$.post("set_cover",{"imageid":$(this).attr("href"),"aid":id},function(){}) | ||||||
|  | 			}) | ||||||
|  | 			$("#description_loader .edit_fn .bt-dels").click(function(){ | ||||||
|  | 				$(this).toggleClass("setdelete"); | ||||||
|  | 				if($("#description_loader .edit_fn .setdelete").length > 0){ | ||||||
|  | 					g.albumArea.find(".rghead .rgfn .bt-delete").show(); | ||||||
|  | 				}else{ | ||||||
|  | 					g.albumArea.find(".rghead .rgfn .bt-delete").hide(); | ||||||
|  | 				} | ||||||
|  | 			}) | ||||||
|  | 			g.albumArea.find(".rghead .rgfn .bt-save").click(function(){ | ||||||
|  | 				var dataArray =  Array(); | ||||||
|  | 				$("#description_loader .txtchange").each(function(){ | ||||||
|  | 					dataArray.push({"id":$(this).attr("for"),"text": $(this).val()}); | ||||||
|  | 				}) | ||||||
|  | 				albumnm = $(".albumname_edit #album_name_text").val(); | ||||||
|  | 				$.post("update_album",{data:dataArray,"aid":id,"name":albumnm},function(){ | ||||||
|  | 
 | ||||||
|  | 				}) | ||||||
|  | 			}) | ||||||
|  | 			var tempval; | ||||||
|  | 			$(".txtchange").focus(function(){ | ||||||
|  | 				tempval = $(this).val(); | ||||||
|  | 			}).keyup(function(){ | ||||||
|  | 				if($(this).val() != tempval) | ||||||
|  | 					g.albumArea.find(".rghead .rgfn .bt-save").show(); | ||||||
|  | 			}) | ||||||
|  | 			g.albumArea.find(".rghead .rgfn .bt-delete").click(function(){ | ||||||
|  | 				var images_to_delete = new Array(); | ||||||
|  | 				var delete_cover = false; | ||||||
|  | 				var doms_to_delete = new Array(); | ||||||
|  | 				var thiscover = $("#description_loader .edit_fn .setcover").attr("href"); | ||||||
|  | 				$("#description_loader .edit_fn .bt-dels").each(function(){ | ||||||
|  | 					if($(this).hasClass("setdelete")){ | ||||||
|  | 						images_to_delete.push($(this).attr("href")); | ||||||
|  | 						doms_to_delete.push($(this).parent().parent()); | ||||||
|  | 						if(thiscover == $(this).attr("href")) | ||||||
|  | 							delete_cover = true; | ||||||
|  | 					} | ||||||
|  | 				}) | ||||||
|  | 				if(confirm("Deleting "+images_to_delete.length+" image(s)?")){ | ||||||
|  | 					$.post("delete_images",{"images":images_to_delete,"delete_cover":delete_cover,"aid":id},function(response){ | ||||||
|  | 						if(response.success){ | ||||||
|  | 							for(dom in doms_to_delete){ | ||||||
|  | 								doms_to_delete[dom].hide("slide",function(){$(this).remove();}) | ||||||
|  | 							} | ||||||
|  | 						} | ||||||
|  | 						g.albumArea.find(".rghead .rgfn .bt-delete").hide(); | ||||||
|  | 					}) | ||||||
|  | 				} | ||||||
|  | 			}) | ||||||
|  | 		} | ||||||
|  | 		var head = '<a href="orbit_gallery?album='+id+'" class="rgui bt-back rgbt" title="Back"><span id="album_name_span">Back to photos</span></a></div>'; | ||||||
|  | 			head+='<a class="rgui bt-del bt-delete rgbt" onclick="return false;" style="display:none;" title="Delete Selected" href=""><span>Delete Selected</span></a>'; | ||||||
|  | 			head+='<a class="rgui bt-save rgbt" onclick="return false;" style="display:none;" title="Save" href=""><span>Save</span>'; | ||||||
|  | 		g.albumArea.find(".rghead .rgfn").html(head); | ||||||
|  | 		rcom.bindDomToHead($(".rghead")); | ||||||
|  | 		g.albumArea.find("#imgholder").load("edit_album?aid="+id,function(data,response,xhr){ | ||||||
|  | 			if(xhr.status == 404){ | ||||||
|  | 				$(this).text("Album not found."); | ||||||
|  | 				return false; | ||||||
|  | 			} | ||||||
|  | 			bindHandlers(); | ||||||
|  | 		}) | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -55,7 +55,7 @@ body.fullscreen, .fullscreen #container, .fullscreen #container2, .fullscreen #m | ||||||
| 	padding: 0 8px; | 	padding: 0 8px; | ||||||
| 	} | 	} | ||||||
| .rgbody { | .rgbody { | ||||||
| 	padding: 20px 0 0 20px; | 	/*padding: 20px 0 0 20px;*/ | ||||||
| 	} | 	} | ||||||
| .rgfn { float: right; padding: 4px 8px 0 0; } | .rgfn { float: right; padding: 4px 8px 0 0; } | ||||||
| .rgalbum, .rgphoto { float: left; margin: 0 16px 24px 0; } | .rgalbum, .rgphoto { float: left; margin: 0 16px 24px 0; } | ||||||
|  | @ -185,7 +185,7 @@ body.fullscreen, .fullscreen #container, .fullscreen #container2, .fullscreen #m | ||||||
| 	overflow: hidden; | 	overflow: hidden; | ||||||
| 	position: relative; | 	position: relative; | ||||||
| 	} | 	} | ||||||
| .comp img{ display: block; width: 100%; height: auto; margin: 0 auto; cursor: pointer; min-height: 250px; } | .comp img{ display: block; width: auto; height: auto; margin: 0 auto; cursor: pointer; min-height: 250px; } | ||||||
| .comp .full{ width: auto; height: auto; max-width: 100%; max-height: 100%; } | .comp .full{ width: auto; height: auto; max-width: 100%; max-height: 100%; } | ||||||
| .rslidenav {  | .rslidenav {  | ||||||
| 	position: absolute; | 	position: absolute; | ||||||
|  | @ -241,6 +241,7 @@ body.fullscreen, .fullscreen #container, .fullscreen #container2, .fullscreen #m | ||||||
| .slidectrl a.togglelist { background-position: 0 -30px; } | .slidectrl a.togglelist { background-position: 0 -30px; } | ||||||
| .slidectrl a.toinline { background-position: -30px 0; } | .slidectrl a.toinline { background-position: -30px 0; } | ||||||
| .slidectrl a.sharebt { background-position: -30px -30px; } | .slidectrl a.sharebt { background-position: -30px -30px; } | ||||||
|  | .slidectrl a.browserfullscreen {background-position: -30px -30px; display:none;} | ||||||
| .slidectrl a.slidestop { background-position: 0 -60px; } | .slidectrl a.slidestop { background-position: 0 -60px; } | ||||||
| .slideinfo { | .slideinfo { | ||||||
| 	height: 30px; | 	height: 30px; | ||||||
|  | @ -433,12 +434,12 @@ body.fullscreen, .fullscreen #container, .fullscreen #container2, .fullscreen #m | ||||||
| .bt-languages:active { background-position: -477px -72px; } | .bt-languages:active { background-position: -477px -72px; } | ||||||
| 
 | 
 | ||||||
| .inputui { | .inputui { | ||||||
| 	background: transparent 0 0 url(../../images/gallery/inputui.png) no-repeat; | 	background: transparent 0 0 url(../../../assets/gallery/inputui.png) no-repeat; | ||||||
| 	padding: 0 0 0 4px; | 	padding: 0 0 0 4px; | ||||||
| 	margin: 0 0 8px 0; | 	margin: 0 0 8px 0; | ||||||
| 	} | 	} | ||||||
| .inputui span { | .inputui span { | ||||||
| 	background: transparent 0 0 url(../../images/gallery/inputui.png) no-repeat; | 	background: transparent 0 0 url(../../../assets/gallery/inputui.png) no-repeat; | ||||||
| 	padding: 0 4px 0 0; | 	padding: 0 4px 0 0; | ||||||
| 	display: block; | 	display: block; | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | @ -2,6 +2,7 @@ class Panel::Gallery::BackEnd::OrbitGalleriesController < OrbitBackendController | ||||||
| 
 | 
 | ||||||
| 	def index | 	def index | ||||||
| 		@categorylist = GalleryCategory.all | 		@categorylist = GalleryCategory.all | ||||||
|  | 		@cid = params['cat'] | ||||||
| 	end | 	end | ||||||
| 
 | 
 | ||||||
| 	def new_category | 	def new_category | ||||||
|  | @ -44,7 +45,6 @@ class Panel::Gallery::BackEnd::OrbitGalleriesController < OrbitBackendController | ||||||
| 	end | 	end | ||||||
| 
 | 
 | ||||||
| 	def upload_image | 	def upload_image | ||||||
| 		 |  | ||||||
| 		albumid = params['aid']; | 		albumid = params['aid']; | ||||||
| 		@album = GalleryAlbum.find(albumid) | 		@album = GalleryAlbum.find(albumid) | ||||||
| 		@files = params['files'] | 		@files = params['files'] | ||||||
|  | @ -70,12 +70,63 @@ class Panel::Gallery::BackEnd::OrbitGalleriesController < OrbitBackendController | ||||||
| 
 | 
 | ||||||
| 	def theater | 	def theater | ||||||
| 		picid = params["pic"] | 		picid = params["pic"] | ||||||
| 		image = GalleryImage.find(picid) | 		@image = GalleryImage.find(picid) | ||||||
| 		@albumid = image.gallery_album_id | 		@albumid = @image.gallery_album_id | ||||||
| 		@url = image.file.url | 		album = GalleryAlbum.find(@albumid) | ||||||
|  | 		@images = album.gallery_images.all | ||||||
| 		render :layout=>false | 		render :layout=>false | ||||||
| 	end | 	end | ||||||
| 
 | 
 | ||||||
|  | 	def delete_album | ||||||
|  | 		aid = params['aid'] | ||||||
|  | 		album = GalleryAlbum.find(aid) | ||||||
|  | 		album.delete | ||||||
|  | 		render :json =>{"success"=>true}.to_json | ||||||
|  | 	end | ||||||
|  | 
 | ||||||
|  | 	def edit_album | ||||||
|  | 		aid = params['aid'] | ||||||
|  | 		album = GalleryAlbum.find(aid) | ||||||
|  | 		@images = album.gallery_images.all | ||||||
|  | 		@album_name = album.name | ||||||
|  | 		@cover = album.cover | ||||||
|  | 		render :layout => false | ||||||
|  | 	end | ||||||
|  | 
 | ||||||
|  | 	def set_cover | ||||||
|  | 		aid = params['aid'] | ||||||
|  | 		album = GalleryAlbum.find(aid) | ||||||
|  | 		image = GalleryImage.find(params[:imageid]) | ||||||
|  | 		album.update_attributes({:cover_path => image.file.thumb.url, :cover=>params[:imageid]}) | ||||||
|  | 		render :json =>{"success"=>true}.to_json | ||||||
|  | 	end | ||||||
|  | 
 | ||||||
|  | 	def delete_images | ||||||
|  | 		images = params['images'] | ||||||
|  | 		images.each do |image| | ||||||
|  | 			img = GalleryImage.find(image) | ||||||
|  | 			img.delete | ||||||
|  | 		end | ||||||
|  | 		if params['delete_cover'] == "true" | ||||||
|  | 			debugger | ||||||
|  | 			album = GalleryAlbum.find(params['aid']) | ||||||
|  | 			album.update_attributes(:cover=>"default") | ||||||
|  | 		end | ||||||
|  | 		render :json =>{"success"=>true}.to_json | ||||||
|  | 	end | ||||||
|  | 
 | ||||||
|  | 	def update_album | ||||||
|  | 		data = params['data'] | ||||||
|  | 		album_name = params['name'] | ||||||
|  | 		aid = params['aid'] | ||||||
|  | 		data.each do |d| | ||||||
|  | 			image = GalleryImage.find(d[1][:id]) | ||||||
|  | 			image.update_attributes(:description=>d[1][:text]) | ||||||
|  | 		end | ||||||
|  | 		album = GalleryAlbum.find(aid) | ||||||
|  | 		album.update_attributes(:name => album_name) | ||||||
|  | 		render :json =>{"success"=>true}.to_json | ||||||
|  | 	end | ||||||
| end | end | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -4,7 +4,8 @@ class GalleryAlbum | ||||||
| 
 | 
 | ||||||
|   	field :name |   	field :name | ||||||
|   	field :description |   	field :description | ||||||
|   	field :album_cover, default: "default" |   	field :cover, default: "default" | ||||||
|  |   	field :cover_path | ||||||
| 
 | 
 | ||||||
|   	belongs_to :gallery_category |   	belongs_to :gallery_category | ||||||
|   	has_many :gallery_images, :autosave => true, :dependent => :destroy |   	has_many :gallery_images, :autosave => true, :dependent => :destroy | ||||||
|  |  | ||||||
|  | @ -0,0 +1,24 @@ | ||||||
|  | <div class="albumname_edit"> | ||||||
|  | 	<label for="">Album Name:</label> | ||||||
|  | 	<div class="inputui rginput rgih26 w380"><span><input type="text" id='album_name_text' value="<%= @album_name %>" class="txtchange" /></span></div> | ||||||
|  | </div> | ||||||
|  | <div id='description_loader'> | ||||||
|  | 	<% @images.each do |image| %> | ||||||
|  | 	<div class="rgphoto_edit"> | ||||||
|  | 		<a href="orbit_gallery?theater=<%= image.id %>"><img src="<%= image.file.url %>"></a> | ||||||
|  | 		<div class="inputui rginput rgih98 w380"> | ||||||
|  | 			<span> | ||||||
|  | 				<textarea  name="description_box" class="txtchange" for="<%= image.id%>"><%= image.description %></textarea> | ||||||
|  | 			</span> | ||||||
|  | 		</div> | ||||||
|  | 		<div class="edit_fn"> | ||||||
|  | 			<a class="rgui rgbt rgbtsg bt-dels" onclick="return false;" title="Delete" href="<%= image.id %>">Delete</a> | ||||||
|  | 			<% if image.id.to_s == @cover %> | ||||||
|  | 				<a class="rgui rgbt rgbtsg bt-cover setcover" onclick="return false;" title="Set Cover" href="<%= image.id %>">Set Cover</a> | ||||||
|  | 			<% else %> | ||||||
|  | 				<a class="rgui rgbt rgbtsg bt-cover" onclick="return false;" title="Set Cover" href="<%= image.id %>">Set Cover</a> | ||||||
|  | 			<% end %> | ||||||
|  | 		</div> | ||||||
|  | 	</div> | ||||||
|  | 	<% end %> | ||||||
|  | </div> | ||||||
|  | @ -10,8 +10,12 @@ | ||||||
|         <option value="">--Select a category--</option> |         <option value="">--Select a category--</option> | ||||||
|         <option value="all">All</option> |         <option value="all">All</option> | ||||||
|       <% @categorylist.each do |category| %> |       <% @categorylist.each do |category| %> | ||||||
|  |         <% if @cid == category.id.to_s %> | ||||||
|  |           <option value='<%= category.id %>' selected><%= category.name %></option> | ||||||
|  |         <% else %> | ||||||
|           <option value='<%= category.id %>'><%= category.name %></option> |           <option value='<%= category.id %>'><%= category.name %></option> | ||||||
|         <% end %> |         <% end %> | ||||||
|  |       <% end %> | ||||||
|    </select> |    </select> | ||||||
| </div> | </div> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -7,38 +7,28 @@ | ||||||
| 	</div> --> | 	</div> --> | ||||||
| 	<div class="rslide" style="position:relative; width:100%;"> | 	<div class="rslide" style="position:relative; width:100%;"> | ||||||
| 		<div class="rslideinside"><div id="loading" style="display:none;"></div> | 		<div class="rslideinside"><div id="loading" style="display:none;"></div> | ||||||
| 			<div class="comp" id='main_pic' data-content='<%= @albumid %>'><img src="<%= @url %>" alt="" /></div> | 			<div class="comp" id='main_pic' data-content='<%= @image.gallery_album_id %>'><a href="" id="nextpic" class="navN" title="下一張" onclick="return false;" ><img src="<%= @image.file.url %>" alt="" /></a></div> | ||||||
| 			<div class="rslidenav"> | 			<div class="rslidenav"> | ||||||
| 				<a href="" class="navP" title="上一張">Prev</a> | 				<a href="" class="navP" title="上一張" onclick="return false;">Prev</a> | ||||||
| 				<a href="" class="navN" title="下一張">Next</a> | 				<a href="" class="navN" title="下一張" onclick="return false;">Next</a> | ||||||
| 			</div> | 			</div> | ||||||
| 		</div> | 		</div> | ||||||
| 		<div class="slidelist"> | 		<div class="slidelist"> | ||||||
| 			<ul id='galleryimagelist' style="display:none;"> | 			<ul id='galleryimagelist' style="display:none;"> | ||||||
| 				<!--<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> | 				<% i=0 %> | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> | 				<% @images.each do |image| %> | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> | 					<li for="<%= i %>"><a href="orbit_gallery?theater=<%= image.id %>" class="list_element" data-content="<%= image.file.url %>" onclick="return false;"><img src="<%= image.file.thumb.url %>" alt="" /></a></li> | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> | 					<% i=i+1 %> | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> | 				<% end  %> | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li> |  | ||||||
| 				<li><a href=""><img src="../../images/gallery/sample.jpg" alt=""/></a></li>--> |  | ||||||
| 			</ul> | 			</ul> | ||||||
| 		</div> | 		</div> | ||||||
| 		<div class="slidectrl"> | 		<div class="slidectrl"> | ||||||
| 			<a href="" class="togglescreen" title="切換全螢幕">Screen</a> | 			<a href="" class="togglescreen" title="切換全螢幕" onclick="return false;">Screen</a> | ||||||
| 			<a href="" class="togglelist" title="顯示照片清單">List</a> | 			<a href="" class="togglelist" title="顯示照片清單" onclick="return false;">List</a> | ||||||
| 			<a href="" class="sharebt" id="sharebt" title="複製照片連結">Share</a> | 			<a href="" class="browserfullscreen" title="顯示照片清單" onclick="return false;">F</a> | ||||||
| 			<div class="slideinfo"> | 			<div class="slideinfo"> | ||||||
| 				<b class="info">PORSCHE</b> | 			<!-- 	<b class="info"><%= @image.title %></b> --> | ||||||
| 				<span class="info"></span> | 				<span class="info"><%= @image.description %></span> | ||||||
| 			</div> | 			</div> | ||||||
| 		</div> | 		</div> | ||||||
| 	</div> | 	</div> | ||||||
|  | @ -13,6 +13,11 @@ Rails.application.routes.draw do | ||||||
| 	      	match "upload_panel" => "orbit_galleries#upload_panel" | 	      	match "upload_panel" => "orbit_galleries#upload_panel" | ||||||
| 	      	match "get_images" => "orbit_galleries#get_images" | 	      	match "get_images" => "orbit_galleries#get_images" | ||||||
| 	      	match "theater" => "orbit_galleries#theater" | 	      	match "theater" => "orbit_galleries#theater" | ||||||
|  | 	      	match "delete_album" => "orbit_galleries#delete_album" | ||||||
|  | 	      	match "edit_album" => "orbit_galleries#edit_album" | ||||||
|  | 	      	match "set_cover" => "orbit_galleries#set_cover" | ||||||
|  | 	      	match "delete_images" => "orbit_galleries#delete_images" | ||||||
|  | 	      	match "update_album" => "orbit_galleries#update_album" | ||||||
| 	      end | 	      end | ||||||
| 	  	end | 	  	end | ||||||
| 	end | 	end | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue