From 35567c213968b914acec1a531f5594dba89fae43 Mon Sep 17 00:00:00 2001 From: Harry Bomrah Date: Fri, 6 Apr 2012 23:48:03 +0800 Subject: [PATCH] Widgets Loading dynamically and semi structured --- app/assets/javascripts/orbitdesktop.js | 79 ++++++- app/assets/stylesheets/desktopmain.css | 72 ++++-- app/controllers/desktop_controller.rb | 4 + app/views/desktop/desktop.html.erb | 208 ++++++++---------- app/views/desktop/index.html.erb | 12 +- app/views/desktop/settings.html.erb | 31 +++ config/routes.rb | 1 + public/desktop_pages/app_manager.html | 121 ---------- public/desktop_pages/desktop.html | 110 --------- public/desktop_pages/sections.html | 171 -------------- public/desktop_widgets/clock/bg_blue.png | Bin 0 -> 16038 bytes public/desktop_widgets/clock/bg_green.png | Bin 0 -> 15812 bytes public/desktop_widgets/clock/bg_orange.png | Bin 0 -> 16256 bytes public/desktop_widgets/clock/clock.css | 69 ++++++ public/desktop_widgets/clock/clock.js | 171 ++++++++++++++ public/desktop_widgets/clock/img/bg_blue.png | Bin 0 -> 9624 bytes public/desktop_widgets/clock/img/bg_green.png | Bin 0 -> 6820 bytes .../desktop_widgets/clock/img/bg_orange.png | Bin 0 -> 9761 bytes public/desktop_widgets/clock/index.html.erb | 76 +++++++ .../desktop_widgets/school_events/events.json | 1 + .../school_events/index.html.erb | 7 + .../school_events/school_events.js | 21 ++ .../weather/img/clouds_180x150_bg.jpg | Bin 0 -> 3312 bytes public/desktop_widgets/weather/index.html.erb | 6 + public/desktop_widgets/weather/weather.js | 0 25 files changed, 612 insertions(+), 548 deletions(-) create mode 100644 app/views/desktop/settings.html.erb delete mode 100755 public/desktop_pages/app_manager.html delete mode 100755 public/desktop_pages/desktop.html delete mode 100644 public/desktop_pages/sections.html create mode 100755 public/desktop_widgets/clock/bg_blue.png create mode 100755 public/desktop_widgets/clock/bg_green.png create mode 100755 public/desktop_widgets/clock/bg_orange.png create mode 100755 public/desktop_widgets/clock/clock.css create mode 100755 public/desktop_widgets/clock/clock.js create mode 100644 public/desktop_widgets/clock/img/bg_blue.png create mode 100644 public/desktop_widgets/clock/img/bg_green.png create mode 100644 public/desktop_widgets/clock/img/bg_orange.png create mode 100755 public/desktop_widgets/clock/index.html.erb create mode 100644 public/desktop_widgets/school_events/events.json create mode 100644 public/desktop_widgets/school_events/index.html.erb create mode 100644 public/desktop_widgets/school_events/school_events.js create mode 100644 public/desktop_widgets/weather/img/clouds_180x150_bg.jpg create mode 100644 public/desktop_widgets/weather/index.html.erb create mode 100644 public/desktop_widgets/weather/weather.js diff --git a/app/assets/javascripts/orbitdesktop.js b/app/assets/javascripts/orbitdesktop.js index 2bbea3aee..253b6e1e9 100755 --- a/app/assets/javascripts/orbitdesktop.js +++ b/app/assets/javascripts/orbitdesktop.js @@ -68,9 +68,16 @@ var orbitDesktop = function(dom){ }); } }); - $("select#change_theme").change(function(){ - o.changeTheme($(this).val()); - }) + $("a#d_settings").click(function(){ + var target = $(this).attr("href"); + if(o.currenthtml!=target){ + o.desktopData[o.currentface] = $(o.contentHolder).html(); + $("#content").hide("drop",o.transitionTime,function(){ + o.initializeSettings(target); + }); + } + }); + $(window).resize(function(){ var ww = $(window).width(); $("img#thmbackground").attr({"width":ww}); @@ -140,14 +147,32 @@ var orbitDesktop = function(dom){ }); $('#holder').tinyscrollbar({ axis: 'x'}); + $("div.scrollbar").hover(function(){ + $(this).removeClass('op01'); + }, function(){ + $(this).addClass('op01'); + }); + var $sdm = $('.sdm'); + + if( !$sdm.children('.sdm_o') ){ + return; + } else { + $sdm.hover(function(){ + $(this).addClass('thmc2'); + }, function(){ + $(this).removeClass('thmc2'); + }); + } } if(!o.desktopData[o.currentface]){ $(o.contentHolder).empty().load("/desktop/"+target,function(){ bindHandlers(); + o.initializeWidgets(); }); }else{ $(o.contentHolder).html(o.desktopData[o.currentface]); bindHandlers(); + o.initializeWidgets(); } }; this.tempFunc = function(){ @@ -200,15 +225,16 @@ var orbitDesktop = function(dom){ if(!o.desktopData[o.currentface]){ $(o.contentHolder).empty().load("/desktop/"+target,function(){ bindHandlers(); + }); }else{ $(o.contentHolder).html(o.desktopData[o.currentface]); - bindHandlers(); + bindHandlers(); } }; this.initializeSectionsManager = function(target){ o.currenthtml = target; - o.currentface = "settings"; + o.currentface = "sections"; var elementParent,element; var bindHandlers = function(){ $(".group").width(530); @@ -236,6 +262,17 @@ var orbitDesktop = function(dom){ $(this).toggleClass("op06"); })//.mouseleave(function(){$(this).addClass("op06");}); $('#holder').tinyscrollbar({ axis: 'x'}); + var $sdm = $('.sdm'); + + if( !$sdm.children('.sdm_o') ){ + return; + } else { + $sdm.hover(function(){ + $(this).addClass('thmc2'); + }, function(){ + $(this).removeClass('thmc2'); + }); + } }; if(!o.desktopData[o.currentface]){ $(o.contentHolder).empty().load("/desktop/"+target,function(){ @@ -247,6 +284,23 @@ var orbitDesktop = function(dom){ } }; + this.initializeSettings = function(target){ + o.currenthtml = target; + o.currentface = "settings"; + var bindHandlers = function(){ + $("select#change_theme").change(function(){ + o.changeTheme($(this).val()); + }) + } + if(!o.desktopData[o.currentface]){ + $(o.contentHolder).empty().load("/desktop/"+target,function(){ + bindHandlers(); + }); + }else{ + $(o.contentHolder).html(o.desktopData[o.currentface]); + bindHandlers(); + } + }; this.loadWallpaper = function(wallpaper){ if(!wallpaper)wallpaper = o.themesettings.background; var ww = $(window).width(); @@ -264,11 +318,26 @@ var orbitDesktop = function(dom){ var setting_name = $(this).attr("id").replace("_icon",""); $(this).attr("src","/"+o.themefolder+"/"+o.theme+"/images/"+o.themesettings.icons[setting_name]) }) + }; + this.initializeWidgets = function(){ + var elements = $("#group_wrapper li.element"); + $.each(elements,function(){ + var widget = $(this); + if(widget.attr("data-category")=="widget"){ + var widgename =widget.attr("data-content"); + $.getScript("/desktop_widgets/"+widgename+"/"+widgename+".js",function(){ + widget.find("div.appholder").load("/desktop_widgets/"+widgename+"/index.html.erb"); + }); + // $(this).find("div.appholder").append( $('').attr('href', "/desktop_widgets/"+widgename+"/css/"+widgename+".css")); + } + + }) } o.initialize(); } orbitDesktop.prototype.themefolder = "themes"; +orbitDesktop.prototype.widgetfolder = "desktop_widgets"; orbitDesktop.prototype.desktopId = "1"; orbitDesktop.prototype.notifyImgPath = "temp"; diff --git a/app/assets/stylesheets/desktopmain.css b/app/assets/stylesheets/desktopmain.css index 5c8bd8cf6..de18a1618 100644 --- a/app/assets/stylesheets/desktopmain.css +++ b/app/assets/stylesheets/desktopmain.css @@ -62,7 +62,7 @@ body { a, a:hover { text-decoration: none; } /* desktop layout */ #container { - margin: 72px 0 0 156px; + margin: 48px 0 0 156px; } #header { padding: 0 0 12px 0; @@ -72,7 +72,7 @@ a, a:hover { text-decoration: none; } width: 156px; height: 540px; position: absolute; - top: 144px; + top: 120px; left: 0; z-index: 9; } @@ -154,7 +154,35 @@ a, a:hover { text-decoration: none; } height:516px; } -.appname { font-size: 15px; } +.appname { + font-size: 15px; + height: 30px; + line-height: 30px; + overflow: hidden; + cursor: default; + z-index: 2; + } +.w1.h1 .appname { text-align: center; } +.w2.h2 .appname { font-size: 21px; } +.appicon { + display: block; + width: 60px; + height: 60px; + margin: 0 auto; + position: relative; + } +.appholder { + position: relative; + padding-bottom: 12px; + } +.holder_f { + position: absolute; + width: 100%; + height: 100%; + padding: 0; +/* left: 0; + top: 0; */ + } .dtitle { font-size: 30px; line-height: 60px; @@ -163,22 +191,8 @@ a, a:hover { text-decoration: none; } position: relative; z-index: 9; } -.dtitle:hover { - /* $(this).addClass( .thmc1 or .thmc2 ); */ - } -.dtitle:hover .section_slc { display: block; } -.section_slc { - display: none; - position: absolute; - width: 252px; - left: 0; - top: 60px; - font-size: 15px; - line-height: 34px; - } -.section_slc li { border-top: solid 1px #f2f2f2; padding: 0 12px; } -.section_slc li:first-child { border: none; } -.section_slc li:hover { background-color: #F0F0F0; } +/*.section_slc { width: 252px; }*/ + .admbg { background-color: #fff; } .admtxt { color: #666; } .admtxt:hover { color: #666; } @@ -198,6 +212,21 @@ a, a:hover { text-decoration: none; } left: 0; top: 0; } + +/* simple dropdown menu */ +.sdm {} +.sdm:hover .sdm_o { display: block; } +.sdm_o { + display: none; + position: absolute; + left: 0; + top: 60px; + font-size: 15px; + } +.sdm_o li { border-top: solid 1px #f2f2f2; } +.sdm_o li:first-child { border: none; } +.sdm_o .admtxt { display: block; line-height: 36px; } +.sdm_o .admtxt:hover { background-color: #F0F0F0; } /* theme color opacity */ .op10 { opacity: 1; } .op09 { opacity: 0.9; } @@ -231,6 +260,7 @@ a, a:hover { text-decoration: none; } .element { margin: 0 12px 12px 0; float: left; + position: relative; /*display:inline-block;*/ } .group{ @@ -250,7 +280,7 @@ a, a:hover { text-decoration: none; } max-width: 340px; } .g_sep { width: 11px; border-left: solid 1px #fff; } -.appicon { width: 60px; height: 60px; } + .clear { clear: both; } @@ -270,7 +300,7 @@ a, a:hover { text-decoration: none; } /* Orbit Notification */ #orbitnote { - position: absolute; + position: fixed; top: 0; left: 50%; margin-left: -206px; diff --git a/app/controllers/desktop_controller.rb b/app/controllers/desktop_controller.rb index 37cbb90e8..987f09ced 100644 --- a/app/controllers/desktop_controller.rb +++ b/app/controllers/desktop_controller.rb @@ -30,4 +30,8 @@ class DesktopController< ApplicationController @desktop = Desktop.find(params["id"]) render :json => @desktop.to_json end + + def settings + render :layout => false + end end \ No newline at end of file diff --git a/app/views/desktop/desktop.html.erb b/app/views/desktop/desktop.html.erb index c852ded95..aef459117 100755 --- a/app/views/desktop/desktop.html.erb +++ b/app/views/desktop/desktop.html.erb @@ -1,113 +1,99 @@ -
-
-Change Theme: +
+ + + \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index ef15c5875..8735b7e71 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -105,6 +105,7 @@ Orbit::Application.routes.draw do match '/desktop/desktop'=>'desktop#desktop' match '/desktop/app_manager'=>'desktop#app_manager' match '/desktop/sections'=>'desktop#sections' + match '/desktop/settings'=>'desktop#settings' match '/desktop/get_desktop_settings/'=>'desktop#get_desktop_settings' match '/desktop/save_desktop_settings/'=>'desktop#save_desktop_settings' match '/panel/:app_name/front_end/:app_action/:id' => 'pages#show_from_link', :constraints => lambda { |request| diff --git a/public/desktop_pages/app_manager.html b/public/desktop_pages/app_manager.html deleted file mode 100755 index 570799f9d..000000000 --- a/public/desktop_pages/app_manager.html +++ /dev/null @@ -1,121 +0,0 @@ -
- -
- -
-
- -
- - - -
-
-
-
diff --git a/public/desktop_pages/desktop.html b/public/desktop_pages/desktop.html deleted file mode 100755 index 1089b596e..000000000 --- a/public/desktop_pages/desktop.html +++ /dev/null @@ -1,110 +0,0 @@ -
- -
-
-
-
    -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Garage Band

    -
  • -

    Aperture

    -
  • -
-
-
-
    -
  • -

    Garage Band

    -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Garage Band

    -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Garage Band

    -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -

    Aperture

    -
  • -
-
-
-
-
- -
-
- \ No newline at end of file diff --git a/public/desktop_pages/sections.html b/public/desktop_pages/sections.html deleted file mode 100644 index 50ecaa93b..000000000 --- a/public/desktop_pages/sections.html +++ /dev/null @@ -1,171 +0,0 @@ -
- -
-
-
- -
    -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • - - -
-
-
- -
    -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • -
  • -

    Garage Band

    -
  • - -
-
-
-
-
-
\ No newline at end of file diff --git a/public/desktop_widgets/clock/bg_blue.png b/public/desktop_widgets/clock/bg_blue.png new file mode 100755 index 0000000000000000000000000000000000000000..ea275d1b487753e0d08761029f139510ec7619dd GIT binary patch literal 16038 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 literal 0 HcmV?d00001 diff --git a/public/desktop_widgets/clock/bg_green.png b/public/desktop_widgets/clock/bg_green.png new file mode 100755 index 0000000000000000000000000000000000000000..393618c276b9a5c208bc009b6d38c1023d91ff86 GIT binary patch literal 15812 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 Kl&BRm3jRO#JEtxH literal 0 HcmV?d00001 diff --git a/public/desktop_widgets/clock/bg_orange.png b/public/desktop_widgets/clock/bg_orange.png new file mode 100755 index 0000000000000000000000000000000000000000..84d322073fd2971463913a159079d1b09d86882a GIT binary patch literal 16256 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').attr('class',colors[i]+' clock').html( + '

'+ + + '
'+ + + '
'+ + '
'+ + '
'+ + + '
'+ + '
'+ + '
' + ); + + // Appending to the container: + $(this).append(tmp); + + // Assigning some of the elements as variables for speed: + tmp.rotateLeft = tmp.find('.rotate.left'); + tmp.rotateRight = tmp.find('.rotate.right'); + tmp.display = tmp.find('.display'); + + // Adding the dial as a global variable. Will be available as gVars.colorName + gVars[colors[i]] = tmp; + } + + // Setting up a interval, executed every 1000 milliseconds: + setInterval(function(){ + + var currentTime = new Date(); + var h = currentTime.getHours(); + var m = currentTime.getMinutes(); + var s = currentTime.getSeconds(); + + animation(gVars.green, s, 60); + animation(gVars.blue, m, 60); + animation(gVars.orange, h, 24); + + },1000); + } + + function animation(clock, current, total) + { + // Calculating the current angle: + var angle = (360/total)*(current+1); + + var element; + + if(current==0) + { + // Hiding the right half of the background: + clock.rotateRight.hide(); + + // Resetting the rotation of the left part: + rotateElement(clock.rotateLeft,0); + } + + if(angle<=180) + { + // The left part is rotated, and the right is currently hidden: + element = clock.rotateLeft; + } + else + { + // The first part of the rotation has completed, so we start rotating the right part: + clock.rotateRight.show(); + clock.rotateLeft.show(); + + rotateElement(clock.rotateLeft,180); + + element = clock.rotateRight; + angle = angle-180; + } + + rotateElement(element,angle); + + // Setting the text inside of the display element, inserting a leading zero if needed: + clock.display.html(current<10?'0'+current:current); + } + + function rotateElement(element,angle) + { + // Rotating the element, depending on the browser: + var rotate = 'rotate('+angle+'deg)'; + + if(element.css('MozTransform')!=undefined) + element.css('MozTransform',rotate); + + else if(element.css('WebkitTransform')!=undefined) + element.css('WebkitTransform',rotate); + + // A version for internet explorer using filters, works but is a bit buggy (no surprise here): + else if(element.css("filter")!=undefined) + { + var cos = Math.cos(Math.PI * 2 / 360 * angle); + var sin = Math.sin(Math.PI * 2 / 360 * angle); + + element.css("filter","progid:DXImageTransform.Microsoft.Matrix(M11="+cos+",M12=-"+sin+",M21="+sin+",M22="+cos+",SizingMethod='auto expand',FilterType='nearest neighbor')"); + + element.css("left",-Math.floor((element.width()-200)/2)); + element.css("top",-Math.floor((element.height()-200)/2)); + } + + } + +})(jQuery) \ No newline at end of file diff --git a/public/desktop_widgets/clock/img/bg_blue.png b/public/desktop_widgets/clock/img/bg_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..7f53ed5c191a193dcf2cd93df337af171a4f8f5c GIT binary patch literal 9624 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 O0000002t}1^@s6I8J)%00009a7bBm000XU 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 v?%X;05dZERcfh&>)*Z0!fc0 +.clock{ + /* The .clock div. Created dynamically by jQuery */ + background-color:#252525; + height:75px; + width:75px; + position:relative; + overflow:hidden; + float:left; +} + +.clock .rotate{ + /* There are two .rotate divs - one for each half of the background */ + position:absolute; + width:75px; + height:75px; + top:0; + left:0; +} + +.rotate.right{ + display:none; + z-index:11; +} + +.clock .bg, .clock .front{ + width:50px; + height:75px; + background-color:#252525; + position:absolute; + top:0; +} + +.clock .display{ + /* Holds the number of seconds, minutes or hours respectfully */ + position:absolute; + width:75px; + font-family:"Lucida Sans Unicode", "Lucida Grande", sans-serif; + z-index:20; + color:#F5F5F5; + font-size:22.5px; + text-align:center; + top:27.5px; + left:0; + + /* CSS3 text shadow: */ + text-shadow:4px 4px 5px #333333; +} + +/* The left part of the background: */ + +.clock .bg.left{ left:0; } + +/* Individual styles for each color: */ +.orange .bg.left{ background:url(desktop_widgets/clock/img/bg_orange.png) no-repeat left top; } +.green .bg.left{ background:url(desktop_widgets/clock/img/bg_green.png) no-repeat left top; } +.blue .bg.left{ background:url(desktop_widgets/clock/img/bg_blue.png) no-repeat left top; } + +/* The right part of the background: */ +.clock .bg.right{ left:25px; } + +.orange .bg.right{ background:url(desktop_widgets/clock/img/bg_orange.png) no-repeat right top; } +.green .bg.right{ background:url(desktop_widgets/clock/img/bg_green.png) no-repeat right top; } +.blue .bg.right{ background:url(desktop_widgets/clock/img/bg_blue.png) no-repeat right top; } + + +.clock .front.left{ + left:0; + z-index:10; +} + + +
+ \ No newline at end of file diff --git a/public/desktop_widgets/school_events/events.json b/public/desktop_widgets/school_events/events.json new file mode 100644 index 000000000..c4c6fd5e3 --- /dev/null +++ b/public/desktop_widgets/school_events/events.json @@ -0,0 +1 @@ +{"first":{"date":"25 Feb","event":"國立政治大學101學年度碩士班暨…","timing":"時間:07:00-17:00"},"second":{"date":"26 Feb","event":"國立政治大學101學年度碩士班暨…","timing":"時間:07:00-17:00"}} \ No newline at end of file diff --git a/public/desktop_widgets/school_events/index.html.erb b/public/desktop_widgets/school_events/index.html.erb new file mode 100644 index 000000000..e6ac921ae --- /dev/null +++ b/public/desktop_widgets/school_events/index.html.erb @@ -0,0 +1,7 @@ +
+


+
+ + \ No newline at end of file diff --git a/public/desktop_widgets/school_events/school_events.js b/public/desktop_widgets/school_events/school_events.js new file mode 100644 index 000000000..78240c72b --- /dev/null +++ b/public/desktop_widgets/school_events/school_events.js @@ -0,0 +1,21 @@ +var eventsjson = new Array; +var loadEvents = function(){ + $.getJSON(o.widgetfolder+"/school_events/events.json",function(events){ + $.each(events,function(i,event){ + eventsjson.push(event); + }) + + displayevents(); + }) +} +var i = 0; +var displayevents = function(){ + $("#school_events").fadeOut(500); + $("span#date").text(eventsjson[i].date); + $("span#event").text(eventsjson[i].event); + $("span#timings").text(eventsjson[i].timing); + $("#school_events").fadeIn(500); + i++; + if(i==eventsjson.length)i=0; + setTimeout(displayevents,5000); +} \ No newline at end of file diff --git a/public/desktop_widgets/weather/img/clouds_180x150_bg.jpg b/public/desktop_widgets/weather/img/clouds_180x150_bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..744cdaec6b491716b0e3783fff770df8f244a2c5 GIT binary patch literal 3312 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 literal 0 HcmV?d00001 diff --git a/public/desktop_widgets/weather/index.html.erb b/public/desktop_widgets/weather/index.html.erb new file mode 100644 index 000000000..1dfa1849d --- /dev/null +++ b/public/desktop_widgets/weather/index.html.erb @@ -0,0 +1,6 @@ +
\ No newline at end of file diff --git a/public/desktop_widgets/weather/weather.js b/public/desktop_widgets/weather/weather.js new file mode 100644 index 000000000..e69de29bb