Transition from Prototype to jQuery (TODO) #1496

Closed
arkon opened this Issue Jun 2, 2014 · 8 comments

Comments

Projects
None yet
5 participants
@arkon
Member

arkon commented Jun 2, 2014

Since the Prototype JavaScript framework is a bit antiquated and slow, we're switching to fully using jQuery (which is now the standard anyway). It should also be noted that we are also using other JS frameworks such as React (by Facebook) for tables.

Of course, vanilla JS is welcome too (which is more efficient than using jQuery for obvious reasons).

Progress/things that still need to be translated:

  • Rails 3 seems to rely on some Prototype code (prototype-snippet.js)
  • Inline Prototype code here and there in the HTML files
  • RJS files in app/views/ (which use Prototype) (converted in PR #2309)
  • FilterTables (mostly replaced with React.js tables; see issue #1696)
  • In app/assets/javascripts/:
    • grades_table.js (converted in PR #1639)
    • manage_graders.js
    • manage_groups.js
    • users_manager.js (deleted in switch to React.js)
  • #1326 (sort of replaced by React.js stuff)
  • #1323 (replaced by PR #1604)
  • #1325 (replaced by PR #1601)
  • Replacing Bluff for drawing graphs with Chart.js (done in PR #1519)
  • calendardateselect (replaced with jQuery UI date/time picker in #1511)
  • PeriodDeltaChain (uses jQuery as of PR #1511)
  • SourceCodeGlower, used for annotations (uses jQuery as of PR #1517)
  • SyntaxHighlighter adapter/mods (uses jQuery as of PR #1517)
  • The draggable bar in the marks/code view (replaced in PR #1529)
  • Anything to do with livepipe: (done in PR #1588)
    • livepipe/livepipe
    • livepipe/tabs (like in groups/graders lists)
    • livepipe/window (used in various files)
@arkon

This comment has been minimized.

Show comment
Hide comment
@arkon

arkon Jun 12, 2014

Member

Note: I'm currently working on creating a resizable column system with a draggable bar to replace the current one since I couldn't find a good one that works.

First attempt: Works fairly well, but apparently you can't select any text normally (via clicking and dragging), so I threw that out. http://jsfiddle.net/9Xzdu/7/

Second attempt: Just uses jQuery-UI, which we're already using. Allows for text selection as per normal, which is great. Seems terrible inefficient right now though. http://jsfiddle.net/gx7Hz/19/ or http://echeung.me/files/panes

Member

arkon commented Jun 12, 2014

Note: I'm currently working on creating a resizable column system with a draggable bar to replace the current one since I couldn't find a good one that works.

First attempt: Works fairly well, but apparently you can't select any text normally (via clicking and dragging), so I threw that out. http://jsfiddle.net/9Xzdu/7/

Second attempt: Just uses jQuery-UI, which we're already using. Allows for text selection as per normal, which is great. Seems terrible inefficient right now though. http://jsfiddle.net/gx7Hz/19/ or http://echeung.me/files/panes

@reidka

This comment has been minimized.

Show comment
Hide comment
@reidka

reidka Aug 7, 2014

Member

@arkon We are preparing project descriptions for next term. Would you mind taking a look at this list to see if there is anything missing from the list? Thanks!

Member

reidka commented Aug 7, 2014

@arkon We are preparing project descriptions for next term. Would you mind taking a look at this list to see if there is anything missing from the list? Thanks!

@arkon

This comment has been minimized.

Show comment
Hide comment
@arkon

arkon Aug 7, 2014

Member

@reidka A large portion of this list will be completed once the React.js tables are finished.

Member

arkon commented Aug 7, 2014

@reidka A large portion of this list will be completed once the React.js tables are finished.

@arkon

This comment has been minimized.

Show comment
Hide comment
@arkon

arkon Aug 24, 2014

Member

@oneohtrix Could you look at manage_graders.js and manage_groups.js? I think some of the methods are related to the old FilterTables, so they can probably be deleted.

Member

arkon commented Aug 24, 2014

@oneohtrix Could you look at manage_graders.js and manage_groups.js? I think some of the methods are related to the old FilterTables, so they can probably be deleted.

@arkon arkon changed the title from Move away from Prototype to Transition from Prototype to jQuery Aug 24, 2014

@arkon arkon changed the title from Transition from Prototype to jQuery to Transition from Prototype to jQuery (TODO) Sep 24, 2014

@david-yz-liu

This comment has been minimized.

Show comment
Hide comment
@david-yz-liu

david-yz-liu Feb 27, 2015

Contributor

@spring-ryanc One set of small tasks related to this is to finish up the conversion of rjs files to erb files. You should make small PRs for just a few files at a time, so you can make steady progress on this on the side each week.

Contributor

david-yz-liu commented Feb 27, 2015

@spring-ryanc One set of small tasks related to this is to finish up the conversion of rjs files to erb files. You should make small PRs for just a few files at a time, so you can make steady progress on this on the side each week.

@spring-ryanc

This comment has been minimized.

Show comment
Hide comment
@spring-ryanc

spring-ryanc Mar 22, 2015

Contributor

I removed the marks_graders rjs files as part of PR #2085

Contributor

spring-ryanc commented Mar 22, 2015

I removed the marks_graders rjs files as part of PR #2085

@arkon

This comment has been minimized.

Show comment
Hide comment
@david-yz-liu

This comment has been minimized.

Show comment
Hide comment
@david-yz-liu

david-yz-liu Mar 22, 2015

Contributor

@spring-ryanc Note: we have a Toronto student working on that table right now.

Contributor

david-yz-liu commented Mar 22, 2015

@spring-ryanc Note: we have a Toronto student working on that table right now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment