diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..c091839
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,50 @@
+# Compiled source #
+###################
+*.com
+*.class
+*.dll
+*.exe
+*.o
+*.so
+*.pyc
+
+# Numerous always-ignore extensions
+###################
+*.diff
+*.err
+*.orig
+*.log
+*.rej
+*.swo
+*.swp
+*.vi
+*~
+
+*.sass-cache
+# Folders to ignore
+###################
+.hg
+.svn
+.CVS
+# OS or Editor folders
+###################
+.DS_Store
+Icon?
+Thumbs.db
+ehthumbs.db
+nbproject
+.cache
+.project
+.settings
+.tmproj
+*.esproj
+*.sublime-project
+*.sublime-workspace
+# Dreamweaver added files
+###################
+_notes
+dwsync.xml
+# Komodo
+###################
+*.komodoproject
+.komodotools
diff --git a/README.rst b/README.rst
index d58fc70..3f5ddd1 100644
--- a/README.rst
+++ b/README.rst
@@ -4,7 +4,7 @@ Sqlabs
About
-----------------------------------------
-The aim for this project is to showcases developmental products by S-cubism.
+The aim for this project is to showcases developmental products by S-cubism.
Currently you can try demos for plugins of Web2py framework, and view their sources.
License
diff --git a/static/css/base.css b/static/css/base.css
index 56d918c..f816046 100644
--- a/static/css/base.css
+++ b/static/css/base.css
@@ -39,7 +39,7 @@ License: This file is released under BSD and MIT
*/
-/*
+/*
credit is left where credit is due.
additionally, much inspiration was taken from these projects:
yui.yahooapis.com/2.8.1/build/base/base.css
@@ -47,7 +47,7 @@ License: This file is released under BSD and MIT
praegnanz.de/weblog/htmlcssjs-kickstart
*/
-/*
+/*
html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)
v1.4 2009-07-27 | Authors: Eric Meyer & Richard Clark
html5doctor.com/html-5-reset-stylesheet/
@@ -62,7 +62,7 @@ b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
-article, aside, canvas, details, figcaption, figure,
+article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
@@ -72,10 +72,10 @@ time, mark, audio, video {
font-size:100%;
vertical-align:baseline;
background:transparent;
-}
+}
article, aside, details, figcaption, figure,
-footer, header, hgroup, menu, nav, section {
+footer, header, hgroup, menu, nav, section {
display:block;
}
@@ -122,27 +122,27 @@ body { font:13px/1.231 sans-serif; *font-size:small; } /* hack retained to prese
select, input, textarea, button { font:99% sans-serif; }
-/* normalize monospace sizing
+/* normalize monospace sizing
* en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome
*/
pre, code, kbd, samp { font-family: monospace, sans-serif; }
-/*
- * minimal base styles
+/*
+ * minimal base styles
*/
-/* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */
+/* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */
body, select, input, textarea { color:#444; }
/* Headers (h1,h2,etc) have no default font-size or margin,
- you'll want to define those yourself. */
-
-/* www.aestheticallyloyal.com/public/optimize-legibility/ */
+ you'll want to define those yourself. */
+
+/* www.aestheticallyloyal.com/public/optimize-legibility/ */
h1,h2,h3,h4,h5,h6 { font-weight: bold; }
-/* always force a scrollbar in non-IE */
+/* always force a scrollbar in non-IE */
html { overflow-y: scroll; }
-
+
/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: none; }
@@ -153,19 +153,19 @@ ul, ol { margin-left: 1.8em; }
ol { list-style-type: decimal; }
/* Remove margins for navigation lists */
-nav ul, nav li { margin: 0; }
+nav ul, nav li { margin: 0; }
small { font-size:85%; }
strong, th { font-weight: bold; }
-td, td img { vertical-align:top; }
+td, td img { vertical-align:top; }
sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; }
-pre {
- padding: 15px;
-
+pre {
+ padding: 15px;
+
/* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
white-space: pre; /* CSS2 */
white-space: pre-wrap; /* CSS 2.1 */
@@ -187,41 +187,41 @@ input[type="checkbox"] { vertical-align: bottom; }
/* hand cursor on clickable input elements */
label, input[type=button], input[type=submit], button { cursor: pointer; }
-/* webkit browsers add a 2px margin outside the chrome of form elements */
+/* webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea { margin: 0; }
/* colors for form validity */
input:valid, textarea:valid { }
-input:invalid, textarea:invalid {
+input:invalid, textarea:invalid {
border-radius: 1px;
- -moz-box-shadow: 0px 0px 5px red;
- -webkit-box-shadow: 0px 0px 5px red;
+ -moz-box-shadow: 0px 0px 5px red;
+ -webkit-box-shadow: 0px 0px 5px red;
box-shadow: 0px 0px 5px red;
}
-.no-boxshadow input:invalid,
+.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid { background-color: #f0dddd; }
/* These selection declarations have to be separate.
- No text-shadow: twitter.com/miketaylr/status/12228805301
+ No text-shadow: twitter.com/miketaylr/status/12228805301
Also: hot pink. */
::-moz-selection{ background: #555; color:#fff; text-shadow: none; }
-::selection { background:#555; color:#fff; text-shadow: none; }
+::selection { background:#555; color:#fff; text-shadow: none; }
/* j.mp/webkit-tap-highlight-color */
-a:link { -webkit-tap-highlight-color: #555; }
+a:link { -webkit-tap-highlight-color: #555; }
-/* make buttons play nice in IE:
+/* make buttons play nice in IE:
www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button { width: auto; overflow: visible; }
-
-/* bicubic resizing for non-native sized IMG:
+
+/* bicubic resizing for non-native sized IMG:
code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
.ie7 img { -ms-interpolation-mode: bicubic; }
-/*
- * Non-semantic helper classes
+/*
+ * Non-semantic helper classes
*/
/* for image replacement */
@@ -229,12 +229,12 @@ button { width: auto; overflow: visible; }
/* Hide for both screenreaders and browsers
css-discuss.incutio.com/wiki/Screenreader_Visibility */
-.hidden { display:none; }
+.hidden { display:none; }
-/* Hide only visually, but have it available for screenreaders
- www.webaim.org/techniques/css/invisiblecontent/
+/* Hide only visually, but have it available for screenreaders
+ www.webaim.org/techniques/css/invisiblecontent/
Solution from: j.mp/visuallyhidden - Thanks Jonathan Neal! */
-.visuallyhidden { position:absolute !important;
+.visuallyhidden { position:absolute !important;
clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
clip: rect(1px, 1px, 1px, 1px); }
@@ -243,8 +243,8 @@ button { width: auto; overflow: visible; }
/* >> The Magnificent CLEARFIX: Updated to prevent margin-collapsing on child elements << j.mp/bestclearfix */
.clearfix:before, .clearfix:after {
- content: "\0020"; display: block; height: 0; visibility: hidden;
-}
+ content: "\0020"; display: block; height: 0; visibility: hidden;
+}
.clearfix:after { clear: both; }
/* Fix clearfix: blueprintcss.lighthouseapp.com/projects/15318/tickets/5-extra-margin-padding-bottom-of-page */
@@ -294,34 +294,34 @@ blockquote {
input[type=text], input[type=password], textarea, select {
margin: 2px 15px 2px 5px;
- width: 280px;
+ width: 280px;
background: #fff;
color: #555;
- border: 1px solid #dedede;
+ border: 1px solid #dedede;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
- border-radius: 2px;
+ border-radius: 2px;
font-size: 12px;
}
input[type=text], input[type=password] {
- height: 16px;
+ height: 16px;
}
select[multiple=multiple] {
- height: 90px;
+ height: 90px;
}
input[type=submit], input[type=button], button {
margin: 0px;
/*width: 85px;*/
- height: 22px;
+ height: 22px;
background: #eaeaea;
color: #555;
border: 1px solid #dedede;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
- border-radius: 2px;
+ border-radius: 2px;
}
input[type=submit]:disabled, input[type=button]:disabled, button:disabled {
background: #ddd;
@@ -336,7 +336,7 @@ input:focus, textarea:focus { background: #fafafa; }
p {text-indent:30px;}
-p, blockquote {
+p, blockquote {
margin-bottom: 10px;
}
@@ -357,15 +357,15 @@ h6 {font-size: 0.8em;}
margin: 0 auto;
padding: 0;
}
-#wrapper {margin: 0 auto;}
-#wrapper {background-color: #fff; padding: 5px;}
+#wrapper {margin: 0 auto;}
+#wrapper {background-color: #fff; padding: 5px;}
#statusbar { margin: 5px 0px 20px 0px;}
-#footer {
- padding: 5px;
+#footer {
+ padding: 5px;
}
-#statusbar, #footer {
- background: #eaeaea;
- border-top: 1px #aaa solid;
+#statusbar, #footer {
+ background: #eaeaea;
+ border-top: 1px #aaa solid;
}
#logo {
width: 68px;
@@ -379,25 +379,25 @@ h6 {font-size: 0.8em;}
#right_sidebar { width: 160px; float:right; display: none; }
#left_sidebar { width: 160px; float:left; display: none; }
#content { float: left; /*width: 740px;*//*width: 63%;*/ /*width: 640px; float:left;*/ } /* uncomment this if you are going to use sidebars */
-
+
.auth_navbar {
top: 0px;
float: right;
- padding: 3px 10px 3px 10px;
+ padding: 3px 10px 3px 10px;
}
/*********** web2py specific ***********/
div.flash {
font-weight: bold;
display: none;
- position: fixed;
+ position: fixed;
padding: 10px;
top: 40px;
right: 10px;
min-width: 280px;
opacity: 0.85;
- margin: 0px 0px 10px 10px;
- color: #fff;
+ margin: 0px 0px 10px 10px;
+ color: #fff;
vertical-align: middle;
cursor: pointer;
background: #000;
@@ -416,8 +416,8 @@ div.error {
* CSS 3 Buttons
* http://github.com/michenriksen/css3buttons
* created by Michael Henriksen
- * License: Unlicense
- *
+ * License: Unlicense
+ *
* *******************/
a.button { display: inline-block; padding: 3px 5px 3px 5px; font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 12px; color: #3C3C3D; text-shadow: 1px 1px 0 #FFFFFF; background: #ECECEC url('../images/css3buttons_backgrounds.png') 0 0 no-repeat; white-space: nowrap; overflow: visible; cursor: pointer; text-decoration: none; border: 1px solid #CACACA; -webkit-border-radius: 2px; -moz-border-radius: 2px; -webkit-background-clip: padding-box; border-radius: 2px; outline: none; position: relative; zoom: 1; *display: inline; }
@@ -655,9 +655,9 @@ max-height: 4.65em;
float: left;
border: 5px solid #fff;
-moz-border-radius: 6px;
--webkit-border-radius: 6px;
+-webkit-border-radius: 6px;
box-shadow: 0 0 6px #979797;
--moz-box-shadow: 0 0 6px #979797;
+-moz-box-shadow: 0 0 6px #979797;
-webkit-box-shadow: 0 0 6px #979797;
}
@@ -743,39 +743,39 @@ font-weight: bold;
* Media queries for responsive design
*/
-@media all and (orientation:portrait) {
+@media all and (orientation:portrait) {
/* Style adjustments for portrait mode goes here */
-
+
}
-@media all and (orientation:landscape) {
+@media all and (orientation:landscape) {
/* Style adjustments for landscape mode goes here */
-
+
}
-/* Grade-A Mobile Browsers (Opera Mobile, iPhone Safari, Android Chrome)
+/* Grade-A Mobile Browsers (Opera Mobile, iPhone Safari, Android Chrome)
Consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {
-
-
+
+
/* Uncomment if you don't want iOS and WinMobile to mobile-optimize the text for you
- j.mp/textsizeadjust
+ j.mp/textsizeadjust
html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */
}
-/*
+/*
* print styles
- * inlined to avoid required HTTP connection www.phpied.com/delay-loading-your-print-css/
+ * inlined to avoid required HTTP connection www.phpied.com/delay-loading-your-print-css/
*/
@media print {
* { background: transparent !important; color: #444 !important; text-shadow: none !important; }
a, a:visited { color: #444 !important; text-decoration: underline; }
- a:after { content: " (" attr(href) ")"; }
+ a:after { content: " (" attr(href) ")"; }
abbr:after { content: " (" attr(title) ")"; }
.ir a:after { content: ""; } /* Don't show links for images */
pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
- thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
+ thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
tr, img { page-break-inside: avoid; }
@page { margin: 0.5cm; }
p, h2, h3 { orphans: 3; widows: 3; }
diff --git a/static/css/handheld.css b/static/css/handheld.css
index 141302e..3d91cc7 100644
--- a/static/css/handheld.css
+++ b/static/css/handheld.css
@@ -1,7 +1,7 @@
* {
float: none; /* Screens are not big enough to account for floats */
- font-size: 80%; /* Slightly reducing font size to reduce need to scroll */
+ font-size: 80%; /* Slightly reducing font size to reduce need to scroll */
background: #fff; /* As much contrast as possible */
color: #000;
}
\ No newline at end of file
diff --git a/static/js/calendar.js b/static/js/calendar.js
index 7f0b0b4..e0b992e 100644
--- a/static/js/calendar.js
+++ b/static/js/calendar.js
@@ -26,8 +26,8 @@ Calendar=function(J,K,H,G){this.activeDiv=null;this.currentDateEl=null;this.getD
Time entry for jQuery v1.4.8.
Written by Keith Wood (kbwood{at}iinet.com.au) June 2007.
Minor changes by Massimo Di Pierro Nov 2010 (simplified and changed behavior)
- Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and
- MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses.
+ Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and
+ MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses.
Please attribute the author if you use it.
Turn an input field into an entry point for a time value.
diff --git a/static/js/jquery.socialbutton.js b/static/js/jquery.socialbutton.js
index 2d75238..57ffcf8 100644
--- a/static/js/jquery.socialbutton.js
+++ b/static/js/jquery.socialbutton.js
@@ -1,40 +1,40 @@
/**
* jquery.socialbutton - jQuery plugin for social networking websites
* http://itra.jp/jquery_socialbutton_plugin/
- *
+ *
* Copyright 2010, Itrans, Inc. http://itra.jp/
- *
+ *
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
- *
+ *
* Version: 1.8.0
*/
/**
* SYNOPSIS
- *
- *
+ *
+ *
* mixi_check
* http://developer.mixi.co.jp/connect/mixi_plugin/mixi_check/spec_mixi_check
- *
+ *
* $('#mixi_check').socialbutton('mixi_check', {
* key: 'mixi-check-key'
* });
- *
+ *
* $('#mixi_check').socialbutton('mixi_check', {
* key: 'mixi-check-key',
* button: 'button-1',
* url: 'http://itra.jp/'
* });
- *
- *
+ *
+ *
* mixi_like
* http://developer.mixi.co.jp/connect/mixi_plugin/favorite_button/spec
- *
+ *
* $('#mixi_like').socialbutton('mixi_like', {
* key: 'mixi-check-key',
* });
- *
+ *
* $('#mixi_like').socialbutton('mixi_like', {
* key: 'mixi-check-key',
* url: 'http://itra.jp/',
@@ -43,13 +43,13 @@
* show_faces: true,
* style: 'additional-style-here'
* });
- *
- *
+ *
+ *
* facebook_like
* http://developers.facebook.com/docs/reference/plugins/like
- *
+ *
* $('#facebook_like').socialbutton('facebook_like');
- *
+ *
* $('#facebook_like').socialbutton('facebook_like', {
* button: 'standard', // synonym 'layout'
* url: 'http://itra.jp',
@@ -61,25 +61,25 @@
* font: 'arial',
* colorscheme: 'light'
* });
- *
- *
+ *
+ *
* facebook_share
* http://developers.facebook.com/docs/share
- *
+ *
* $('#facebook_share').socialbutton('facebook_share');
- *
+ *
* $('#facebook_share').socialbutton('facebook_share', {
* button: 'button_count', // synonym 'type'
* url: 'http://itra.jp',
* text: 'Share'
* });
- *
- *
+ *
+ *
* Twitter
* http://twitter.com/goodies/tweetbutton
- *
+ *
* $('#twitter').socialbutton('twitter');
- *
+ *
* $('#twitter').socialbutton('twitter', {
* button: 'vertical', // synonym 'count'
* url: 'http://itra.jp/',
@@ -88,26 +88,26 @@
* via: 'ishiiyoshinori',
* related: 'twitter'
* });
- *
- *
+ *
+ *
* GREE Social Feedback
* http://developer.gree.co.jp/connect/plugins/sf
- *
+ *
* $('#gree_sf').socialbutton('gree_sf');
- *
+ *
* $('#gree_sf').socialbutton('gree_sf', {
* button: 0, // synonym 'type'
* url: 'http://itra.jp/',
* width: 0, // auto
* height: 20
* });
- *
- *
+ *
+ *
* Evernote Site Memory
* http://www.evernote.com/about/developer/sitememory/
- *
+ *
* $('#evernote').socialbutton('evernote');
- *
+ *
* $('#evernote').socialbutton('evernote', {
* button: 'article-clipper',
* url: 'http://itra.jp/',
@@ -119,38 +119,38 @@
* suggest_tags: 'comma-separated-tags,up-to-three-tags',
* styling: 'full'
* });
- *
- *
+ *
+ *
* Hatena Bookmark
* http://b.hatena.ne.jp/
- *
+ *
* $('#hatena').socialbutton('hatena');
- *
+ *
* $('#hatena').socialbutton('hatena', {
* button: 'standard',
* url: 'http://itra.jp/',
* title: 'page-title'
* });
- *
- *
+ *
+ *
* Hatena Bookmark (Old Style)
* http://b.hatena.ne.jp/
- *
+ *
* $('#hatena').socialbutton('hatena_oldstyle');
- *
+ *
* $('#hatena').socialbutton('hatena_oldstyle', {
* button: '/path/to/your-icon.png',
* url: 'http://itra.jp/',
* padding: 10,
* height: 15
* });
- *
- *
+ *
+ *
* Google +1 Button
* http://www.google.com/webmasters/+1/button/
- *
+ *
* $('#google').socialbutton('google_plusone');
- *
+ *
* $('#google').socialbutton('google_plusone', {
* lang: 'ja',
* parsetags: 'explicit',
@@ -159,7 +159,7 @@
* href: 'http://itra.jp/',
* size: 'standard'
* });
- *
+ *
*/
(function($) {
@@ -653,7 +653,7 @@ function socialbutton_hatena(target, options, defaults, index, max_index)
'data-hatena-bookmark-layout': layout,
'title': 'このエントリーをはてなブックマークに追加'
});
-
+
var tag = '
'
+ '';
diff --git a/static/js/jquery.ui.dialog.js b/static/js/jquery.ui.dialog.js
index 0551d90..cba6e86 100644
--- a/static/js/jquery.ui.dialog.js
+++ b/static/js/jquery.ui.dialog.js
@@ -112,7 +112,7 @@ $.widget("ui.dialog", {
.attr('tabIndex', -1).css('outline', 0).keydown(function(event) {
if (options.closeOnEscape && !event.isDefaultPrevented() && event.keyCode &&
event.keyCode === $.ui.keyCode.ESCAPE) {
-
+
self.close(event);
event.preventDefault();
}
@@ -214,7 +214,7 @@ $.widget("ui.dialog", {
destroy: function() {
var self = this;
-
+
if (self.overlay) {
self.overlay.destroy();
}
@@ -240,7 +240,7 @@ $.widget("ui.dialog", {
close: function(event) {
var self = this,
maxZ, thisZ;
-
+
if (false === self._trigger('beforeClose', event)) {
return;
}
@@ -533,7 +533,7 @@ $.widget("ui.dialog", {
at: myAt.join(" "),
offset: offset.join(" ")
};
- }
+ }
position = $.extend({}, $.ui.dialog.prototype.options.position, position);
} else {
@@ -561,7 +561,7 @@ $.widget("ui.dialog", {
$.each( options, function( key, value ) {
self._setOption( key, value );
-
+
if ( key in sizeRelatedOptions ) {
resize = true;
}
@@ -613,7 +613,7 @@ $.widget("ui.dialog", {
if ( isDraggable && !value ) {
uiDialog.draggable( "destroy" );
}
-
+
if ( !isDraggable && value ) {
self._makeDraggable();
}
@@ -675,7 +675,7 @@ $.widget("ui.dialog", {
})
.height();
minContentHeight = Math.max( 0, options.minHeight - nonContentHeight );
-
+
if ( options.height === "auto" ) {
// only needed for IE6 support
if ( $.support.minHeight ) {
@@ -750,7 +750,7 @@ $.extend($.ui.dialog.overlay, {
$(document).bind('keydown.dialog-overlay', function(event) {
if (dialog.options.closeOnEscape && !event.isDefaultPrevented() && event.keyCode &&
event.keyCode === $.ui.keyCode.ESCAPE) {
-
+
dialog.close(event);
event.preventDefault();
}
@@ -786,7 +786,7 @@ $.extend($.ui.dialog.overlay, {
}
$el.remove();
-
+
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
var maxZ = 0;
$.each(this.instances, function() {
diff --git a/static/js/jquery.ui.tabs.js b/static/js/jquery.ui.tabs.js
index 4e5165a..55ec0ec 100644
--- a/static/js/jquery.ui.tabs.js
+++ b/static/js/jquery.ui.tabs.js
@@ -720,7 +720,7 @@ $.extend( $.ui.tabs.prototype, {
var t = o.selected;
self.select( ++t < self.anchors.length ? t : 0 );
}, ms );
-
+
if ( e ) {
e.stopPropagation();
}
diff --git a/static/js/jquery.ui.themeswitcher.js b/static/js/jquery.ui.themeswitcher.js
index 5f189fd..1a1b4f1 100644
--- a/static/js/jquery.ui.themeswitcher.js
+++ b/static/js/jquery.ui.themeswitcher.js
@@ -15,10 +15,10 @@ $.fn.themeswitcher = function(settings){
onSelect: function(){}
}, settings);
- //markup
+ //markup
var button = $(''+ options.initialText +'');
var switcherpane = $('