https://github.com/unitech/skytoop
A Nice Desktop in Cloud with a filemanager and a lot of features ! Fork it ! Web2Py
https://github.com/unitech/skytoop
Last synced: 10 months ago
JSON representation
A Nice Desktop in Cloud with a filemanager and a lot of features ! Fork it ! Web2Py
- Host: GitHub
- URL: https://github.com/unitech/skytoop
- Owner: Unitech
- License: other
- Created: 2011-05-25T15:11:53.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2012-08-19T17:43:13.000Z (over 13 years ago)
- Last Synced: 2025-02-28T06:03:58.059Z (10 months ago)
- Language: JavaScript
- Homepage: http://www.skytoop.com/
- Size: 6.44 MB
- Stars: 30
- Watchers: 4
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG
- License: LICENSE
Awesome Lists containing this project
README
# Skytoop, an open source cloud desktop
I did Skytoop to learn Ajax, Web2Py and Jquery intensively.
**You can check a demo version on http://www.skytoop.com**
username = demo@skytoop.com
password = 123456
## How to use the sources ?
* You can follow the few steps of this tutorial : http://blog.hemca.com/?p=878
## Functionnalities
* Filemanager (controllers/filemanager.py + views/filemanager)
* Multi file upload
* Size limitation on total file uploaded (db/db_tables.py)
* Wallpapers can be set
* Public/Private Skytoop
* Widgets (static/widgets/)
* Widget Draw (static/widgets/drawZone) (the code is ugly)
* Widget Note (static/widgets/notes)
* Icons
* Ajax Search
* Widgets position synchronisation
* Css + Js compression (with pack.py)
## Widgets
The "Parent widget" (this is not a real inheritance, todo) is
located in static/widgets/widgetsGen/jquery.widgetsGen.js
To add a new widget :
Add the name (represented by his name in syncType) of the widget in
── $.fn.widgetGen.select
The parent widget has a CRUD for child widgets
── $.fn.widgetGen.save
── $.fn.widgetGen.update
── $.fn.widgetGen.remove
── $.fn.widgetGen.send
Datas you can syncronize with the server are all fields begining
with the prefix sync:
$.fn.widgetGen.defaults = {
syncType : '',
syncX : 0,
syncY : 0,
syncWidth : 0,
syncHeight : 0,
syncData1 : '',
syncData2 : '',
syncData3 : '',
syncTitle : '',
syncId : 0
};
For an example refer to static/widgets/notes/jquery.stickynote.js
or static/widgets/widgetsGen/sample-widget.js
## Files
* JS for Desktop design are on static/desk/assets/javascript/*
* JS for the filemanager are on static/filemanager
### Controllers
controllers/
├── appadmin.py # Appadmin
├── custom.py # To change wallpaper and to switch on a public Skytoop
├── default.py # Desktop main controllers
├── filemanager.py # Filemanager
├── get_list.py # On the index when you click on left bottom Skytoop c, get desktop list
├── icons.py # CRUD for icons + favicon.ico grabbing
├── note_log.py # On the index page for displaying recent changes
├── public.py # For search bar + public Skytoops
├── vote_log.py # Vote log, for voting for features
└── widget.py # CRUD widgets
### JS/CSS Files
static/
├── color-picker # Color picker when customizing wallpaper
├── css # CSS Files
├── desk # Main folder for JS/CSS Desktop
│ └── assets
│ ├── images
│ │ ├── gui
│ │ ├── icons
│ │ └── misc
│ ├── javascripts # @@@ Here are the most important files for Desktop
│ ├── scroll # Customization of the scroll bar
│ └── stylesheets # CSS files
├── filemanager # For the filemanager
│ ├── css
│ ├── images
│ │ └── fileicons
│ ├── jquery_contextmenu
│ │ └── images
│ ├── jquery_filetree
│ │ └── images
│ └── js
├── html5
├── images
├── js
├── multifile-upload # For the multiple file upload
├── pres-images
├── speed-bar # Images for the "speed bar" at the right of desktops
├── svg
├── tmp
├── vote_log # For the vote log
│ ├── css
│ └── js
├── wallpapers -> ../uploads/ # to avoid downloading wallpaper each time (not very secure)
└── widgets # Widgets
├── drawZone
├── notes
│ ├── css
│ └── images
├── template
├── widgetsGen
└── winamp
# License
Skytoop is under MIT license.