Commit Graph

106 Commits

Author SHA1 Message Date
George Stephanis 506a1141f7 Should be an array, not an object. 2015-08-12 14:41:52 -04:00
George Stephanis 72c16a2472 Let's do a simpler way of changing Object to array.
Underscore gives us lots of tools, it would be a shame not to use them.
2015-08-12 14:39:34 -04:00
George Stephanis c326b8f54d Add a way to get filtered rates -- affected by search. 2015-08-12 14:31:07 -04:00
George Stephanis c65f5b17b2 Set up listeners for searches. 2015-08-12 14:30:52 -04:00
George Stephanis 435ef9218f Optimize the search field selector. 2015-08-12 14:30:26 -04:00
George Stephanis 4e1922e9be new updateUrl function to store search queries and pagination changes in the url.
This makes it easier for folks to bookmark a page, share a url, etc.
2015-08-12 14:19:45 -04:00
George Stephanis 10255fcdd4 Globally cache the search field from the dom. 2015-08-12 14:19:01 -04:00
George Stephanis e9f0325ac1 Sanitize the pagination for scope on load. 2015-08-12 14:17:50 -04:00
George Stephanis c4f3d90588 Add in tracking for changes. 2015-08-12 12:59:13 -04:00
George Stephanis 56218b0824 Add in a notification for unsaved changes. 2015-08-12 12:59:13 -04:00
George Stephanis 843fef6e26 Remove debugging per_page override. 2015-08-12 12:59:12 -04:00
George Stephanis a7a12f977e Kinda silly to have min length 3 on a field that holds max 2. 2015-08-12 12:59:12 -04:00
George Stephanis 5ff9e2e52e Reorder where we're running the before unload 2015-08-12 12:59:12 -04:00
George Stephanis d8fdfe4c87 Manually trigger change event. Why?
Unsure why this needs to be manually triggered, but its seems to.
2015-08-12 12:59:12 -04:00
George Stephanis a8b1cabc0b Be more specific as to what we're listening for. 2015-08-12 12:59:12 -04:00
George Stephanis ca13f5785b Listen for changes in form inputs.
When one is found, update the model to reflect the data in the dom.
2015-08-12 12:59:12 -04:00
George Stephanis efcb9f5048 Give the Model a setRateAttribute method.
This should simplify updating when listening for changes in the form.
2015-08-12 12:59:12 -04:00
George Stephanis 1332ef4a71 String.trim() polyfill. 2015-08-12 12:59:12 -04:00
George Stephanis d52c4d1fde Don't base size of news off the dom. 2015-08-12 12:59:11 -04:00
George Stephanis 1a066ebbe0 Swap to associative array for model. 2015-08-12 12:59:11 -04:00
George Stephanis 388a584914 Not actually used, comment it out. 2015-08-12 12:59:11 -04:00
George Stephanis 9887fbaf50 Probably tidier to use `event` and not `e` 2015-08-12 12:59:11 -04:00
George Stephanis 0996778567 Figured out how to avoid hardcoding the instance. 2015-08-12 12:59:11 -04:00
George Stephanis 5783a20794 Don't use `this` in a callback with the wrong context.
@todo: Find a way to stop needing to refer to the specific instance
from the abstract class.
2015-08-12 12:59:11 -04:00
George Stephanis 0fb85f4656 Use $(window).on() instead of window.addEventListener. Because ¯\_(ツ)_/¯ 2015-08-12 12:59:10 -04:00
George Stephanis dc649e2964 JS objects + trailing commas = sad IE 2015-08-12 12:59:10 -04:00
George Stephanis 187e253177 Remove some debugging 2015-08-12 12:59:10 -04:00
George Stephanis ce7cb1f65d Add a `beforeunload` event to prompt before leaving with unsaved changes. 2015-08-12 12:59:10 -04:00
George Stephanis b4682d7f2d Change how things are called to the new bb render. 2015-08-12 12:59:10 -04:00
George Stephanis f7c2223a23 Change the structure to Backbone models/views. 2015-08-12 12:59:10 -04:00
George Stephanis 9e5abc22ad Whoops! Comma, not semicolon. 2015-08-12 12:59:10 -04:00
George Stephanis b75093b640 Optimization, save the $table selector to avoid some dom lookups. 2015-08-12 12:59:09 -04:00
George Stephanis 386ec26fb9 Whitespace tweaks. 2015-08-12 12:59:09 -04:00
George Stephanis e197bc242f Retool the export to use the global object, not parsing out of the dom. 2015-08-12 12:59:09 -04:00
George Stephanis a1d7121c99 Update the current page when the number is changed. 2015-08-12 12:59:09 -04:00
George Stephanis 7bebbaff9e Pagination now works by first, prev, next, last.
Still need to get number based pagination working.
2015-08-12 12:59:09 -04:00
George Stephanis cf59aec17d Add in and populate pagination template.
The buttons don’t actually do anything yet, but it outputs accurately
and inherits core styles.
2015-08-12 12:59:09 -04:00
George Stephanis d9b2907ae2 Begin to handle pagination.
This lets the initial view display only a single page, future commits
will add in the paginater.
2015-08-12 12:59:08 -04:00
George Stephanis 0608bcce19 The name resetter should also be run after each render. 2015-08-12 12:59:08 -04:00
George Stephanis f9fd4ada58 Wrap the rendering code inside a function that the data can be passed to. 2015-08-12 12:59:08 -04:00
George Stephanis 7985aec296 Ernest the JS so none of it evaluates before dom ready. 2015-08-12 12:59:08 -04:00
George Stephanis 26b95a4d80 Inline documentation explaining some functionality. 2015-08-12 12:59:08 -04:00
George Stephanis 7c60e48b0c Add some code comments. 2015-08-12 12:59:08 -04:00
George Stephanis 37f10c18cd Reposition when autocomplete is triggered.
Also, instead of searching through the whole dom, only search in the
tbody.
2015-08-12 12:59:07 -04:00
George Stephanis 308c7f8676 Whitespace tweaks 2015-08-12 12:59:07 -04:00
George Stephanis ea0b9b96b9 Optimization: Don't use $.size(), use native Object.length instead. 2015-08-12 12:59:07 -04:00
George Stephanis 676af1f308 JSHint fixes.
The other advantage of splitting js out of php files — jshint can run
on it! :) :) :)
2015-08-12 12:59:07 -04:00
George Stephanis d3922a96cd Don't constantly rescan the dom for tbody
We have a cached version of $tbody a level up.
2015-08-12 12:59:07 -04:00
George Stephanis 1b035b43a3 Swap `jQuery` to `$`
It’s more readable, and safe to do as we’ve aliased it back in the
enclosure.
2015-08-12 12:59:07 -04:00
George Stephanis 8c47c0df1d Migrate current_class from php to js 2015-08-12 12:59:07 -04:00
George Stephanis 52d4ea822c Extract 'No Rows Selected' string 2015-08-12 12:59:07 -04:00
George Stephanis 18293cf365 Extract the autocomplete for states and countries data.
Localize it!
2015-08-12 12:59:06 -04:00
George Stephanis 5d5a64753d Migrate csv columns to localize script. 2015-08-12 12:59:06 -04:00
George Stephanis 39749c4563 Move js in from php template file. 2015-08-12 12:59:06 -04:00
George Stephanis c128e4f826 Change variable name to consistent `$tbody` 2015-08-12 12:59:06 -04:00
George Stephanis a63ef876d7 Rename and tweak how js is registered.
Thanks @claudiosmweb for the suggestion to match existing conventions.
2015-08-12 12:59:06 -04:00