Code Monkey home page Code Monkey logo

memverse's People

Contributors

alexcwatt avatar aratrea avatar avitus avatar kayle avatar nateowami avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

memverse's Issues

Info popup cutoff in Safari at bottom

Thank you!
I always use Safari.
when I clicked on the little info button next to the rating buttons, the little sub-window popped up, but when I scrolled to the bottom of it, I was missing the last few lines of the message.

Dropdowns on Profile

The dropdowns (country, state, and church) on the update_profile page are not working.

User internet connection fails

Similar to Gmail, when the user's internet connection fails we should have a message that says "Connection to Memverse server failed... Please check your connection." People sometimes get disconnected while on the Memorize page and see the same verse coming back... Maybe there is a better solution. Any ideas?

Manage verses page is slow

  • Only return columns from verse model that are needed
  • (bigger problem): sort appears to be taking a long time -- potentially add sort key to memverse table e.g. [booknum][chnum][vsnum]
  • Load first n verses and then more verses as user scrolls. Keep n fairly large so that most users can still use search. Or just load remaining verses immediately after page load.

Allow Keyup even when blocked

Sometimes when the interface gets blocked on the Memorize page, one will release the Shift or Plus keys, but this does not register and change isShift or isPlus to false, because the interface is blocked. Then you're typing a letter "v" and it thinks you want to see the verse. I can't look into this till after the 27th; if you want to, that's great, otherwise I'll look into it later... I'm not sure what UI block we're using or where the code is for it. I thought we were using jQuery BlockUI, but we removed some of the code for it (we used to block the numbers until loaded - I can understand why this was removed)...

All we need to do is figure out how to allow keyups during that time so that isShift and isPlus can be set to false. Also, it'd be nice not to block the interface when we are just GETting the upcoming verses (maybe this is already so). Thanks.

Edit: Interface is locked due to ajax "async" requests with jQuery: http://api.jquery.com/jQuery.ajax/.

Quiz system

Currently planning this and starting to work on it. I have a local branch started... Not sure when it will be done.

Upcoming Verses can be confusing

The "Upcoming Verses" section of the Memorize page can be confusing since it seems to contradict the number of verses due as expressed on the main page (memverses/index) and since it only calculates the verses remaining based on the next 20 verses, if I'm looking at that correctly. http://getsatisfaction.com/memverse/topics/number_confusion-z58sg?utm_content=topic_link&utm_medium=email&utm_source=new_topic

Possibly change "Upcoming Verses" to those due today only or some other solution. (?)

Upload Assets JavaScript issue

"$(this).parent().ajaxSubmit({" - problem with this code. I will look into it. Assets can't be uploaded with blog posts until this is fixed.

Verse reference not clear on main memorization page

I'm also finding the font for the titles across the top of the memorizing page (just the words "verse: 1 king 20:1" [or whatever the verse happens to be] and the rest in that level) are running together for some names. The one I noticed was Phlm.. the letters kind of ran together and I had a hard time determining exactly what they were at first. Not a big deal, but it's just showing up king of clunky on my Firefox.

Selective Review

Selective review. . .

Sometimes I have an interval off for some reason, and I want to review a verse more often than MemVerse is bringing it up. Could there be a place where you could type in the reference and the verse and it would match them and tell you whether you got it correct or not?

As in: A box for the reference--you type in 1 Thessalonians 3:16

And then a second box below it where you type in the verse: "pray always"

And the system would be reading the reference and then bringing up the verse 'behind the scenes' and when we type it in (I guess it would be faster if there was no feedback) it would register as "Correct."

Kind of like the regular session, but on an on-demand basis. . . .

Upcoming Verses

I just noticed recently that (at least with the "strict" setting we are using now) the upcoming verses include the verse currently being tested... it would be nice to remove that. One reason for this is that the JavaScript on the Memorize page always removes the next verse, and it looks awkward to see the verse you just did still there in the Upcoming list (until it updates, of course). I guess we would just add something to the user model, around line 599/600, to remove the "current_mv" from the upcoming array?

Bloggity tweets

Minor bug, but Bloggity will create a tweet for your "new post" when you first save the post, regardless of whether you checked the "Is complete?" box.

Tags need work!

Things that work:

  • Can delete Tags and corresponding 'Taggings' are handled correctly.

Problems:

  • /verse/id shows only tags on 'verse' model and does not include tags on associated 'memverse' models.
  • we need to associated most frequently used tags with the verse model. (This will solve a lot of problems)
  • better yet, we need to implement UberVerses so that tags can be shared across translations (do we want this? how will we handle different languages?)

Account Dashboard - Pending Verses

This is both a minor bug and a new feature.

The bug - percentages of which verses are from which part of the Bible are based on all the user's verses, both active and pending. Should be just active, if all we show is active verses.

The new feature - how should we show pending verses? Should they be one of the columns? (Learning, Memorized, Pending?)

My suggestion is that all the columns be for Learning/Memorized verses, but we have a thing that says how many total Pending verses you have (no breakout per se). I think we would need a count saved in the user table, like the Memorized and Learning totals.

Thoughts?

Routing

Make sure we're using latest routing stuff: http://www.engineyard.com/blog/2010/the-lowdown-on-routes-in-rails-3/, http://guides.rubyonrails.org/routing.html (Got this error a while back: "DEPRECATION WARNING: You are using the old router DSL which will be removed in Rails 3.1..." and haven't looked into it much.)

Also, see if routes can be optimized. One reason code is slow in development is routes: http://blog.plataformatec.com.br/2011/02/understanding-the-latest-rails-benchmarks/?author=4.

Spurgeon Devotion not splitting properly

The Spurgeon Devotional is not always split properly. Some days it is fine, but today it is not. This causes the "Memverse Today" tab-content to be confused. I think it is due to an extra in the devotional. Not sure how to fix.

Replace Asset Uploader with Paperclip

The asset uploader on the blog broke again... It looks like attachment_fu references "ActiveRecord::Errors" which is invalid in rails 3. Should now be "ActiveModel::Errors" (see the file vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu.rb:386 for the now invalid statement).

While looking into it, I read about Paperclip (https://github.com/thoughtbot/paperclip; http://thewebfellas.com/blog/2008/11/2/goodbye-attachment_fu-hello-paperclip) and would like to try it out. The master branch of attachment_fu hasn't been updated for over two years...

I know you are upgrading to rails 3.1 right now and don't want to mess anything up, but I will try fixing attachment_fu and then looking into Paperclip once you've upgraded. Thanks!

Implement Badges

Ideas:

3 levels for some badges (bronze, silver, gold)
Rest will be a single design

3 levels


Active referrals (10, 50, 100)
Num consecutive sessions (30, 60, 365)
A very minor prophet (x, y, z) verses of prophecy
Quiz winner (3rd, 2nd, 1st place) - at least 40 contestants

Singular

Sermon on the Mount
100% Reference Recall
100% Accuracy

Quiz improvements

  • Automatically submit answers on timeout
  • Add some sort of roster
  • Implement multiple choice questions
  • Make it easier to create questions

More Ideas (May 8, 2012)

  • Have a roster (maybe w/ avatars) of everyone in the room, whether they have points or not. Show in the chat channel when someone enters or leaves the room. Tweak chat to be more like Google or Skype where name only appears once in subsequent comments from the same person.
  • Widen chat area.
  • Possibly eliminate scoreboard in favor of showing just five competitors: two ahead of you and two behind you (yourself in the middle). (It would be the four people immediately ahead of you or the four people immediately behind you if you were on either of the extreme ends.)
  • Have just one URL (www.memverse.com/live_quiz) that updates as quizzes end and new quizzes begin.
  • Build a landing screen (not a separate page; this would be done with JS) that says something like "Welcome {name}. Your current translation is {translation}, which is what you'll be using for this quiz. Enter Now!" (The "Enter Now!" would be a button that would clear away the welcome screen and show the quiz screen. There would be a countdown on both the welcome screen and the quiz screen if the quiz hadn't started yet.
  • Think of how to let users get started half-way into a question. Maybe save the most recent question info. into redis and have the client get a certain URL and the question info.
  • Show full scoreboard at end of quiz.
  • Maybe play a little "ding" noise when quiz starts and when new question.
  • "Mini Stats" updates after each question; little green arrow shoots up if you moved up overall scoreboard, but little red arrow shoots down in you moved down overall scoreboard. (Animated w/ jQuery.)
  • Ability to ban users from chat.
  • If user doesn't have a translation, make them set one in their profile. (Or maybe just let them set something temporary for the quiz.)

Leaderboards are too slow

Ideas:

  • keep memorized verses count in group model
  • can we count verses 'through' users?
  • add index on 'last_activity_date'

Allow audio capture of verses

  • Currently only possible with flash (requires media server and flash component)
  • Wait until HTML5 advanced enough
  • allow users to invite people to record a verse
  • shouldn't require a login

First-letter prompts

Per this discussion http://getsatisfaction.com/memverse/topics/hints_too_easy_to_see, we are going to allow people to hide hints with a little "X" in the corner of the mnemonic box. The question is: should we start sending the mnemonic even if they don't need it so that if they are stuck they can look at it before looking at the verse? If they don't need it and we send it, the yellow box would start by being collapsed. We can still recommend that they rate it lower... What do you think?

JavaScript keyboard shortcuts

I think that especially on the verse memorization page, this would be nice. Shortcuts I'm considering:

Alt + Shift + 1 | Rate as 1
Alt + Shift + 2 | Rate as 2
Alt + Shift + 3 | Rate as 3
Alt + Shift + 4 | Rate as 4
Alt + Shift + 5 | Rate as 5
Alt + Shift + s | Skip verse (when available)
Alt + Shift + v | Show/Hide Verse
Alt + Shift + p | Show/Hide (or Show/Collapse) Prompt (when we get this setup)

I think if you rated a verse with a shortcut, it would make it seem like you were hovering over/clicking on the rating number and show the tooltip as well...

There is a good article on this here: http://www.catswhocode.com/blog/using-keyboard-shortcuts-in-javascript. There are some libraries as well: http://www.openjs.com/scripts/events/keyboard_shortcuts/ and http://www.acunote.com/open-source/javascript-keyboard-shortcuts (this one has a rails gem, too) - I would rather not use another library, though. If we do this, I think it would be lightweight (hopefully) and go in application.js.

I think that these shortcuts would also only work if the textarea for typing verses is focused on. Otherwise, they can be used for whatever the OS or browser uses them for.

Thoughts? Even Gmail uses keyboard shortcuts... :)

Verse links breaking

Prevent verse linkage from breaking - see if there is something wrong in the code.

JavaScript charts

To work on iPads, I think we discussed JavaScript charts. No rush, but I'm just adding this issue out here. One possible library is http://www.highcharts.com/. I was recently on a site with JS charts, and so I was looking at what is available... Unless you want to do this, I'll probably look into it in a month or two.

jQuery Tools broken

The tooltips on the Memorize page are broken, and so the JavaScript after it is also not working, including the JS for keyboard shortcuts...

Update: It seems that all jquery tools stuff may be broken, including scrollable on main page....

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.