Fix some of the niceties in Post
authorChip Black <bytex64@bytex64.net>
Thu, 26 Apr 2012 08:51:15 +0000 (01:51 -0700)
committerChip Black <bytex64@bytex64.net>
Thu, 26 Apr 2012 08:51:15 +0000 (01:51 -0700)
www/js/blerg.js
www/jssrc/blerg/Blerg.js
www/jssrc/blerg/Controls.js
www/jssrc/blerg/Post.js
www/jssrc/blerg/Title.js

index 6857bdb..0d114cb 100644 (file)
@@ -62,13 +62,3 @@ function passwd_cancel() {
     $('navigation').show();
     urlSwitch();
 }
-
-function ExternalURLPost(m) {
-    this.title = decodeURIComponent(m[1]).replace(']','').replace('[','');
-    this.url = decodeURIComponent(m[2]);
-}
-
-ExternalURLPost.prototype.show = function() {
-    $('post.content').value = '[' + this.title + '](' + this.url + ')';
-    $('post').show();
-}
index af0f688..45b7d5f 100644 (file)
@@ -36,10 +36,10 @@ enyo.kind({
 
         document.body.addEventListener('keyup', function(event) {
             if (event.shiftKey && event.keyCode == 32) {
-                this.$.post.show();
+                this.waterfall('onPostVisibility', {showing: true});
                 event.stopPropagation();
             }
-        }, false);
+        }.bind(this), false);
     },
     hashCheck: function() {
         if (location.hash != this.lastHash) {
index daf06bd..8c91c29 100644 (file)
@@ -17,13 +17,13 @@ enyo.kind({
             {tag: "form", onsubmit: "loginClicked", classes: "login", components: [
                 {kind: "onyx.Groupbox", components: [
                     {kind: "onyx.InputDecorator", components: [
-                        {name: "username", kind: "onyx.Input", placeholder: "Username"}
+                        {name: "username", kind: "onyx.Input", placeholder: "Username", attributes: {tabindex: 1}}
                     ]},
                     {kind: "onyx.InputDecorator", components: [
-                        {name: "password", kind: "onyx.Input", placeholder: "Password", type: "password"}
+                        {name: "password", kind: "onyx.Input", placeholder: "Password", type: "password", attributes: {tabindex: 2}}
                     ]},
                 ]},
-                {kind: "onyx.Button", content: "Login", onclick: "loginClicked"}
+                {kind: "onyx.Button", content: "Login", onclick: "loginClicked", attributes: {tabindex: 3}}
             ]}
         ]},
         {name: "loggedInControls", showing: false, components: [
index a43abf8..112a497 100644 (file)
@@ -3,19 +3,25 @@ enyo.kind({
     kind: "Control",
     classes: "blerg-post",
     handlers: {
-        onPostVisibility: "postVisibilityUpdate"
+        onPostVisibility: "postVisibilityUpdate",
+        onLogin: "loggedIn",
+        onLogout: "loggedOut"
     },
     resizePostContentTimeout: null,
     components: [
         {tag: "h2", content: "What's on your mind?"},
         {kind: "onyx.InputDecorator", components: [
-            {name: "postContent", classes: "content", kind: "onyx.TextArea", onkeydown: "resizePostContent"}
+            {name: "postContent", classes: "content", kind: "onyx.TextArea", onkeydown: "resizePostContent", attributes: {tabindex: 4}}
         ]},
         {classes: "buttons", components: [
-            {kind: "onyx.Button", content: "Close", onclick: "closePost", classes: "onyx-negative"},
-            {kind: "onyx.Button", content: "Post", onclick: "doPost", classes: "onyx-affirmative"}
+            {name: "loginReminder", tag: "span", classes: "blerg-error", style: "margin-right: 8px; vertical-align: 60%", content: "You must log in before posting."},
+            {kind: "onyx.Button", content: "Close", onclick: "closePost", classes: "onyx-negative", attributes: {tabindex: 6}},
+            {name: "postButton", kind: "onyx.Button", content: "Post", onclick: "doPost", classes: "onyx-affirmative", disabled: true, attributes: {tabindex: 5}}
         ]}
     ],
+    create: function() {
+        this.inherited(arguments);
+    },
     getData: function() {
         return this.$.postContent.getValue();
     },
@@ -59,5 +65,13 @@ enyo.kind({
             }
             this.resizePostContentTimeout = null;
         }.bind(this), 150);
+    },
+    loggedIn: function() {
+        this.$.postButton.setDisabled(false);
+        this.$.loginReminder.hide();
+    },
+    loggedOut: function() {
+        this.$.postButton.setDisabled(true);
+        this.$.loginReminder.show();
     }
 });
index 53c87f2..c701999 100644 (file)
@@ -11,7 +11,7 @@ enyo.kind({
     components: [
         {kind: "Image", classes: "logo", src: "images/blerglogo.png", attributes: {width: 125, height: 122}},
         {tag: "h1", components: [
-            {kind: "blerg.Link", href: "#/", content: "Blërg!"}
+            {kind: "blerg.Link", href: "/#/", content: "Blërg!"}
         ]},
         {tag: "h2", components: [
             {name: "section", tag: "span"}