Commit Graph

163 Commits

Author SHA1 Message Date
Jason Madsen b42868c8be intial ember quizzes skeleton with updated build
close CNVS-9396, CNVS-9515

test plan:
  - verify that ember app specs run as part of rake js:test
  - enable new quizzes flag
  - visit quiz index
  - verify that ember quiz app is instantiated (should see in console)

Change-Id: I4f5a0feb4b3dcd7c3055042f173207f3b8f0f0b6
Reviewed-on: https://gerrit.instructure.com/26263
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Florence <ryanf@instructure.com>
QA-Review: Myller de Araujo <myller@instructure.com>
Reviewed-by: Bryan Madsen <bryan@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
2013-11-20 17:24:01 +00:00
Sterling Cobb 8420888d20 move coures homepage buttons to right sidebar
Removes links from the main content and moves them to the right
sidebar. Also, when clicking to change the homepages default look, it
opens a modal instead of showing/hiding a form in the main content
area.

Test Plan
1. Go to a courses homepage
2. Noticed there are no links to view the course stream or edit the
homepage in the main content area.
3. There should be two links in the right sidebar. One that says "View
Course Stream" and another that says "Edit Homepage"
4. Clicking the Edit Homepage link opens a modal with a dropdown that
lets you select what you want to appear as the homepage.
5. Clicking on the Course Stream button should show the course stream.

fixes CNVS-8640

Change-Id: I1aca7267d481eb2a54297cd8691c0cfb07c1f113
Reviewed-on: https://gerrit.instructure.com/25096
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Hannah Bottalla <hannah@instructure.com>
Reviewed-by: James Williams  <jamesw@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
2013-10-15 19:54:22 +00:00
Zach Pendleton 99dbc71ece add calendar2 agenda view
fixes CNVS-8665

test plan:
  * from a console, run the following:

      account = Account.default
      account.settings[:agenda_view] = true
      account.save!

  * as any user, navigate to calendar2 and verify
    that an "agenda" button is visible in the header
    navigation;
  * verify that clicking the "agenda" button loads an
    agenda view and defaults to the current day;
  * verify that the calendar title is the current date;
  * verify that you can click back to month and week
    views and that they load as expected;
  * verify that if you click into agenda view while you
    are looking at a month or week that is not the current
    month/week, the agenda view date header reads as the
    first day of the month/week;
  * verify that if you have more than 50 events, the agenda
    view displays a "Load More" button at the bottom that
    will, when clicked, load additional events.

Change-Id: Ie365474ad166d247152ce9448b2b5a15ffc79425
Reviewed-on: https://gerrit.instructure.com/25102
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
2013-10-15 19:29:11 +00:00
Matthew Irish 8ca7669300 responsiveize the MFA page
fixes CNVS-8511

make the MFA page flexible with respect to the viewport

test plan:
- enable multi-factor auth for your account
- attempt to log in, you should be taken to the MFA page
- verify that the layout changes as you shrink the window size
- verify that no horizontal scrolling is necessary to view the content
  when the window size is fairly small
- on mobile simulator or device verify that there is no horizontal
  scrolling

- once you've set up MFA once, log out and then log back in
- verify the above things again on this shorter page

Change-Id: I08dcf494a1e1a7706a2c8f2e505756037785f4ec
Reviewed-on: https://gerrit.instructure.com/24711
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Mark Suman <marks@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
2013-10-04 23:57:33 +00:00
Jon Jensen 67c29b7660 group category create/edit dialogs, fixes CNVS-6659
feature parity with the old UI

also add account setting to enable the new UI

reorg some code so we can more easily rip out all the old stuff once we
are done

sass->scss since it's the new hotness

add reorder() method to CollectionView for when things change

test plan:
1. in the console, set the enable_manage_groups2 setting to true on your
   account
2. run delayed_jobs
3. go to the manage groups page
4. you should see the new groups UI
5. you should be able to add a new group set
6. you should be able to edit a group set
7. the tabs should be alphabetical (adding/updating a set should put it in
   the correct spot)
8. auto-creating/splitting groups should work when creating a set

Change-Id: I55f9e7785a0114954a3583257a78f71e78f47b5f
Reviewed-on: https://gerrit.instructure.com/22458
Reviewed-by: Mark Ericksen <marke@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
2013-09-18 19:43:49 +00:00
James Williams 233538509e draft state - module student progressions page
test plan:
* enable draft state
* visit the new modules progressions page at
"/courses/:course_id/modules/progressions"
* confirm that clicking on students shows their
module progress

closes #CNVS-7694

Change-Id: I95404d88785b6be4997214091e7b63728330bd07
Reviewed-on: https://gerrit.instructure.com/24176
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Hannah Bottalla <hannah@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2013-09-12 20:32:37 +00:00
Ryan Florence e95c754d92 split up stylesheets so ie can render them
fixes CNVS-7415

test plan:
- site should look correct, especially in IE

Change-Id: Id77c09412ef865f9ffda38546cae52a834885101
Reviewed-on: https://gerrit.instructure.com/23393
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Ryan Florence <ryanf@instructure.com>
2013-08-17 01:35:14 +00:00
Braden Anderson 079095a713 conversations: course filter
fixes CNVS-6402

test plan:
  * open conversations beta page
  * choose options from course and scope dropdowns
  * verify that the messages are constrained by their intersection
  * verify that changing your filters updates your URL
  * verify that refreshing/bookmarking/sharing URLS keeps state
  * verify that the course filter includes non-favorite courses
  * verify that you can filter the message list by a non-favorite course
  * verify that the "More Courses" list excludes favorite courses
  * verify that the current course filter display at the top of the
    messages list is updated with the current course name and code
  * verify that the current course filter display is present but empty
    if "All Courses" is selected
  * verify that the styling matches the spec, aside from
      different optgroup formatting

Change-Id: Ie3215096ac2410b77be81e2f9dad44ea1ac0d98e
Reviewed-on: https://gerrit.instructure.com/22675
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Cam Theriault <cam@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
2013-07-31 16:07:34 +00:00
Simon Williams 1d4e1dd142 cleanup and renaming
closes CNVS-7160

test plan:
- the new assignment index page should still load

Change-Id: I9c2cae774fbd37190b68d8f2ce2b86a15050e981
Reviewed-on: https://gerrit.instructure.com/22609
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2013-07-29 21:16:39 +00:00
Bracken Mosbacker 28f28556ff adds editable class and begins styles on new modules
Closes CNVS-6895 and CNVS-6898

Change-Id: I628030c28e99be7814f0ce92646567bb07505c33
Reviewed-on: https://gerrit.instructure.com/22521
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2013-07-19 23:45:09 +00:00
Jon Willesen dd0b5a2fab render whole calendar2 header ourselves
use our own header instead of the built-in fullcalendar header
to fix some accessibility issues with the navigation buttons.

fixes CNVS-5691

test plan:
no new functionality, just regression test the calendar2 header.
In particular:
 - make sure the navigation buttons (previous, today, next) are
   accessible via screenreader.
 - make sure header title updates when you change views.
 - make sure the header title updates when you naviagate with
   the next and previous buttons.
 - make sure the header title updates when you navigate by
   clicking a day on the sidebar mini-calendar.
 - make sure the header works and looks good with scheduler
   enabled and disabled. see the "scheduler enabled" account
   setting, available only to site admins.
 - test scheduler modes, make sure badge works
 - make sure the header works and looks good with the "old
   calendar" account setting enabled and disabled. there is no
   UI for this setting. in the console, do this to enable:
   - a = Account.find(<insert account id here>)
   - a.settings[:calendar2_only] = true
   - a.save!
   and this to disable:
   - a = Account.find(<insert account id here>)
   - a.settings.delete(:calendar2_only)
   - a.save!

Change-Id: If53c24b5cee117bb44f0703ba1824c3253f5677a
Reviewed-on: https://gerrit.instructure.com/21705
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
QA-Review: Zach Pendleton <zachp@instructure.com>
Tested-by: Zach Pendleton <zachp@instructure.com>
2013-07-06 19:11:38 +00:00
Mark Ericksen afa72b4f69 conversations modal dialog ui
fixes CNVS-6209

NOTE: this is the UI portion and it is part of the whole
      inbox UI redesign. it is incomplete by itself.

testing steps:
* from page load /conversations/beta, start a new conversation
  and verify it follows the new design

Change-Id: I1e7647e33e5d84ad0bfe58f8a132b33634fa1063
Reviewed-on: https://gerrit.instructure.com/21692
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
QA-Review: Cam Theriault <cam@instructure.com>
Product-Review: Mark Ericksen <marke@instructure.com>
2013-07-05 21:11:06 +00:00
Zach Pendleton 102c261e54 new conversations ui.
fixes CNVS-6401

new conversations ui and html. accessible from
/conversations/beta. only functionality right now is
message list and display of messages.

also only accessible to site admins.

test plan:
  * as site admin, navigate to /conversations/beta and
    verify that the page renders without any layout
    issues;
  * verify that messages load in left pane and, when
    clicked, appear in the right pane.
  * verify that page is not accessible to users who are
    not site admins.

Change-Id: Id88b113c214b059728f4e06c2762603e1d5c9a13
Reviewed-on: https://gerrit.instructure.com/21789
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
QA-Review: Cam Theriault <cam@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
2013-06-28 21:52:40 +00:00
Cameron Matheson 8a52963a25 initial new styles for teacher assignment index
some initial layout and styles for the new assignment index page view.  right
now we're only looking at the teacher's view of this page.  this is not yet
functional, but provides a good layout base on which to build functionality. it
is disabled by default.  to enabled, set :enable_draft = true in the
account settings:

Account.find(<id>).tap{|a| a.settings[:enable_draft] = true}.save!

closes CNVS-5679

test plan:
- with the setting disabled, make sure there are no changes to the assignment
  index page or the assignment edit page.
- with the setting enabled, make sure the layout shows up for teachers (but it
  won't be functional)

Change-Id: I34066fadd0f360f5bab3addb56757bc0301ecd4b
Reviewed-on: https://gerrit.instructure.com/21762
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cameron Sutter <csutter@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
2013-06-27 18:36:12 +00:00
Stanley Stuart d3ed574b72 css for phones inside canvas mobile
closes #CNVS-5800

test plan:
1. take a quiz inside canvas on iOS and android
   phones, it should be formatted for the smaller
   screen size

Change-Id: Iee45a6fec28772e492a2e9bf5909ff624762c273
Reviewed-on: https://gerrit.instructure.com/21159
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Mark Suman <marks@instructure.com>
Reviewed-by: Ryan Florence <ryanf@instructure.com>
QA-Review: Ryan Florence <ryanf@instructure.com>
2013-06-17 21:58:43 +00:00
Joe Tanner 649c5cb85b Mobile oauth confirmation page, closes CNVS-5455
Mobile styling of oauth confirmation page.
Also refactors mobile login page to use boostrap.

test plan:
1. go to Site Admin > Developer Keys
2. add or use existing key to fill out this URL:
    /login/oauth2/auth?client_id=<ID>&response_type=code&redirect_uri=<URI>
    (URI should be encoded)
3. in a Chrome tab change the User Agent to a mobile device
4. in that same tab go to the url in step 2
    (you may be redirected to login)
5. the oauth confirmation page should look decent
6. click Log In, you should be redirected to URI + ?code=<long code>

Change-Id: I32a4d0638838dd23667ceaf40c02a5be84434f08
Reviewed-on: https://gerrit.instructure.com/21220
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Joe Tanner <joe@instructure.com>
Product-Review: Joe Tanner <joe@instructure.com>
QA-Review: Joe Tanner <joe@instructure.com>
2013-06-06 21:20:21 +00:00
Ryan Shaw f7bf153ae3 use sass for jammit css compression, no more java!
jammit can use sass to minify css.  this is great
because now we don't need the yui-compressor.
which means that we don't need java.

Change-Id: I22d0f35340077a866ffe1000443bc5a061a9e613
Reviewed-on: https://gerrit.instructure.com/11588
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2013-06-04 18:25:56 +00:00
Mark Ericksen 7b8fe27e82 redesign conferences index page and edit form
fixes CNVS-5985, CNVS-5661

testing instructions
=====================
on the conferences page:
* create a new conference
* can edit and update an existing conference
* can delete a conference
* after deleting all conferences in a group,
  the text showing "no conferences" should appear
* web conference type selection is disabled
  but visible when there is only 1 conference type
* conference type selection is visible and enabled
  when there are multiple types to choose from.
* concluded conferences can be deleted
* users should not be able to update or delete
  when they don't have permission
* long running conference that is started
  should show the "Join" button and the
  "End" button that will close the conference.

Wimba Conferences:
* "Manage Advanced Settings..." link
  shows up for and does not appear for other
  conference types

BBB Conferences:
* make sure the "recording" checkbox appears and
  is persisted properly
* test recording and playback of BBB conferences

Change-Id: Id97e9d4bdc509396b6d995a2b18e600f9426aba2
Reviewed-on: https://gerrit.instructure.com/20939
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
QA-Review: Jon Willesen <jonw@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
2013-06-01 00:18:37 +00:00
James Williams 9c0e883a7f add warning popover for 'crowdsourced' locales
test plan:
* there are no crowdsourced locales currently, so
 before starting the server,
 add one by manually editing config/locales/locales.yml
 and adding "crowdsourced: true" under a language, e.g.:

>en:
>  locales:
>    en: English
>  crowdsourced: true

* for each area where a language is selectable:
 * use the select box to select a crowdsourced language
 * and confirm that an icon appears, and that hovering over it
reveals a popover warning box about selecting a crowdsourced
language

* areas to test:
 * current user's profile settings
  (visit '/profile/settings' -> click "Edit Settings")
 * account settings
 * course settings

closes #CNVS-4967 #CNVS-4278

Change-Id: I2e83df950b815fb01e5f0a2aa324020415198e5a
Reviewed-on: https://gerrit.instructure.com/21019
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Matt Goodwin <mattg@instructure.com>
2013-05-31 18:44:30 +00:00
Joe Tanner d273a6788b move cog menu from course settings to people page, closes #CNVS-5752
test plan:
	verify that the cog menu functions as it did on the course settings users tab
	some good edge cases to test are:
	- user enrolled as Student and TA (or other roles) in same (or different) sections
	- user enrolled as Observer and other roles (should see 'Link to Students' and 'Edit Sections')

Change-Id: I2bf7546b8a5f63ffd603fe4ee9055595089a99eb
Reviewed-on: https://gerrit.instructure.com/20523
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
2013-05-21 19:18:24 +00:00
Sterling Cobb 947f458d85 Add new content migration UI
This adds the ability for you to process migrations quickly. Includes a
paginated list for migrations and issues.

Test Plan:
 * Make sure old migrations UIs work the same
 * Make sure new UI works wonderfully
   * go to /courses/:id/content_migrations to see the new UI

fixes: CNVS-4732

Change-Id: I7cabc51348c32ed03d581e495756eefbf1060ad3
Reviewed-on: https://gerrit.instructure.com/20349
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
2013-05-18 04:58:35 +00:00
Ryan Florence b18af81c24 add users from courses/:id/users page
test plan:
1. go to /courses/:id/users
2. click 'add users'
3. should work much like the add users UI in
   the course settings -> users tab, but look
   a little different

Change-Id: Icec24a41385e595d8b79dc5a7232545f0aff926e
Reviewed-on: https://gerrit.instructure.com/18888
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Florence <ryanf@instructure.com>
Product-Review: Ryan Florence <ryanf@instructure.com>
QA-Review: Ryan Florence <ryanf@instructure.com>
2013-04-18 19:43:54 +00:00
Mark Ericksen 828b42ce30 ui enabling admins to search notifications
adds account setting and new user permission

fixes CNVS-4726

Testing Notes:
============
* To enable...
  * Account Settings, check Feature
    "Admins can view notifications"
  * Account permission under "Account Roles"
    becomes available under "Admin Tools"
    group. Check "View notifications"
  * appears under account "Admin Tools"
    sidebar area on "View Notifications"
    tab.
    (EX: /accounts/[account_id]/admin_tools)
* Verify "View Notifications" tab does not
  appear if either account setting or user
  permission is disabled. (For AccountAdmins)
* Verify a SiteAdmin is able to access the
  feature.
* Verify that notifications are returned
  and displayed for a selected user
  and date range.
* Verify it displays "No messages found"
  when user doesn't exist or the user
  exists but the date range doesn't
  return data.
* Verify that the user_id is required when
  searching
* Verify that the "To Date" cannot be before
  the "From Date".
* Verify an invalid date like the word "couch"
  gets ignored and the actually used date/time
  is displayed in the overview text description.
* Verify searching by dates when either or both
  are left blank and when both are used.
* Verify that the messages automatically
  fetch more when you scroll down.
* Verify that before the results, it displays
  the user's name and the dates used for the
  results.

Change-Id: I9d2689b4760af57bbc2d15fd7d50610dcf593a7e
Reviewed-on: https://gerrit.instructure.com/18629
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
2013-04-16 22:11:16 +00:00
Ryan Florence 6601753eb7 implemented dress_code
also added styles to make .form-controls look
good in dialogs.

closes #CNVS-4302

Change-Id: Ibe54ee4046ac255b0b0ea83d32afc88e4a820464
Reviewed-on: https://gerrit.instructure.com/19331
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
QA-Review: Ryan Florence <ryanf@instructure.com>
Product-Review: Ryan Florence <ryanf@instructure.com>
2013-04-09 15:43:16 +00:00
Eric Berry dc78c9dea3 resolved bootstrap fieldset legend spacing issue
fixes CNVS-4973

test steps:
- go to the QTI import page (/courses/#/imports) and click the inport
  from content package button
- select QTI .zip file from the drop down
- ensure that the spacing under the legends have ample spacing
- test this on all browsers, including Safari!

Change-Id: I3fd8845a8de2e74c37eb340f292936f313e2292d
Reviewed-on: https://gerrit.instructure.com/19317
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
QA-Review: Cam Theriault <cam@instructure.com>
Product-Review: Eric Berry <ericb@instructure.com>
2013-04-03 22:36:23 +00:00
Eric Berry 4759656278 updated the UI on faculty journal with bootstrap stylings
fixes CNVS-4694

test steps:
- visit the faculty journal (/users/1/user_notes)
- ensure the list appears fine
- ensure that the create entry form uses the new bootstrap style
- ensure you are able to delete an entry

Change-Id: I21ed2b00a2fa2ae6214b1618ebc47954c50cb047
Reviewed-on: https://gerrit.instructure.com/18681
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Eric Berry <ericb@instructure.com>
Product-Review: Eric Berry <ericb@instructure.com>
QA-Review: Eric Berry <ericb@instructure.com>
Tested-by: Eric Berry <ericb@instructure.com>
2013-03-22 20:43:31 +00:00
James Williams cce1932a08 bootstrap touches for content migration choose items forms
test plan:
* confirm that the form for choosing items looks better when
 importing a migration and when copying a course

fixes #CNVS-4696

Change-Id: Ibecc691a8c3164255a379a00e3ba26e75b6a078f
Reviewed-on: https://gerrit.instructure.com/18796
QA-Review: Adam Phillipps <adam@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2013-03-21 18:19:13 +00:00
Eric Berry 92deea27e3 discussions and announcements with long body causes line break fixed
when viewing the discussions or announcements page with a topic
containing a very long body, the body text would pop below the
avatar at certain browser widths

fixes CNVS-4593

test steps:
- go to announcements page
- create an announcement with a very long body
- view the announcements list page
- move the browser width from narrow to very wide and ensure the
  body of the announcement does not pop below the avatar
- perform the same steps for discussions

Change-Id: Ic1a8680c9d81920b0d8c7800c98fcfcac0c2e5b3
Reviewed-on: https://gerrit.instructure.com/18608
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Cam Theriault <cam@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
2013-03-15 16:19:42 -06:00
Ryan Florence 926cb0ca24 Fully adopt Bootstrap & update css to work with it, closes: #CNVS-1344
this commit does the following:
* upgrade bootstrap-sass gem to most recent version
* switches to using bootstrap's normalize.css and forms.css
  which fixes a whole bunch of misformatting of how bootstrap
  stuff is supposed to look, but changing those 2 affects
  a lot of our old stylesheets.
* gets rid of unified_buttons.sass and just uses bootstraps buttons.
  .ui-button @extends these because we still have to support .ui-button
  for modals & buttonsets. but .button is no longer supported.
* a lot of css file reorganization (there's no more 'blue' and
  'normal canvas', there's just canvas)
* a bunch of files had to be tweaked to look good with these changes.

test plan:
This change touches every page in canvas so, no kidding, we need to make
sure every page looks OK. In order to do that:
1. each sprint team needs to give a +1 after they make sure all the
   pages in the features they are over look good.
2. the QA person on each team needs to look at the pages for their
   teams features for a QA +1

things to look for specifically when testing:
* buttons: this gets rid of all those red 'cancel' links
  that are actually buttons, make sure all the buttons you see
  look right.  if you see 2 plain gray buttons next to each other
  like [Save] [Cancel], we should make the primary one blue (by
  adding the .btn-primary class)
* Forms: a lot of this change has to do with how form elements look,
  especially <select>s, <input>s and <label>s. look at the diffs
  for the ones that have the most changes and make sure those look
  good, but also check for the ones I missed and make sure those
  look good too.
* and just random style changes, if something looks ugly or broken
  (and it didn't before), we should fix that.

Also:
just use a link instead of a drop-menu for adding event from sidebar

we used to have a drop down menu for adding events
to cal2 from the sidebar where you'd hit a cog
and it'd ask you if you wanted to add an event or
an assignment.  this just simplifies it to an add
icon.

this: http://cl.ly/image/133a2A3q3q1M
instead of: http://cl.ly/image/46463o2s3W0g

Change-Id: I384fe273934bca96bf28423afb1402c7792d8766
Reviewed-on: https://gerrit.instructure.com/15422
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Florence <ryanf@instructure.com>
QA-Review: Ryan Florence <ryanf@instructure.com>
2013-02-28 21:06:45 -07:00
Sterling Cobb 00e128636a Add new styles to the modules page
fixes #CNVS-3588

This commit adds css elements and removes some old html elements to make
the modules page look like the new mockup.

Test Plan
1. Go to the new modules page
2. See awesomeness.
3. Buy sterling candy.

Change-Id: I52e17f004ca4ed32141e0b0f967ffa9d2cbd6e00
Reviewed-on: https://gerrit.instructure.com/17524
QA-Review: Adam Phillipps <adam@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2013-02-15 19:10:43 -07:00
Simon Williams 5cc715b967 refactor assignment show/edit to use backbone
change and clean up the assignment show and edit pages to use new code
standards and to follow the style guide.  separates the logic for viewing and
editing an assignment and moves editing into a backbone model.o

closes CNVS-930

test plan:
- make sure you can still view and edit existing assignments.
- make sure all fields in the assignment form work (enable turnitin and
  assignment freezing for a comprehensive test)
- make sure submitting an assignment as a student still works
- make sure downloading and uploading submissions as a teacher still works
- make sure adding a new assignment group, group category, grading standard,
  and rubric still work
- make sure the show page renders correctly for both a student and a teacher.

Change-Id: I9ca6c5d56eb386d35a62f6b816a03ebebda662d4
Reviewed-on: https://gerrit.instructure.com/16823
QA-Review: Amber Taniuchi <amber@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Stanley Stuart <stanley@instructure.com>
2013-02-12 13:22:18 -07:00
Bracken Mosbacker 4bb2413cfd Use html5 to show videos by default
using a library called mediaElement.js, try to show
all kaltura video and audio using html5 and fall back
on flash if needed.

Test Plan:
 * in all the different browsers (including mobile safari/chrome)
 * try recording webcam videos (as homework submission, as content in a wiki page, etc)
 * view those same pages
 * view recorded submission in speedgrader

use the playlist urls to get kaltura urls

This will get CDN-configured links from Kaltura instead of direct Kaltura
links. It also allows for the case where a MediaObject does not exist. When
one is requested, it will be created in the database and details fetched.

Test Plan for cdn urls:
 * Make sure kaltura is enabled
 * Open your web inspector's network tab
 * Browse to a recorded media file in Canvas, and play it
 * Ensure that the file is streamed from kaltura's configured CDN (s3 in the case of instructure).

Test Plan for nonexistent MediaObjects:
 * Make sure kaltura is enabled
 * In a wiki page, record a media comment
 * Destroy that MediaObject from the database (use Inspect Element to find the media_id which looks like 0_1234abcd)
 * Reload the page, and verify that you can still view the video

fix error when viewing a video file that has an unknown source type

There are some videos that have valid sources that don't
have an extension for some reason. This fixes handling
of those correctly.
There was also a bug that would sort by bitrate as
strings, instead of as integers. The sort function was
refactored out and tests written to ensure that's fixed.

Test Plan
 * find a video in kaltura that has an asset with no extension,
   and make sure you can view that video in a wiki page

refs #CNVS-324

Change-Id: I8ff24a94b8af11fc29b84e45545f8a8b639eeaff
Reviewed-on: https://gerrit.instructure.com/16824
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
2013-02-01 12:53:00 -07:00
Cameron Matheson fd833e450f kill old new group profile page
Change-Id: I0d0f7a624a7ab6676823dd2c01fe634263cef844
Reviewed-on: https://gerrit.instructure.com/15337
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
2012-11-28 16:42:34 -07:00
Zach Wily 207c333ab3 Revert HTML5 video playback and subtitles
There are still several issues that need to be resolved with this, so it's
being removed from master for now.

Commits being reverted are:

f77b1d77f0
  "make media_object info action not an api, fixes: #11464"
497156a4f7
  "fix error when viewing a video file that has an unknown source type"
39eaab2269
  "use the playlist urls to get kaltura urls"
a22f8c13a3
  "Use html5 to show videos by default & show subtitles"

Change-Id: Iefcef83a42174634485e1c61e993244b0029aae2
Reviewed-on: https://gerrit.instructure.com/15440
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
2012-11-16 11:30:53 -07:00
Ryan Shaw 7e8196c93d get rid of unused files leftover from summer CN work
this removes all the css/javascript for collections
and some communities stuff, we can reintroduce them
if/when we actually use them

Change-Id: I7751bdf4653eac869d9d20eaed8c8835a8649930
Reviewed-on: https://gerrit.instructure.com/15358
Reviewed-by: Ryan Florence <ryanf@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2012-11-15 15:19:05 -07:00
Ryan Shaw 28c43b29a6 improve the mathquill equation editor for tinyMCE, fixes: #11663
now looks like: http://cl.ly/image/3Q2R0l0n3e15

cleaned up styling so it used real dialog buttons.

refactored code to lazy-load math quill css, js
and font only when first needed.

Change-Id: I7cf0894222d7fb7d6fc2ddb09935b2c849bbd4ac
Reviewed-on: https://gerrit.instructure.com/14562
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2012-11-13 16:19:44 -07:00
Ethan Vizitei ad6e7e0b3a assets.yml does not provide a good __FILE__
if you try to start the rails console from
another directory on beta it explodes.  This
just allows the config file to require
the plugin_assets class based upon a relative
pathing from the rails root directory.

TEST PLAN:
  SERVER
  1) Start the server process
  2) you should be able to browse to
    the server and have appropriate
    styles for any plugins (like the
    analytics area)
  CONSOLE
  3) 'cd' to any subdirectory of the rails
root directory
  4) start the rails console
  5) the console should start without exploding

Change-Id: Ia14aa10d33ceeb830baf3ae640ef3c17f4c7d908
Reviewed-on: https://gerrit.instructure.com/15281
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2012-11-13 11:32:43 -07:00
Simon Williams dd62ef5805 new dashboard design
the new dashboard design categorizes recent activity into buckets that can be
expanded/collapsed, and inidividual messages can be dismissed.  the categories
are announcements, conversations, discussions and assignments.  this redesign
applies to the homepage dashboard, the group home page, and the course homepage
when "recent activity dashboard" is selected as the course home page type.o

the motiviation is that the dashboard should capture and present in one place
important information happening in all the user's courses or groups, and allow
for jumping into this information to see more details:

- announcements/discussions should show on the dashboard when they are created,
  or when there are root replies to recent announcements
- conversations should show on the dashboard when there is new activity
- assignments should show on the dashboard when they are created, or when
  changes are made at least a couple hours after being created

the presence of a dashboard item means there is activity for that item that may
be of interest to the user.  additionally, the dashboard items will show
read/unread state (excluding assignments) for items which the user has not yet
viewed.

additionally, global messages such as course inivitations, account level
announcements, and new user messages have been restyled, but will keep their
place above the recent activity widget on the dashboard.

test plan:
- visit many exising user's dashboards and make sure they are functional in the
  new style.
- visit canvas as a brand new user (no enrollments), a new user enrolled in
  a new course and make sure the dashboard is restyled and the messaging makes
  sense.
- make an account level announcement and make sure it shows up on user's
  dashboards.
- create all different types of conversations: single, group, bulk private,
  from submission comment, add user to convo, etc. and make sure the
  appropriate dashboard items appear and make sense
- create discussions and announcements, reply to them at the root level and at
  the sub entry level (sub entries will not make new dashboard items), test
  from both a read and unread user's perspective, making sure dashboard items are
  correct. (note that read/unread state will not be correct for existing items
  before this code is applied, but should be correct for future items moving
  forward)
- dismiss dashboard items and account announcements, make sure they stay
  dismissed.
- test creating assignments, waiting > 2 hours, and updating due dates or other
  assignment details. make sure items appear. note that unread state will not
  exist for assignment notifications.

closes #10783
refs #11038
refs #11039

Change-Id: I276a8cb1fae4c8a46425d0a368455e15a0c470c5
Reviewed-on: https://gerrit.instructure.com/14540
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2012-11-11 21:56:16 -07:00
Ethan Vizitei 7316b82dc0 refs #5773 fix plugin asset loading for 1.9.3
Ruby 1.9 uses a different YAML engine (although
we reset it to the 1.8 engine in the delayed
job plugin).  This resulted in the yaml
dump to the assets.yml file (for plugin
asset inclusion) not producing
quite the expected output format at server 
startup (before the delayed job plugin had
loaded), which caused
selenium tests to fail in the canvalytics 
plugin because they ONLY loaded the assets.yml
file at startup rather than before each
request like in development.

A small regex change in the ruby block
in assets.yml fixed the actual problem.  While
I was in here, I moved the ruby block into
it's own class so that all the processing
can be tested.  the "subdoc" stuff in bundle_yml
could probably still stand to be slimmed down
a bit but this is a decent intermediate step.

Change-Id: I9300c167130fb3305c7f37710b0e3cfcfda19f48
Reviewed-on: https://gerrit.instructure.com/15111
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2012-11-08 13:40:32 -07:00
Zach Pendleton 8878f84365 improve ui on messages page, add reply option.
refs #11068

this commit (1) updates styles on messages page; and
(2) adds a reply option to the messages page that sends
a reply email to a selected message's reply-to address.

test plan:
  * create a course with at least two users enrolled;
  * as user 1, create a new discussion topic;
  * as an admin, go to /users/{{user-2-id}}/messages and
    find the message;
  * click the "reply" link, enter a test message in the
    modal form, and send it;
  * view the discussion and verify that the new message
    appears as expected.

Change-Id: I40b4596a548f7b1c9865ce6f9e875e384f2284e1
Reviewed-on: https://gerrit.instructure.com/14636
Reviewed-by: Mark Ericksen <marke@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2012-10-29 17:48:04 -06:00
Ryan Shaw a22f8c13a3 Use html5 to show videos by default & show subtitles
using a library called mediaElement.js, try to show
all kaltura video and audio using html5 and fall back
on flash if needed.  fixes #3969

test plan:
in all the different browsers (including mobile safari/chrome)
try recording webcam videos (as homework submission, as content in a wiki page, etc)
view those same pages
view recorded submission in speedgrader

AND...
Allow uploading subtitle tracks to videos

when you upload a video, you will now see a [cc]
box in the player for that video if you are
the uploader of that video and in a modern browser.
it will have a link to upload a caption track in
SRT or WebVTT format in any language you specify.
once you attach a caption track to any of your
videos, other people that view it will be able
to choose that track while playing it.

helpful for people that are deaf or that speak
another language!

this change also adds google analytics tracking to
videos so we know when a given media_id was
played, paused, and ended.

test plan:
* record a video, go to play the video
* (only) you should see a [cc] button (make sure others don't)
* click the "upload subtitles" link, a dialog should appear
  that lets you choose a language and file to upload.  here's
  one you can test with:
  http://mediaelementjs.com/media/NT113_u008_v005_transcript.srt
* refresh, you (and anyone else that can see video)
  should now have the option to select that track
  for subtitles. (if using in HTML5 player)
* (only) you should see a delete 'x' on it to delete
  it, when you click it it should go away. reload
  to make sure it is not there.

Change-Id: I8ed8f14167e68c750815ec6496a9f992b744aa56
Reviewed-on: https://gerrit.instructure.com/2963
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2012-10-11 12:28:48 -06:00
Brian Palmer 95894e16e4 switch user page views to use Backbone/PaginatedCollection
closes #10786

test plan: no user-visible changes, the page view list at the bottom of
/users/X should work and display exactly as before.

Change-Id: I9e1c6ae74fdf4ec5c64a17b4d9dff92cd173c4f7
Reviewed-on: https://gerrit.instructure.com/13830
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2012-10-08 12:24:32 -06:00
Ryan Shaw ac9eebb275 new discussion topics/announcement index, edit and create
closes: #7172

test plan:

* open discussion topic index page:
  - see how it looks in blank course
  - full course
  - try graded & unread filters (make sure you see things you expect to and not those you don't)
  - do bulk actions by clicking checkbox for a few and hitting delete and lock buttons
  - verify infinite scroll works
  - verify that as a student you don't see posts that had delayed posting
  - click "create new" button to make a new one, make sure it works
  - do all the above in the announcement index page

* while viewing announcements index:
  - verify teacher can create external feed on right
  - no right side unless external feeds exist or they are teacher
  - external feeds are listed
  - only teacher can delete external feed

* while editing/creating new discussion/announcement
  - verify that announcement cant be made into assignment
  - for discussion topic, set as assignment and make sure the assignment settings set.
  - cant change discussion -> announcement (& vise versa)
  - type crazy & blank input, verify that it validates it for you
  - title cant be longer than 254
  - make sure these features work:
    - podcast feed
    - student posts in podcast feed
    - delayed posting
    - toggling threaded/unthreaded
    - must post before seeing replies
  - attach file, remove file attachment, upload new attachment should work

* make sure announcements/discussions look & behave right in other places they show up
  (like course, user dashboard)

* if you can think of any other places where you can edit/create discussions/announcements, make
  sure that still works

Change-Id: Ib0acaff8542bf09f99cd7aa99fb3ed16c999d224
Reviewed-on: https://gerrit.instructure.com/12655
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2012-08-17 09:26:04 -06:00
Zach Pendleton 35b3fd355a paginate course people page w/ ajax. fixes #9678
return students and teachers/TAs 50 users at a time, and
display them in an infinitely scrolling div. also update
the styling of the scrolling divs to better reflect that they
are scrollable to users w/o permanent scrollbars (e.g. OS X).

test plan:
  * create a course with over 50 student or teacher/ta
    enrollments;
  * view the course people page and verify that student
    and teacher enrollments load as expected;
  * scroll the field with the most enrollments and verify
    that when the bottom is reached more enrollments load;
  * verify that when all enrollments have loaded, the div
    no longer attempts to load new enrollments;
  * create a new course section and add enrollments to it;
  * as a user with permissions limited to section, verify
    that only enrollments in the allowed section are
    displayed.

Change-Id: I2e6485a2edf950acf58f5ccbc75c2965297aed04
Reviewed-on: https://gerrit.instructure.com/12680
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
2012-08-13 14:50:29 -06:00
Mark Ericksen 36cf340563 Rewrite of the Notification Preferences page. Closes #8066, Closes #9400
Implementing the re-designed Notification Preferences page.

Testing plan:
=========
* Verify that expected preferences can be set.
* Verify that it supports accessibility (screen readers) for blind users
* Verify that mobile users (iPad at least) can smoothly interact.

Change-Id: I2b98f2477932d800d2ec3de580e47a95f827616b
Reviewed-on: https://gerrit.instructure.com/12356
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2012-07-25 10:04:36 -06:00
Brian Whitmer 8a7a42ffff developer keys mgmt page
Site admins can manage developer keys. This provides a
basic interface for allowing key management. Admins can
add new keys, edit existing keys, etc. Also adds an
icon url for each key. If keys have an icon url, then
the oauth screen will display this icon to end-users.

test plan:
- manually add a key from the "developer keys" page in
  the site admin account
- confirm that the key is created correctly
- edit the key
- confirm that the changes persist
- delete the key
- confirm that the key is properly deleted

- create more than 15 developer keys
- confirm that the page properly paginates

- set an icon url for a key
- do the oauth dance
- confirm that the icon appears in the approval step

- do the oauth dance for a key without an icon url
- confirm that no icon appears in the approval step

Change-Id: I5d64d14974fdcef8be21c6aa84ab13f681217bd7
Reviewed-on: https://gerrit.instructure.com/10979
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2012-07-18 09:13:52 -06:00
Ryan Shaw 97eb6d1077 fix styling for selectmenus, fixes: #9434
test-plan:
look at the drop down in: speedGrader (in a course with multiple sections)
multiple choice quiz question answers,
the "expand all/unread" button on a discussion topic page
…and make sure they look good

Change-Id: I2c56059990dc526ca2ca82a024748a138b4ee7dc
Reviewed-on: https://gerrit.instructure.com/12308
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jake Sorce <jake@instructure.com>
2012-07-17 20:35:04 -06:00
Ryan Shaw 05dd27b7d2 fix user and group profile styles that got ruined
Change-Id: Ieaee3f77c197e6875ba23c8cb0c31d7098fcbc00
2012-06-22 12:06:57 -06:00
Ryan Shaw 0c8d3386c4 unify jqueryui, bootstrap and our buttons
Change-Id: Ieee31a083bbffce428f45886269dd3e0df45de9a
2012-06-21 23:30:44 -06:00
Ryan Shaw 864d272aac fix popup styles
Change-Id: I4a895da0fac38c616d1d59967148336fb828783f
2012-06-13 16:33:59 -06:00