From 0db98ca12c95da272b10992e4d1daaa8d6d375d9 Mon Sep 17 00:00:00 2001 From: Avi Romanoff Date: Fri, 17 Aug 2012 19:57:28 -0400 Subject: [PATCH 1/3] Copy changes & reorganization for Help page --- views/help.jade | 154 ++++++++++++++++++++++++------------------------ 1 file changed, 77 insertions(+), 77 deletions(-) diff --git a/views/help.jade b/views/help.jade index acacdf0..c4e7e75 100644 --- a/views/help.jade +++ b/views/help.jade @@ -17,8 +17,8 @@ Basically, when you log into Keeba, two [sessions](http://en.wikipedia.org/wiki/Session_(computer_science)#HTTP_session_token) - are created -- one on the Keeba cloud, and one on jbha.org. The remote session allows Keeba to talk with the school's - homework website at jbha.org using a fully reverse-engineered protocol to authenticate + are created -- one on the Keeba cloud, and one on jbha.org/students. The remote session allows Keeba to talk with the school's + homework website at jbha.org/students using a fully reverse-engineered protocol to authenticate and read your account data. This data is then parsed, sanitized, and serialized into Keeba's cloud database, which is powered by [MongoDB](http://www.mongodb.org/). @@ -33,30 +33,87 @@ h3.help-header Is Keeba secure? .help-body :markdown - The short answer is **yes**. Keeba does not log or store your authentication credentials. However, your password and jbha.org session cookie - are stored in [RAM](http://en.wikipedia.org/wiki/Random-access_memory) for a short time in order to establish the remote session. + The short answer is **yes**. Keeba does not log or store your authentication credentials. That said, it is important to remember that like the jbha.org homework website, you are submitting your email credentials in - [plaintext](http://en.wikipedia.org/wiki/Plaintext) over a unencrypted HTTP connection. Therefore it may be possible for - a malicious third-party to [intercept](http://en.wikipedia.org/wiki/Man-in-the-middle_attack) and/or modify that traffic in transit. + [plaintext](http://en.wikipedia.org/wiki/Plaintext) over a unencrypted HTTP connection. Therefore it may be easier for + a malicious party to [intercept](http://en.wikipedia.org/wiki/Man-in-the-middle_attack) and/or modify that traffic in transit. - Furthermore, your data is stored by a third-party cloud database provider, [MongoLab](https://mongolab.com/home). It is possible - that employees of that company may have access to your data, but *not* your email password. + Furthermore, your data is stored by a third-party cloud database provider, [MongoLab](https://mongolab.com/home). This provider runs its + service atop an industry-leading and highly secure cloud platform, Amazon Web Services (AWS). You can review their security policies and + certifications [on their website](http://aws.amazon.com/security/). - Obviously, you take full responsibility for your use of Keeba and that the operators of Keeba are not liable for any poential data + Obviously, you take full responsibility for your use of Keeba. The operators of Keeba are NOT liable for any poential data compromise or loss. article h3.help-header Who pays for Keeba? .help-body :markdown - **Nobody, yet.** Keeba is hosted on the [Nodejitsu](http://nodejitsu.com/) cloud and it's database is hosted by [MongoLab](https://mongolab.com/home). - Keeba runs on free plans on both of these platforms. + The school does. Keeba is hosted on the [Heroku](http://heroku.com/) cloud and it's database is hosted by [MongoLab](https://mongolab.com/home). + Both of these platforms are physically hosted on Amazon's AWS US-EAST infrastructure, located in Virginia. The code, design, and development of Keeba was all done by me (Avi) in his spare time. br + .row + .span12 + section + .page-header + img.block-icon(src="/img/glyph/flag.png") + h1 How-to + small.byline So easy, a caveman could do it. + article + h3.help-header How can I see archived assignments? + .help-body + p + | Toggle "Show archived". You can do this from the options menu shown below, or by pressing + code shift + a + | . + .centex + img(src="/img/screenshot-archive.png") + article + h3.help-header How can I see more information about an assignment? + .help-body + p + | Toggle "Show details". You can do this from the options menu shown below, or by pressing + code shift + d + | . + .centex + img(src="/img/screenshot-details.png") + | This will show details for all assignments, or + i No additional information + | if the assignment has no details specified. + br + span.label.label-info Note #1 + | You can choose to show details by default by ticking + b Options → Settings → Details by default. + article + h3.help-header How can I re-import an assignment/course from jbha.org? + .help-body + p + | Force refresh your account. You can do this from the options menu shown below, or by pressing + code shift + r + | . + .centex + img(src="/img/screenshot-refresh.png") + | This will re-import any missing assignments or courses for your account. + br + span.label.label-info Note #1 + | All re-imported assignments will be marked neither as neither done nor archived. + br + span.label.label-info Note #2 + | If a course or assignment no longer exists on the jbha.org homework website, it cannot be re-imported. + article + h3.help-header How can I edit multiple assignments simultaneously? + :markdown + You can't, for now. [Let Avi know](mailto:avi.romanoff@jbha.org) if this is something you would like to see added to Keeba. + article + h3.help-header How can I delete my account? + :markdown + If you would like to permanently your Keeba account and all data stored on it, [email Avi](mailto:avi.romanoff@jbha.org). + br .row .span12 section @@ -68,11 +125,11 @@ h3.help-header Keeba is so slow! .help-body :markdown - That could be a number of things. If you're using Keeba on a congested or slow Internet connection (such as the one at school), - Keeba will definitely feel slow. Try finding a better connection or closing apps that might be hogging your bandwidth, such as + That could be a number of things. If you're using Keeba on a congested or slow Internet connection (as the school Internet can be at times), + Keeba will might feel sluggish. Try finding a better connection or closing apps that might be hogging your Internet bandwidth, such as streaming music (Pandora, Spotify, etc) or video (YouTube, iTunes downloads). - If you're using an older computer (more than 5 years), Keeba could feel sluggish. It does do a fair bit of data-crunching in the browser. + If you're using an older computer (more than 6 years), Keeba might run slowly. It does do a fair bit of data-crunching in the browser. Switching to one of the supported browsers [listed here](/unsupported) might help. article @@ -80,20 +137,20 @@ .help-body :markdown Most likely, you just forgot your email password. Click [here](https://www.google.com/a/jbha.org/DomainContact?service=mail) - to reset it via Google's reset tool. + to reset it via our school's official GMail password reset tool. Another possibility is that the actual homework website is down. See if you can log in to the jbha.org website - [here](http://www.jbha.org/students/homework.php). If you can't, the problem isn't Keeba and you should call the school. + [here](http://www.jbha.org/students/homework.php). If you can't, the problem isn't Keeba and you should contact the school. Alternatively, Keeba might be having trouble connecting to the server because of a bug. If you can log in with the above link, - but not on keeba.jit.su, then it might actually be Keeba's fault. You should [contact Avi](mailto:avi.romanoff@jbha.org) if you + but not on keeba.jbha.org, then it might actually be Keeba's fault. You should [contact Avi](mailto:avi.romanoff@jbha.org) if you think this is the case. article h3.help-header Keeba isn't importing an assignment/course from jbha.org! .help-body :markdown - If you've confirmed that the problem isn't that the jbha.org homework website is down (see above), it is possible + If you've confirmed that the problem isn't that the jbha.org homework website is down (see above), it is possible that Keeba has a bug. You should [contact Avi](mailto:avi.romanoff@jbha.org) if you think this is the case. @@ -106,64 +163,7 @@ Try refreshing the page. This usually clears up most syncing issues. If refreshing the page doesn't resolve the problem, read below. - If you've confirmed that the problem isn't that the jbha.org homework website is down (see above), it is possible + If you've confirmed that the problem isn't that the jbha.org homework website is down (see above), it is possible that Keeba has a bug. - You should [contact Avi](mailto:avi.romanoff@jbha.org) if you think this is the case. - br - .row - .span12 - section - .page-header - img.block-icon(src="/img/glyph/flag.png") - h1 How-to - small.byline So easy, a caveman could do it. - article - h3.help-header How can I re-import an assignment/course from jbha.org? - .help-body - p - | Force refresh your account. You can do this from the options menu shown below, or by pressing - code shift + r - | . - .centex - img(src="/img/screenshot-refresh.png") - | This will re-import any missing assignments or courses for your account. - br - span.label.label-info Note #1 - | All re-imported assignments will be marked neither as neither done nor archived. - br - span.label.label-info Note #2 - | If a course or assignment no longer exists on the jbha.org homework website, it cannot be re-imported. - article - h3.help-header How can I see archived assignments? - .help-body - p - | Toggle "Show archived". You can do this from the options menu shown below, or by pressing - code shift + a - | . - .centex - img(src="/img/screenshot-archive.png") - article - h3.help-header How can I see more information about an assignment? - .help-body - p - | Toggle "Show details". You can do this from the options menu shown below, or by pressing - code shift + d - | . - .centex - img(src="/img/screenshot-details.png") - | This will show details for all assignments, or - i No additional information - | if the assignment has no details specified. - br - span.label.label-info Note #1 - | You can choose to show details by default by ticking - b Options → Settings → Details by default. - article - h3.help-header How can I edit multiple assignments simultaneously? - :markdown - You can't, for now. [Let Avi know](mailto:avi.romanoff@jbha.org) if this is a feature you would like to see. - article - h3.help-header How can I delete my account? - :markdown - If you would like to permanently your Keeba account and all data stored on it, [email Avi](mailto:avi.romanoff@jbha.org). \ No newline at end of file + You should [contact Avi](mailto:avi.romanoff@jbha.org) if you think this is the case. \ No newline at end of file From eaa46c363c798a3d382a06d36402c46861ed7eee Mon Sep 17 00:00:00 2001 From: Avi Romanoff Date: Fri, 17 Aug 2012 21:24:21 -0400 Subject: [PATCH 2/3] Setup tweaks, update TOS, remove locker # from footer --- static/js/views.js | 1 + views/footer.jade | 2 +- views/layout.jade | 2 +- views/setup.jade | 43 ++++++++++++++++++++----------------------- 4 files changed, 23 insertions(+), 25 deletions(-) diff --git a/static/js/views.js b/static/js/views.js index e83fefe..4403aab 100644 --- a/static/js/views.js +++ b/static/js/views.js @@ -1145,6 +1145,7 @@ SetupView = Backbone.View.extend({ message: "Ready when you are.", kind: "success" }); + $("#form-header").text("You can set up your account below."); $("#gobutton").prop('disabled', false); } diff --git a/views/footer.jade b/views/footer.jade index dae5739..6067d99 100644 --- a/views/footer.jade +++ b/views/footer.jade @@ -11,5 +11,5 @@ footer br | Made with love, care, and sunshine by a(href="mailto:avi.romanoff@jbha.org") Avi. - | Locker #2104. Version: + | Version: b #{version} \ No newline at end of file diff --git a/views/layout.jade b/views/layout.jade index 4e76095..2ac7c57 100644 --- a/views/layout.jade +++ b/views/layout.jade @@ -33,7 +33,7 @@ html(lang='en') span.icon-bar span.icon-bar img.block-icon(src="/img/glyph/zap-white.png") - a.brand.brand-bright Keeba + a.brand.brand-bright(target="_self", href="/", data-bypass) Keeba .nav-collapse l.nav.pull-left li.nav-link diff --git a/views/setup.jade b/views/setup.jade index 3673723..eca50cb 100644 --- a/views/setup.jade +++ b/views/setup.jade @@ -2,41 +2,38 @@ #setup p .page-header - h1 Success! I'm in. + h1 Success! You're in. small I'll need a few moments to do some b one-time-only | setting up. #status form.well(method="POST", target="_self") fieldset - legend While we wait, you can set up your account below. + legend + span#form-header While we wait, you can set up your account below. br h4.control-label Nickname input#nickname.input-large(type="text", size=30, name="nickname", placeholder="Dr. Rabeeya?") p.help-block | anything you want — it's how i'll address you from now on - h4.control-label Terms of Service - p Okay I'm going to make this as simple as possible: - br - br - b 1. - | There is absolutely no warranty, implied or otherwise, that Keeba will actually work. - br - | In other words, you can't use it as an excuse to not do your homework. - br - br - b 2. - | You're using Keeba at your own risk. - br - | Any harm/broken limbs that may be caused by Keeba are entirely not my responsibility. - br - br - b 3. - | Keeba may malfunction/break/explode. Deal with it. - br - | Please let me know, and I'll do everything I can to help, but no guarantees. + h4.control-label Terms of Service (please read them) + pre + :markdown + 1. **Keeba is not an excuse** + While Keeba can be a very helpful and useful tool for managing your school life, + that doesn't mean you can blame it for not being responsible with assignments. + Your homework is YOUR responsibilty. + + 2. **Keeba is not a replacement** + Your planner might not be as interactive and fun as Keeba, but it's still an essential tool. Use it! + + 3. **Keeba is not perfect** + Keeba is very stable, but it's still new and might goof up. + Please check the [Help section](/help) first if you run into a problem. + If you're still having trouble, [let Avi know](mailto:avi.romanoff@jbha.org) and I'll try to help you out if I can. + p.help-block - | just covering my bases, you know? + | that wasn't so bad, was it? input#gobutton.btn.btn-success(type="submit", value="I agree to the terms. Let's go!", disabled) // Libraries From 9bbe0babb6c7b725d8d74f55d03ebb909f1f9796 Mon Sep 17 00:00:00 2001 From: Avi Romanoff Date: Fri, 17 Aug 2012 21:27:43 -0400 Subject: [PATCH 3/3] Tweak refresh copy --- static/js/views.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/static/js/views.js b/static/js/views.js index 4403aab..337df1c 100644 --- a/static/js/views.js +++ b/static/js/views.js @@ -906,7 +906,7 @@ AppView = Backbone.View.extend({ updateUpdatedAt: function () { app_status.set({ heading: "", - message: "Last sync with school website: " + settings.getUpdatedAt().from(moment()) + ".", + message: "Last checked for new homework: " + settings.getUpdatedAt().from(moment()) + ".", kind: "info" }); }, @@ -978,7 +978,7 @@ AppView = Backbone.View.extend({ app.update_timer = null; window.app_status.set({ heading: "Refreshing...", - message: "I'm pulling down the latest homework from the school website.", + message: "I'm pulling down the latest homework from your teachers.", kind: "info" }); }, @@ -997,10 +997,10 @@ AppView = Backbone.View.extend({ } else { var num_new = res.new_assignments + app.num_new; if (num_new === 1) { - var message = "There was 1 new assignment synced from the school website."; + var message = "There was 1 new assignment added by your teachers."; var link_text = "Click here to add it." } else { - var message = "There were " + num_new + " new assignments synced from the school website."; + var message = "There were " + num_new + " new assignments added by your teachers."; var link_text = "Click here to add them." } if (num_new === 0) {