aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rwxr-xr-x_scss/imports/scss/_Base.scss18
-rwxr-xr-xcss/ninja.css6
-rwxr-xr-xindex.html4
-rwxr-xr-xjs/components/combobox.reel/combobox.js2
-rwxr-xr-xjs/components/layout/bread-crumb.reel/bread-crumb.css1
-rwxr-xr-xjs/components/popup-manager.reel/popup-manager.js3
-rwxr-xr-xjs/components/radio.reel/radio.js6
-rwxr-xr-xjs/io/system/coreioapi.js105
-rwxr-xr-xjs/io/system/fileio.js11
-rwxr-xr-xjs/io/ui/cloudpopup.reel/cloudpopup.html54
-rwxr-xr-xjs/io/ui/cloudpopup.reel/cloudpopup.js98
-rwxr-xr-xjs/io/ui/cloudpopup.reel/config.rb9
-rw-r--r--js/io/ui/cloudpopup.reel/css/cloudpopup.css99
-rwxr-xr-xjs/io/ui/cloudpopup.reel/css/cloudpopup.scss103
-rwxr-xr-xjs/ninja.reel/ninja.js4
-rw-r--r--redirect.html23
17 files changed, 519 insertions, 30 deletions
diff --git a/.gitignore b/.gitignore
index fd016bd0..6c288e8c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,4 +22,5 @@ cloud/
22 22
23/.idea/scopes/scope_settings.xml 23/.idea/scopes/scope_settings.xml
24_scss/imports/scss/_Stage.scss 24_scss/imports/scss/_Stage.scss
25compass_app_log.txt \ No newline at end of file 25compass_app_log.txt
26js/io/ui/cloudpopup.reel/.sass-cache/5fd824121af95f6044b06681535cf0639ffb5db3/cloudpopup.scssc \ No newline at end of file
diff --git a/_scss/imports/scss/_Base.scss b/_scss/imports/scss/_Base.scss
index 75ccc07d..77faa8f3 100755
--- a/_scss/imports/scss/_Base.scss
+++ b/_scss/imports/scss/_Base.scss
@@ -48,8 +48,7 @@ input.nj-skinned,
48textarea.nj-skinned, 48textarea.nj-skinned,
49button.nj-skinned, 49button.nj-skinned,
50select.nj-skinned, 50select.nj-skinned,
51select.nj-skinned option, 51select.nj-skinned option {
52button.nj-skinned {
53 -webkit-appearance: none; 52 -webkit-appearance: none;
54 outline: none; 53 outline: none;
55} 54}
@@ -122,6 +121,21 @@ input[type="search"].nj-skinned::-webkit-search-cancel-button:after {
122button.nj-skinned { 121button.nj-skinned {
123 font-size: 9px; 122 font-size: 9px;
124 cursor: pointer; 123 cursor: pointer;
124 display: block;
125 border: 0px;
126 margin: 0px;
127 padding: 4px;
128 border: 1px $color-input-border solid;
129 background-color: $color-menu-bg;
130 background-image: -webkit-linear-gradient(top, $color-radio-gradient-top 0%, $color-radio-gradient-bottom 100%);
131 border-radius: 4px;
132 color: $color-menu-text;
133 text-transform: uppercase;
134 cursor: pointer;
135 text-shadow: 1px 1px 1px $color-app-shadow
136}
137button.nj-skinned:hover {
138 background-image: -webkit-linear-gradient(top, $color-radio-gradient-bottom 0%, $color-radio-gradient-top 100%);
125} 139}
126 140
127// Radio buttons 141// Radio buttons
diff --git a/css/ninja.css b/css/ninja.css
index 9126c1d3..bf71955f 100755
--- a/css/ninja.css
+++ b/css/ninja.css
@@ -16,7 +16,7 @@
16 16
17.layout-table .flexor div:last-child { float: right; } 17.layout-table .flexor div:last-child { float: right; }
18 18
19input.nj-skinned, textarea.nj-skinned, button.nj-skinned, select.nj-skinned, select.nj-skinned option, button.nj-skinned { -webkit-appearance: none; outline: none; } 19input.nj-skinned, textarea.nj-skinned, button.nj-skinned, select.nj-skinned, select.nj-skinned option { -webkit-appearance: none; outline: none; }
20 20
21input[type="text"].nj-skinned, input[type="password"].nj-skinned, input[type="search"].nj-skinned, textarea.nj-skinned, select.nj-skinned, select.nj-skinned option { border: 1px solid #313131; color: white; background-color: #444444; font-size: 12px; font-family: 'Droid Sans', sans-serif; } 21input[type="text"].nj-skinned, input[type="password"].nj-skinned, input[type="search"].nj-skinned, textarea.nj-skinned, select.nj-skinned, select.nj-skinned option { border: 1px solid #313131; color: white; background-color: #444444; font-size: 12px; font-family: 'Droid Sans', sans-serif; }
22 22
@@ -34,7 +34,9 @@ input[type="search"].nj-skinned::-webkit-search-cancel-button { -webkit-appearan
34 34
35input[type="search"].nj-skinned::-webkit-search-cancel-button:after { content: "\2716"; } 35input[type="search"].nj-skinned::-webkit-search-cancel-button:after { content: "\2716"; }
36 36
37button.nj-skinned { font-size: 9px; cursor: pointer; } 37button.nj-skinned { font-size: 9px; cursor: pointer; display: block; border: 0px; margin: 0px; padding: 4px; border: 1px #313131 solid; background-color: #474747; background-image: -webkit-linear-gradient(top, #646464 0%, #3c3c3c 100%); border-radius: 4px; color: white; text-transform: uppercase; cursor: pointer; text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5); }
38
39button.nj-skinned:hover { background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #646464 100%); }
38 40
39input[type="radio"].nj-skinned { background-color: #474747; background-image: -webkit-linear-gradient(top, #646464 0%, #3c3c3c 100%); color: #c8c8c8; border: 2px solid #282828; width: 12px; height: 12px; overflow: hidden; border-radius: 10px; font-size: 16px; line-height: 7px; text-indent: -7px; cursor: pointer; -webkit-box-shadow: 0px 0px 2px rgba(200, 200, 200, 0.5); -moz-box-shadow: 0px 0px 2px rgba(200, 200, 200, 0.5); box-shadow: 0px 0px 2px rgba(200, 200, 200, 0.5); } 41input[type="radio"].nj-skinned { background-color: #474747; background-image: -webkit-linear-gradient(top, #646464 0%, #3c3c3c 100%); color: #c8c8c8; border: 2px solid #282828; width: 12px; height: 12px; overflow: hidden; border-radius: 10px; font-size: 16px; line-height: 7px; text-indent: -7px; cursor: pointer; -webkit-box-shadow: 0px 0px 2px rgba(200, 200, 200, 0.5); -moz-box-shadow: 0px 0px 2px rgba(200, 200, 200, 0.5); box-shadow: 0px 0px 2px rgba(200, 200, 200, 0.5); }
40 42
diff --git a/index.html b/index.html
index f12c9d90..9ee3e381 100755
--- a/index.html
+++ b/index.html
@@ -169,6 +169,10 @@
169 169
170 <script type="text/javascript"> 170 <script type="text/javascript">
171 window.onload = function() { 171 window.onload = function() {
172 // Check if we are running in Chrome
173 if(navigator.userAgent.toLowerCase().indexOf("chrome") === -1) {
174 window.location = "./redirect.html";
175 }
172 // Load the version json 176 // Load the version json
173 var req = new XMLHttpRequest(); 177 var req = new XMLHttpRequest();
174 req.open("GET", "versions.json"); 178 req.open("GET", "versions.json");
diff --git a/js/components/combobox.reel/combobox.js b/js/components/combobox.reel/combobox.js
index f262bb06..a68a7d6b 100755
--- a/js/components/combobox.reel/combobox.js
+++ b/js/components/combobox.reel/combobox.js
@@ -67,7 +67,7 @@ exports.Combobox = Montage.create(Component, {
67 var e = document.createEvent("CustomEvent"); 67 var e = document.createEvent("CustomEvent");
68 e.initEvent("change", true, true); 68 e.initEvent("change", true, true);
69 e.type = "change"; 69 e.type = "change";
70 e._wasSetByCode = this._wasSetByCode; 70 e.wasSetByCode = this._wasSetByCode;
71 e.value = this._value; 71 e.value = this._value;
72 this.dispatchEvent(e); 72 this.dispatchEvent(e);
73 73
diff --git a/js/components/layout/bread-crumb.reel/bread-crumb.css b/js/components/layout/bread-crumb.reel/bread-crumb.css
index f84c6e80..cc984609 100755
--- a/js/components/layout/bread-crumb.reel/bread-crumb.css
+++ b/js/components/layout/bread-crumb.reel/bread-crumb.css
@@ -5,6 +5,7 @@
5 </copyright> */ 5 </copyright> */
6 6
7.bread_crumb{ 7.bread_crumb{
8 background-color: #282828;
8 border-style: double; 9 border-style: double;
9 height: 26px; 10 height: 26px;
10} 11}
diff --git a/js/components/popup-manager.reel/popup-manager.js b/js/components/popup-manager.reel/popup-manager.js
index be3c1e8d..bc755f74 100755
--- a/js/components/popup-manager.reel/popup-manager.js
+++ b/js/components/popup-manager.reel/popup-manager.js
@@ -32,7 +32,8 @@ exports.PopupMananger = Montage.create(Component, {
32 addPopup: { 32 addPopup: {
33 enumerable: true, 33 enumerable: true,
34 value: function (popup, depth, blackout) { 34 value: function (popup, depth, blackout) {
35 // 35 //Fix to ensure always highest
36 this.element.style.zIndex = this._getNextHighestZindex(document.body); // Highest z-index in body
36 //TODO: Add blackout background 37 //TODO: Add blackout background
37 //Checking for manual or setting auto to next highest depth 38 //Checking for manual or setting auto to next highest depth
38 if (depth) { 39 if (depth) {
diff --git a/js/components/radio.reel/radio.js b/js/components/radio.reel/radio.js
index 954da3c4..c661ec11 100755
--- a/js/components/radio.reel/radio.js
+++ b/js/components/radio.reel/radio.js
@@ -41,7 +41,7 @@ exports.RadioGroup = Montage.create(Component, {
41 e = document.createEvent("CustomEvent"); 41 e = document.createEvent("CustomEvent");
42 e.initEvent("change", true, true); 42 e.initEvent("change", true, true);
43 e.type = "change"; 43 e.type = "change";
44 e._wasSetByCode = this._wasSetByCode; 44 e.wasSetByCode = this._wasSetByCode;
45 e.selectedIndex = i; 45 e.selectedIndex = i;
46 e.selectedItem = value; 46 e.selectedItem = value;
47 this.dispatchEvent(e); 47 this.dispatchEvent(e);
@@ -77,7 +77,7 @@ exports.RadioGroup = Montage.create(Component, {
77 { 77 {
78 value:function(event) 78 value:function(event)
79 { 79 {
80 this._wasSetByCode = event._event._wasSetByCode; 80 this._wasSetByCode = event._event.wasSetByCode;
81 this.selectedItem = event._event.value; 81 this.selectedItem = event._event.value;
82 } 82 }
83 } 83 }
@@ -126,7 +126,7 @@ exports.Radio = Montage.create(Component, {
126 var e = document.createEvent("CustomEvent"); 126 var e = document.createEvent("CustomEvent");
127 e.initEvent("change", true, true); 127 e.initEvent("change", true, true);
128 e.type = "change"; 128 e.type = "change";
129 e._wasSetByCode = this._wasSetByCode; 129 e.wasSetByCode = this._wasSetByCode;
130 e.value = this; 130 e.value = this;
131 this.dispatchEvent(e); 131 this.dispatchEvent(e);
132 132
diff --git a/js/io/system/coreioapi.js b/js/io/system/coreioapi.js
index 43812b3c..3a007028 100755
--- a/js/io/system/coreioapi.js
+++ b/js/io/system/coreioapi.js
@@ -10,7 +10,9 @@ NOTES:
10//////////////////////////////////////////////////////////////////////// 10////////////////////////////////////////////////////////////////////////
11///////////////////////////////////////////////////////////////////// */ 11///////////////////////////////////////////////////////////////////// */
12var Montage = require("montage/core/core").Montage, 12var Montage = require("montage/core/core").Montage,
13 Component = require("montage/ui/component").Component; 13 Component = require("montage/ui/component").Component,
14 Popup = require("js/components/popup.reel").Popup,
15 CloudPopup = require("js/io/ui/cloudpopup.reel").CloudPopup;
14//////////////////////////////////////////////////////////////////////// 16////////////////////////////////////////////////////////////////////////
15//Exporting as Project I/O 17//Exporting as Project I/O
16exports.CoreIoApi = Montage.create(Component, { 18exports.CoreIoApi = Montage.create(Component, {
@@ -25,17 +27,9 @@ exports.CoreIoApi = Montage.create(Component, {
25 this.rootUrl = window.localStorage['ioRootUrl']; 27 this.rootUrl = window.localStorage['ioRootUrl'];
26 //Checks for IO API to be active 28 //Checks for IO API to be active
27 this.ioServiceDetected = this.cloudAvailable(); 29 this.ioServiceDetected = this.cloudAvailable();
28 //
29 console.log('FileIO: localStorage URL detected | IO Service Detected: '+ this.ioServiceDetected);
30 //
31 } else { 30 } else {
32 //TODO: Remove, automatically prompt user on welcome 31 //IO API to be inactive
33 this.rootUrl = 'http://localhost:16380'; 32 this.ioServiceDetected = false;
34 //TODO: Changed to false, welcome screen prompts user
35 this.ioServiceDetected = this.cloudAvailable();
36 //
37 console.log('FileIO: localStorage URL NOT detected | IO Service Detected: '+ this.ioServiceDetected);
38 //
39 } 33 }
40 } 34 }
41 }, 35 },
@@ -44,19 +38,98 @@ exports.CoreIoApi = Montage.create(Component, {
44 cloudAvailable: { 38 cloudAvailable: {
45 enumerable: false, 39 enumerable: false,
46 value: function () {