Tiles position saved in db and also change them from section manager
This commit is contained in:
parent
8d2e5210a1
commit
02c6933d0b
|
@ -115,7 +115,7 @@ var orbitDesktop = function(dom){
|
|||
groupWrapperHeight = $(".group").height() + 20;
|
||||
// groupWrapperHeight = (groupWrapperHeight > ($(window).height()-extraspace))? $(window).height()-extraspace:groupWrapperHeight;
|
||||
$("div#desktop #group_wrapper").css("width",groupWrapperWidth);
|
||||
|
||||
var first = true;
|
||||
$("div#desktop .grp").sortable({
|
||||
connectWith: ".grp",
|
||||
tolerance: 'pointer' ,
|
||||
|
@ -135,9 +135,28 @@ var orbitDesktop = function(dom){
|
|||
targetParent.css("max-width",newWidth);
|
||||
var newParentWidth = $("div#desktop #group_wrapper").width()+currentElementWidth;
|
||||
$("div#desktop #group_wrapper").css("width",newParentWidth);
|
||||
}
|
||||
}
|
||||
first = true;
|
||||
},
|
||||
update:function(){
|
||||
if(first){
|
||||
first = false;
|
||||
var newpostitions = new Array;
|
||||
var groupids = new Array;
|
||||
$.each($("div#desktop .group"),function(i,grp){
|
||||
var groupone = new Array;
|
||||
groupids.push($(grp).attr("id"));
|
||||
$ul = $(grp).find("ul.grp li");
|
||||
$.each($ul,function(){
|
||||
groupone.push($(this).attr("id"));
|
||||
})
|
||||
newpostitions.push(groupone);
|
||||
});
|
||||
$.post("/desktop/newpositions",{"sectionid":o.sectionId,"newpos":newpostitions,"groupids":groupids},function(){
|
||||
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
$('div#desktop .tinycanvas').tinyscrollbar({ axis: 'x'});
|
||||
$("div#desktop div.scrollbar").hover(function(){
|
||||
|
@ -172,10 +191,12 @@ var orbitDesktop = function(dom){
|
|||
$.each(group,function(j,tile){
|
||||
var tilecolor = tilecolors[Math.floor(Math.random()*tilecolors.length)];
|
||||
var op = opacity[Math.floor(Math.random()*opacity.length)];
|
||||
if(j==0)$group.attr("id",tile.group_id);
|
||||
|
||||
if(tile.data_category == "app")
|
||||
$li = $('<li class="element '+tile.shape+' hp vp" data-category="'+tile.data_category+'" data-content="'+tile.data_content+'"><span class="tile '+tilecolor+' '+op+'"></span><a href="'+tile._id+'" class="appicon" onclick="return false;"><img src="'+o.iconPath+tile.data_content+'.png" alt="" ></a><h1 class="appname thmtxt">'+tile.title+'</h1></li>');
|
||||
$li = $('<li id="'+tile._id+'" class="element '+tile.shape+' hp vp" data-category="'+tile.data_category+'" data-content="'+tile.data_content+'"><span class="tile '+tilecolor+' '+op+'"></span><a href="'+tile._id+'" class="appicon" onclick="return false;"><img src="'+o.iconPath+tile.data_content+'.png" alt="" ></a><h1 class="appname thmtxt">'+tile.title+'</h1></li>');
|
||||
else
|
||||
$li = $('<li class="element '+tile.shape+' hp vp" data-category="'+tile.data_category+'" data-content="'+tile.data_content+'"><span class="tile '+tilecolor+' '+op+'"></span><h1 class="appname thmtxt">'+tile.title+'</h1><div class="appholder">Loading...</div></li>');
|
||||
$li = $('<li id="'+tile._id+'" class="element '+tile.shape+' hp vp" data-category="'+tile.data_category+'" data-content="'+tile.data_content+'"><span class="tile '+tilecolor+' '+op+'"></span><h1 class="appname thmtxt">'+tile.title+'</h1><div class="appholder">Loading...</div></li>');
|
||||
$group.find("ul").append($li);
|
||||
})
|
||||
$("div#desktop div#group_wrapper").append($group);
|
||||
|
@ -204,7 +225,8 @@ var orbitDesktop = function(dom){
|
|||
$("div#desktop li.section_name").show();
|
||||
$(this).hide();
|
||||
$("div#desktop span#section_heading").text($(this).text());
|
||||
loadTiles($(this).find("a").attr("href"));
|
||||
o.sectionId = $(this).find("a").attr("href");
|
||||
loadTiles(o.sectionId);
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -323,8 +345,13 @@ var orbitDesktop = function(dom){
|
|||
if($("#"+$(this).attr("data-category")+" .element").length>=24){
|
||||
o.notify("Section is full.","alert");
|
||||
}
|
||||
else
|
||||
else{
|
||||
$("#"+$(this).attr("data-category")).append(element);
|
||||
$.post("/desktop/save_desktop_settings",{"save":"appnewsection","appid":element.attr("id"),"newsectionid":$(this).attr("data-content"),"desktopid":o.desktopId})
|
||||
if(o.sectionId == $(this).attr("data-content") || o.sectionId == elementParent.attr("id")){
|
||||
o.desktopData["home"]="";
|
||||
}
|
||||
}
|
||||
},
|
||||
over:function(){
|
||||
$(this).find('span.tile').removeClass('op06');
|
||||
|
@ -347,14 +374,14 @@ var orbitDesktop = function(dom){
|
|||
var $group,$lii,$li;
|
||||
var z=0;
|
||||
for(section in o.sectionList){
|
||||
$group = $('<div class="group"><div class="section_label"><ul class="section_grp"></ul></div><ul class="grp" id="section'+(z+1)+'"></ul></div>');
|
||||
$group = $('<div class="group" id="'+o.sectionList[section]._id+'"><div class="section_label"><ul class="section_grp"></ul></div><ul class="grp" id="section'+(z+1)+'"></ul></div>');
|
||||
for(x=0;x<4;x++){
|
||||
if(x==0){
|
||||
$li = $('<li class="element w1 h1 hp vp thmtxt" style="font-size:20px;"><span class="tile thmc1"></span><span class="thmtxt">'+o.sectionList[z].name+'</span></li>');
|
||||
$li = $('<li class="element w1 h1 hp vp thmtxt" style="font-size:20px;" data-content="'+o.sectionList[z]._id+'"><span class="tile thmc1"></span><span class="thmtxt">'+o.sectionList[z].name+'</span></li>');
|
||||
$group.find("ul.section_grp").append($li);
|
||||
}
|
||||
if(z!=x){
|
||||
$lii = $('<li class="element w1 h1 hp vp thmtxt" style="display: none;" data-category="section'+(x+1)+'"><span class="tile thmc2 op06"></span><span class="thmtxt">'+o.sectionList[x].name+'</span></li>');
|
||||
$lii = $('<li class="element w1 h1 hp vp thmtxt" style="display: none;" data-category="section'+(x+1)+'" data-content="'+o.sectionList[x]._id+'"><span class="tile thmc2 op06"></span><span class="thmtxt">'+o.sectionList[x].name+'</span></li>');
|
||||
$group.find("ul.section_grp").append($lii);
|
||||
}
|
||||
}
|
||||
|
@ -365,7 +392,7 @@ var orbitDesktop = function(dom){
|
|||
$.each(appss,function(i,apps){
|
||||
|
||||
$.each(apps,function(i,app){
|
||||
$li = $('<li class="element to_drop w1 hh2 hp vp" data-category="'+app.data_category+'" data-content="'+app.data_content+'"><div class="appicon"><img src="'+o.iconPath+app.data_content+'.png" class="" width="30" /></div><h1 class="appname thmtxth">'+app.title+'</h1></li>');
|
||||
$li = $('<li class="element to_drop w1 hh2 hp vp" data-category="'+app.data_category+'" data-content="'+app.data_content+'" id="'+app._id+'"><div class="appicon"><img src="'+o.iconPath+app.data_content+'.png" class="" width="30" /></div><h1 class="appname thmtxth">'+app.title+'</h1></li>');
|
||||
$("ul#section"+yy).append($li);
|
||||
})
|
||||
if(y==1){
|
||||
|
|
|
@ -48,6 +48,18 @@ class DesktopController< ApplicationController
|
|||
section.update_attributes(:name => @desktopnewnames[x] )
|
||||
x = x+1
|
||||
end
|
||||
when "appnewsection"
|
||||
@section = Section.find(params["newsectionid"])
|
||||
@groups = @section.groups
|
||||
@app = Tile.find(params["appid"])
|
||||
@groups.each do |group|
|
||||
@tiles = group.tiles.where(:data_category.all => ["app"])
|
||||
if @tiles.length < 12
|
||||
@app.update_attributes(:group_id => group.id)
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
a = Array.new
|
||||
a << {"success"=>"true"}
|
||||
|
@ -119,4 +131,34 @@ class DesktopController< ApplicationController
|
|||
end
|
||||
render :json=>a.to_json
|
||||
end
|
||||
|
||||
def newpositions
|
||||
@newpositions = params["newpos"]
|
||||
@section = Section.find(params["sectionid"])
|
||||
@groupids = params["groupids"]
|
||||
@groups = @section.groups
|
||||
z = 0
|
||||
@newpositions.each do |grp|
|
||||
x = 1
|
||||
grp.each do |tileid|
|
||||
if x != 1
|
||||
y = 1
|
||||
tileid.each do |id|
|
||||
@tile = Tile.find(id)
|
||||
@tile.update_attributes({:position => y})
|
||||
if @tile.group_id != @groupids[z]
|
||||
@tile.update_attributes({:group_id => @groupids[z]})
|
||||
end
|
||||
y = y + 1
|
||||
end
|
||||
z = z + 1
|
||||
end
|
||||
x = x + 1
|
||||
end
|
||||
end
|
||||
b = Array.new
|
||||
b << {"success"=>"true"}
|
||||
render :json=>b.to_json
|
||||
end
|
||||
|
||||
end
|
|
@ -113,6 +113,7 @@ Orbit::Application.routes.draw do
|
|||
match '/desktop/settingthemes/'=>'desktop#settingthemes'
|
||||
match '/desktop/settingsections/'=>'desktop#settingsections'
|
||||
match '/desktop/getapplist/'=>'desktop#getapplist'
|
||||
match '/desktop/newpositions/'=>'desktop#newpositions'
|
||||
match '/desktop/temp_func/'=>'desktop#temp_func'
|
||||
|
||||
match '/panel/:app_name/front_end/:app_action/:id' => 'pages#show_from_link', :constraints => lambda { |request|
|
||||
|
|
|
@ -25,6 +25,7 @@ sub1 Theme Color
|
|||
apply to:
|
||||
#rwidget
|
||||
|
||||
first one
|
||||
*/
|
||||
.thmc4 { background: #5CA360; }
|
||||
|
||||
|
|
Loading…
Reference in New Issue