Commit Graph

61 Commits

Author SHA1 Message Date
James Williams 1242eff9b0 endpoint for identifying assignments for bulk grade export
also adds a feature flag for bulk sis grade export

test plan:
* enable the bulk sis grade export flag
* teachers should be able to mark assignments
 as postable to SIS (same as if the
 "Post Grades to SIS" flag is enabled)

* should be able to reach the API GET endpoint
(should be documented under the SIS Integration category)

 /api/sis/grade_export/accounts/:account_id/assignments

* this should return a list of course and assignment ids
 corresponding to the assignments with this checkbox marked

closes #SIS-1058

Change-Id: Ic1017d494ead63f1c9433f1cda93bc3c6ca4580c
Reviewed-on: https://gerrit.instructure.com/54418
QA-Review: Clare Strong <clare@instructure.com>
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-05-27 15:33:37 +00:00
Jeremy Stanley eabb597b43 turn on better_file_browsing globally
test plan: new files should be enabled everywhere
and should be locked in the feature settings UI
(can't be turned off)

closes CNVS-20656

Change-Id: I3a5b361deeb90780c899eaa3a84bf1eecfec2bbf
Reviewed-on: https://gerrit.instructure.com/55010
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-05-26 20:34:34 +00:00
Weston Dransfield e944459cc1 Create a feature flag that stops copying the query params to the post body for LTI
fixes PLAT-1022

Test Plan
 - Turn on the 'Don't move LTI query params to POST body' feature flag in the root account
 - Launch a tool with a query string in the URL
 - make sure the query params are not copied to the POST body

Change-Id: Ie3446086d5caa957558e0dafa1cec992934d48e8
Reviewed-on: https://gerrit.instructure.com/54399
Tested-by: Jenkins
Reviewed-by: Nathan Mills <nathanm@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
2015-05-20 15:29:43 +00:00
Strand McCutchen bde0aea2d9 cleanup refactor of Rubocop's Style/BlockComments
fixes: CNVS-20009

Prefer # over begin/end style comments.

This cleanup refactor was automatically generated using
this command:

  `rubocop $(find . -name '*.rb') --only Style/BlockComments --auto-correct`

These code changes were autocorrected then reviewed.
Change-Id: Ia263a4b53a7a3e01d9ccc6122d6146bc1468e651
Reviewed-on: https://gerrit.instructure.com/52905
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Strand McCutchen <smccutchen@instructure.com>
QA-Review: Strand McCutchen <smccutchen@instructure.com>
Tested-by: Strand McCutchen <smccutchen@instructure.com>
2015-05-01 22:38:53 +00:00
Jeremy Stanley 8e134c6c20 import files as unpublished if usage rights required
test plan:
 0. enable "better file browsing" and "usage rights required"
    in a course
 1. upload and expand a zip file and confirm the files are
    unpublished initially
 2. confirm that a file imported from an imscc package is
    (a) unpublished in the new course if no usage rights
        were set in the source course, regardless of whether
        the file was published in the source course
    (b) unpublished in the new course if it was unpublished
        in the source course, regardless of whether usage
        rights were set in the source course
    (c) published in the new course if it was published in
        the source course and had usage rights set.
 3. repeat step 2, but with course copy instead

fixes CNVS-19620

Change-Id: I9a32adeafb94e4922ba95ad6466c72aca3fd3598
Reviewed-on: https://gerrit.instructure.com/52465
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-04-21 17:37:30 +00:00
Spencer Olson d7162d0e12 make grading periods feature flag a course level flag
make the grading periods feature flag a course level flag, and also
'unlock' the account level grading periods. now, a teacher can edit
account level periods, but when they click 'save' it will create
a new course-level grading period instead of altering the original
account-level period. also added a link to the feature flag settings
page if there is only one grading period on the page. in addition,
if only template periods are being shown on the page and you're
logged in as a teacher, added a message that notifies the user
that the periods were created by an administrator for them.

closes CNVS-18741
closes CNVS-19692

test plan:

this commit makes substantial changes to the way grading periods are
being displayed, deleted, and saved on the
'accounts/:account_id/grading_standards' page and the
'courses/:course_id/grading_standards' page. users should still be able
to create/update/delete grading periods without problems on those pages.

in addition, this commit makes changes to the feature flag settings pages
for admins and teachers. make sure the feature flags are working correctly
(try setting the MGP flag to 'on', 'off', and 'allow' as an admin and see
how it affects the feature flag options for sub-accounts and teachers).

Change-Id: I0b442e708a8049180b55a86098e30a2c64673eda
Reviewed-on: https://gerrit.instructure.com/51594
Tested-by: Jenkins
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
Product-Review: Spencer Olson <solson@instructure.com>
2015-04-16 15:19:49 +00:00
Cameron Sutter ade2d115d3 add quiz universal plugin feature flag
closes CNVS-19377

test plan:
 - verify that there is a new feature flag named "Quiz LTI plugin"
   that must be allowed from the root account, but can be switched
   on or off on the course

Change-Id: I42870d920f93667ef9f147a64b0e06990d5f3b90
Reviewed-on: https://gerrit.instructure.com/50592
Tested-by: Jenkins
Reviewed-by: Ryan Taylor <rtaylor@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
2015-03-23 15:51:05 +00:00
Rob Orton bec4472543 Revert "allow IE8 if setting is set"
This reverts commit fabfb4acc2.

Change-Id: I0fd84fe0150d112ff1006e5cf41f211f7814e4fb
Reviewed-on: https://gerrit.instructure.com/49807
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2015-03-04 22:46:30 +00:00
Jeremy Stanley d06051d02a don't enforce usage_rights_required unless new files is on
test plan:
 - enable "Require Usage Rights" but disable "Better File Browsing"
   and ensure files uploaded to the files page via the upload button,
   drag/drop, and wiki sidebar are not locked by default
 - enable both features and confirm that the usage rights requirement
   is enforced before files can be published (whether they are
   uploaded via files page upload button, drag/drop, or wiki sidebar)

fixes CNVS-18979

Change-Id: Iba09c672f6cb7b9e1518942ef95be14170d82fcb
Reviewed-on: https://gerrit.instructure.com/49799
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-03-04 17:21:27 +00:00
Ryan Shaw fabfb4acc2 allow IE8 if setting is set
this is an experiment so we can allow customers to
try ie8 instead of immediately redirecting them
to a page that says IE8 is not supported

Change-Id: I883b00316d47bd48c89093c9e5dcdb6e13431fe4
Reviewed-on: https://gerrit.instructure.com/49625
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2015-03-03 22:10:48 +00:00
Eric Berry b27294a720 LTI 2 Registration
Heavily refactored app center and external tools settings. Added
LTI2 with feature flag

fixes: PLAT-732
fixes: PLAT-732
fixes: PLAT-734

Test steps:

Visit settings on an account:
- Add LTI2 tool
- Add LTI1 tool manually
- Add LTI1 tool via URL
- Add LTI1 tool via XML
- Edit LTI1 tool
- Edit LTI2 tool (permissions)
- Disable LTI2 tool
- Delete LTI1 tool
- Delete LTI2 tool

Visit settings on a course:
- Add LTI2 tool
- Add LTI1 tool manually
- Add LTI1 tool via URL
- Add LTI1 tool via XML
- Edit LTI1 tool
- Edit LTI2 tool (permissions)
- Disable LTI2 tool
- Delete LTI1 tool
- Delete LTI2 tool

Extra items to test:
- Verify adding invalid URL on LTI2, close modal, click add button
  resets the forms
- Verify toggle enable/disable LTI2
- Verify LTI2 form submit via Enter key
- Verify disabled LTI2 apps are shown
- Flag LTI2 app as disabled when disable
- LTI2 feature flag

Change-Id: Ic8925cf5cfba0ebee9ed3242b4e2bff7809a3e98
Reviewed-on: https://gerrit.instructure.com/45816
Reviewed-by: Nathan Mills <nathanm@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: Matt Zabriskie <mzabriskie@instructure.com>
Product-Review: Eric Berry <ericb@instructure.com>
2015-01-22 21:04:43 +00:00
Josh Simpson b477397b70 remove 'development' flag on sortable name feature
closes CNVS-17621

This commit removes the 'development' bit on the sortable name feature
for the gradebook.

Test plan
- Navigate to course feature flags in a production environment
- The sortable name feature should be visible

Change-Id: I8fe5d340767a97852db272d7bd9509f9b2fe35bf
Reviewed-on: https://gerrit.instructure.com/46178
Product-Review: Bryan Madsen <bryan@instructure.com>
Reviewed-by: Bryan Madsen <bryan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
2014-12-23 00:04:45 +00:00
Matt Wheeler 2bfb9f75f1 Turn on student groups feature flag for all accounts
Delete some tests around old groups

Fixes CNVS-17547

Test plan:

1) As an admin, visit the account settings page, click on the
   'Feature Options' tab, and see that the ' New Student Groups Page'
   feature is 'ENABLED' and does not have the 'beta' label

2) As a student, visit the groups page for a course, and see that
   you are shown the new groups page.

Change-Id: I0a809fb1fedba020112d4214ab0859418283f023
Reviewed-on: https://gerrit.instructure.com/45983
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brad Horrocks <bhorrocks@instructure.com>
Reviewed-by: Mark Severson <markse@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Matthew Wheeler <mwheeler@instructure.com>
2014-12-18 20:17:29 +00:00
Ryan Shaw 0a7ee968ff fix capitalization for feature flag titles
Change-Id: Ifc41738ca66e050668f8551ae49900e0dd0933da
Reviewed-on: https://gerrit.instructure.com/45907
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2014-12-16 23:39:59 +00:00
Bryan Madsen f71280273c remove beta tag from "Prefer HTML5 for video playback" feature flag
fixes #CNVS-17490

test-plan:
* go to the feature options tab on an accounts settings
* verify the beta tag is gone from "Prefer HTML5 for video playback"

Change-Id: If1cdc695df94513271751ced4edbc3cf55a47c6b
Reviewed-on: https://gerrit.instructure.com/45734
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
2014-12-13 00:18:33 +00:00
Spencer Olson 81e9d0ba2e hide feature flag for multiple grading periods
hide 'multiple grading periods' feature flag
for everybody except site-admins.

closes CNVS-16985
Change-Id: Ibd04232c3a9fb7131167ae5e30dcbc70d70c0168
Reviewed-on: https://gerrit.instructure.com/44618
Reviewed-by: Cameron Matheson <cameron@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Spencer Olson <solson@instructure.com>
Product-Review: Spencer Olson <solson@instructure.com>
2014-11-19 16:10:11 +00:00
Jeremy Stanley 9fccb94652 'require_usage_rights' feature flag
test plan:
 - as site admin, set feature to 'allowed' in a root account
 - as a teacher in a course under this account, see that feature
   becomes available to be allowed in course settings

closes CNVS-15864

Change-Id: I569e6febf44bcf75a46bcbbbc25d15a99571cc46
Reviewed-on: https://gerrit.instructure.com/44567
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
2014-11-18 15:34:20 +00:00
Ryan Shaw 7345c52351 allow 'better_file_browsing' feature flag in prod
this makes it so the 'better_file_browsing' feature
is no longer 'hidden' in prodcution

Change-Id: I138c9c1ee77d53b91e2fac2244c7c91e298a2b26
Reviewed-on: https://gerrit.instructure.com/43943
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Dan Minkevitch <dan@instructure.com>
2014-11-12 19:49:40 +00:00
Spencer Olson b51b345550 add option to display students by sortable name in gradebook
when the feature flag is turned on, student names will be
displayed as their sortable name in the Gradebook. The default
sortable name is 'Last, First' - so 99% of the time this change will
flip the displayed names from 'First, Last' to 'Last, First' in the
Gradebook (unless the sortable name has been explicitly changed in
settings).

test plan:

1. As a teacher, view the Gradebook for a course that has at least 2-3 students in it.
2. Notice the student names are displayed as 'First-Name Last-Name'
3. Go into the course's Settings --> Feature Options, and turn the
    'Gradebook - List Students by Sortable Name' feature on.
4. Visit the Default Gradebook, and notice the student names are displayed
    as their sortable names (sortable name is  "Last-Name, First-Name" by default)
5. Visit the Individual View Gradebook, and click the dropdown to select a student
    in the 'Content Selection' section. Notice the student names are displayed by
    their sortable names ('Last-Name, First-Name' by default).

Note: In the Individual View Gradebook, in the 'Student Information' section, the
  student name will always appear as 'First-Name Last-Name'. I figured we would only
  want to show 'Last, First' when the name appears in a list. If we want to display
  the name as 'Last, First' in the 'Student Information' section when the feature
  is toggled on, I can certainly make that change.

closes CNVS-8947

Change-Id: Ia3c6ae39b53d3762a8847445c90c9c16195bf336
Reviewed-on: https://gerrit.instructure.com/44121
Product-Review: Hilary Scharton <hilary@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
2014-11-12 19:22:52 +00:00
Paul Hinze e815e7e8c0 default html5 first videos feature flag to ON
this was flipped to "on" for every root account with the notorious
rollout, so it should be the default going forward

Change-Id: I7c56e18ebe24560a1d23944a2530844415e01c00
Reviewed-on: https://gerrit.instructure.com/43977
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
2014-11-07 17:28:55 +00:00
Braden Anderson 2f9171080d course catalog
test plan:
  * open a course's settings page
  * enable listing the course in the public index but not
      making the course content public
  * open the course home page as an unregistered user
  * verify that only the course's title and description are accessible

  * open root account feature flags page
  * enable Course Catalog

  * open your "My Courses" page
  * verify that the right pane includes a "Browse more courses" link
  * click the link
  * verify that you can browse courses allowed in the public index

  * log out
  * verify that the homepage includes a "Browse courses" link

Change-Id: I44f96396859283d76bfe527672612ff71ca4ae67
Reviewed-on: https://gerrit.instructure.com/24682
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Braden Anderson <braden@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2014-11-07 17:15:10 +00:00
Jeremy Stanley c64fee5eba update feature flag documentation for 'hidden_in_prod'
refs CNVS-16352

Change-Id: Icfbfce03c48a48fbe07f531be90406fe278f2a8d
Reviewed-on: https://gerrit.instructure.com/43389
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
QA-Review: Jon Willesen <jonw@instructure.com>
2014-10-30 17:06:48 +00:00
Ahmad Amireh e026c7ad4d CQS: Feature Flag & Ember quizzes purging
- The "New Quiz Statistics" feature flag now converts the regular
  statistics page into the new one that uses the React/CQS client app
- All Ember quizzes code gone
- canvas_ember_urls gem gone
- quiz_moderate feature flag gone
- quiz_stats feature flag is now allowed in prod
- statistics_cqs explicit/hidden route gone, but the statistics_cqs ERB
  and coffee bundle are still there to help ease the transition later

Closes CNVS-16330

TEST PLAN
---- ----

  - go to /courses/:course_id/quizzes/:quiz_id/statistics
    + verify you get the old/regular stats page
  - enable the "New Quiz Statistics" feature flag
    + refresh that page, verify you see the new app

Now turn the flag on and off and play around the quizzes pages, verify
everything looks OK.

Change-Id: I01fc5da80fd206df08338823ffb446a1e3a06ed0
Reviewed-on: https://gerrit.instructure.com/42965
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Taylor <rtaylor@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
2014-10-24 08:47:55 +00:00
Jeremy Stanley bfcaa96bd2 implement 'hidden_in_prod' feature status
this is 'hidden' in production environments and 'allowed' elsewhere

test plan:
 - The 'better_file_browsing' feature should be hidden in production
   environments (such as a portal with config/testcluster.yml
   removed).

fixes CNVS-16352

Change-Id: Ic8eefcb53122d27fbf9094cbc010efdbd40e2a59
Reviewed-on: https://gerrit.instructure.com/43098
Reviewed-by: Jon Willesen <jonw@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
2014-10-21 22:12:39 +00:00
Josh Simpson 3b5b1f87d0 add multiple grading periods feature flag
closes CNVS-15959
Add a feature flag (development / beta only) to use with the multiple
grading periods feature.

Test Plan
- In a development or beta environment (to include QA portals), you
  should see the feature flag for 'multiple grading periods'.  It should
  default to 'Allowed', and be tagged as 'development'.

Change-Id: I559e278c37d297c68e6c5e4262969839a038bafa
Reviewed-on: https://gerrit.instructure.com/42122
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cameron Matheson <cameron@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
2014-10-03 23:50:49 +00:00
Jeremy Stanley 58fb282035 make 'development' features invisible in production
also remove the 'development' tag on existing features, other
than those that manually made themselves invisible in prod.
we'll let 'beta' suffice for the purpose of informing the user
that a feature is not fully baked.

test plan:
  - Deploy normally to your QA portal.  The 'quiz stats'
    feature flag should be available and operational.
  - Remove the testcluster.yml file from your config/
    directory (or move / back it up to a safe place)
  - Restart your QA portal.
  - The quiz stats feature flag should not be available
    or visible.

fixes CNVS-15724

Change-Id: I9e4e46f8cc4f54ac62f5226dbca09ae4885c93a9
Reviewed-on: https://gerrit.instructure.com/41551
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
2014-09-25 14:47:10 +00:00
Michael Nomitch 506e786db4 DA - modules
fixes CNVS-14095
fixes CNVS-15157

test plan:
  - with DA on and off
    - go to modules page
      - only the right assignments show
      - completion requirements ignore
        assignments that cant be seen by a user
    - modules page works with changing sections
      - complete/incomplete updates properly
      - as does locked/unlocked
    - modules page shows correct content when
      a students grade is deleted and this makes
      them lose assignment visibility
    - modules api doesnt return any content that
      a student cannot see

Change-Id: Ia1acfd919214823cdfc3b45e974876b4529bb14d
Reviewed-on: https://gerrit.instructure.com/38970
Product-Review: Hilary Scharton <hilary@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Mike Nomitch <mnomitch@instructure.com>
2014-09-22 21:23:44 +00:00
Simon Williams c1977aca00 require_dependency specific feature files for spring
Change-Id: I25ac29b0d489f06c256cdbb4da0cfcdb3108c5f3
Reviewed-on: https://gerrit.instructure.com/40573
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
2014-09-05 02:38:27 +00:00
Ryan Shaw 5ab6d5beb5 Make sure no one has the new styles feature enabled
Since the work we are doing here is still very much
WIP, this makes sure no one has the new styles feature
flag turned on

this is a different approach than previous patchsets
since, because of caching or whatever, it was not
working correctly on test portals.

this just renames the feature so if anything was cached
for the previous feature, it won't matter.

and finally, just to clean up, we clear out the db
of any people that had set the old, now meaningless,
feature flag of 'new_styles'

fixes: CNVS-13571 CNVS-14903

test plan:
a) enable the feature flag before checking out the
   patch set
b) check out the patch set and run migrations
c) verify that the feature is no longer set and
   is hidden from non-site-admins

Change-Id: I6230064fe965c80128b047786c393043292114d5
Reviewed-on: https://gerrit.instructure.com/36225
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2014-08-25 16:01:34 +00:00
Sean Lewis 057e40edc1 Changed the spelling of 'dificulty' to 'difficulty' in lib/feature.rb
fixes CNVS-14763

test plan:

- Navigate to your profile page
- Click the down arrow on "Use High Contrast Styles"
- Confirm the spelling of 'difficulty' is now correct and no longer 'dificulty'.

Change-Id: Ife3bf310b5dc45fa609dfaa362814631f2e9e6f4
Reviewed-on: https://gerrit.instructure.com/39854
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bryan Madsen <bryan@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
QA-Review: Bryan Madsen <bryan@instructure.com>
2014-08-25 15:43:23 +00:00
Josh Simpson dea8c63410 add conditional feature flag on quiz stats
closes CNVS-14678
This commit allows the quiz stats feature flag to be registered only when
within the beta environment (or development or test). It should not be available in production.

Test plan
- Deploy normally to your QA portal.  The 'quiz stats' feature flag should
  be available and operational.
- Remove the testcluster.yml file from your config/ directory (or move
  / back it up to a safe place)
- Restart your QA portal.
- The quiz stats feature flag should not be available or visible.

Change-Id: If51af6bae18b31fed8f7b2d666f59562ad0fb18e
Reviewed-on: https://gerrit.instructure.com/39330
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
2014-08-15 16:37:07 +00:00
James Williams bd906e75bc add feature flags for LOR external tools
test plan:
* add an external tool configured for the extensions
 going to be used by LOR (:course_settings_sub_navigation,
 :course_home_sub_navigation, :migration_selection)
* confirm that it is not shown to a user unless either
 the account-level feature flag is enabled or the
 user-level flag is enabled

closes #CNVS-14626

Change-Id: I06e189fc1f2d745613353ea1b3f98b4f4b2c87b6
Reviewed-on: https://gerrit.instructure.com/39111
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
2014-08-14 15:11:06 +00:00
Matt Wheeler 61fced4f3d Conversations inbox opt out
Closes CNVS-11854

Test Plan:
1) Restart  your server after checking out this code (there is new feature flag)
2) As a user, visit /profile/settings and see that there is no option
   for disabling the inbox
3) As an instructure employee viewing settings for the root account,
   turn "on" the inbox opt out feature flag. If the button says "allow"
   instead of "on", you are in the wrong place and want to be on the
   account's settings, not the site admin settings.
4) As a user, visit your settings again: /profile/settings
5) See that you can now disable the inbox.
6) Do so.
7) Check the that conversations notification settings no longer appear
   at /profile/communication
8) Check that when you have new conversation messages, the unread
   messages badging doesn't display on the inbox link in the main nav
9) Visit your settings a 3rd time, and un-disable the inbox
10) check that the inverse of 7 & 8 are now true

Change-Id: I061e2d3ab9052a7809fb43f80d8e2e92d99316ee
Reviewed-on: https://gerrit.instructure.com/38313
Reviewed-by: Joel Hough <joel@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Matthew Wheeler <mwheeler@instructure.com>
QA-Review: David Josse <david@instructure.com>
2014-08-06 23:12:26 +00:00
Ryan Florence 88afac883e [wip] magic modules
Change-Id: I68283129aa2fe8146ab804adbce1fb6699f2f5bb
Reviewed-on: https://gerrit.instructure.com/37213
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Product-Review: Ryan Florence <ryanf@instructure.com>
QA-Review: Ryan Florence <ryanf@instructure.com>
2014-07-28 21:24:37 +00:00
Ryan Shaw 27c2ac1ee9 create "K12" feature flag
closes: CNVS-14347

Yay, we finally have a way to tell if someone is a K-12 
or higher ed account!

All new features that are K-12 specific should be behind
this feature flag.

test plan:

this should be hidden from accounts but you should
be able to turn it on manually by doing
Account.find(<id>).enable_feature! 'k12'

this feature flag doesn't actually turn anything
on yet, so no visual changes should happen.

Change-Id: I567e13928607acc941708f3505c31e3af47fda14
Reviewed-on: https://gerrit.instructure.com/37925
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
2014-07-22 19:12:07 +00:00
James Williams 3b3fbf0213 fix typo in better file browsing description
closes #CNVS-14324

Change-Id: I492c8aaae22556f3f332eb3c924db28b08ccfef3
Reviewed-on: https://gerrit.instructure.com/37860
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2014-07-21 14:47:22 +00:00
Jason Madsen 84a23ed740 keep quiz stats in beta only for now
closes CNVS-14001

test plan:

  - quiz stats feature should be available in beta
  - quiz stats feature should not be available in prod

Change-Id: If094589558b44b11b989b0b0e38b36359a1edfb3
Reviewed-on: https://gerrit.instructure.com/37347
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
2014-07-07 21:30:37 +00:00
Derek DeVries c4a6c4197d allow quiz stats feature flag to be used
fixes CNVS-13612

test plan:
  - go to the feature flags page
  - quiz stats should no longer have a 'hidden' badge

Change-Id: I55bb4fa493701e2bce99ec2a8b8d586a76088ea2
Reviewed-on: https://gerrit.instructure.com/36390
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
2014-06-18 04:16:00 +00:00
Cameron Sutter c36566b5de rip out gb1 and srgb feature flag
fixes CNVS-13293

test plan:
 - regression on gb2 and srgb
   to make sure they both still work properly

Change-Id: I4ec554589b6a77a113d2faf46e7b530faa2d535f
Reviewed-on: https://gerrit.instructure.com/35501
Product-Review: Dana Danger <dana@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
2014-06-13 20:16:16 +00:00
Drew Bowman e1a1b7ae2e rename student outcomes gradebook feature
fixes CNVS-12951

test plan:

- navigate to the feature options
- student outcomes gradebook should be renamed
  student learning mastery gradebook

Change-Id: I86befc44097e1053eb52e7c6b7ae8fa1d2bd3cba
Reviewed-on: https://gerrit.instructure.com/36265
Reviewed-by: Braden Anderson <braden@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Drew Bowman <dbowman@instructure.com>
2014-06-12 15:22:56 +00:00
Ryan Shaw 6b5e3b6d5b A work in progress version of the new ember files app
this commit is meant to be a way to commit some of
the progress I have been making on this.  everything
new is behind a hidden feature flag so it should
not do anything any different for any existing users

if you want to test it out, open a console
and do:
Course.find(<your course id>).enable_feature! :better_file_browsing

then browse to the 'files' part of your course.

the main thing to QA right now is that we did not
break anything for people that don't have that
feature flag turned on.  I know there are a ton of
things that are either broken or still need to be
implemented on the new app.

this is a few commits squashed into one and
closes multiple tickets:

create rails routes for new files UI
closes: CNVS-12140

for the new files UI we are going to use pushState
urls so we had to find a url namespace that we
could completely take over. the thing we chose was
/(courses|groups)/<course_id>/files/folder/foo/bar/baz
(assuming you were looking at the foo/bar/baz folder)

example urls:
/course/1/files/folder/foo/bar/baz
/groups/2/files/folder/lectures/1 Cell Mitosis/handouts/takehome work/
/files
/course/1/files

acceptance criteria:
the following NEW urls SHOULD be routed to new
ember files page:

/(courses|groups|accounts|users)/:id/files/folder*full_path
/dashboard/files/folder*full_path
/files/folder*full_path

the following urls already exist and if the
:new_files feature is enabled SHOULD be routed
also to the new ember files page instead of where
they go now (but if the :new_files feature is not
enabled, they should still go where they go now):

/files
/(courses|groups|accounts|users)/:id/files
/dashboard/files

style mockups for the new files page
fixes CNVS-11216

Enable feature flag for new files page, closes #CNVS-11215
closes: CNVS-12730
closes: CNVS-12659
closes: CNVS-12663

Change-Id: I3868fcf8efd6b517f38f56e88c7bb1e56cf564e8
Reviewed-on: https://gerrit.instructure.com/36005
QA-Review: Clare Strong <clare@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2014-06-11 20:23:10 +00:00
Derek DeVries e93073b793 add feature flags for quiz statistics and moderate pages
fixes CNVS-13228

the old way of enabling fabulous quizzes is no more. Now we're using proper
course based feature flags, and we have two different feature flags for
the new statistics page and moderate pages. You can enable these flags from
your account settings page.

In the code we now check these using:
  @context.feature_enabled?(:quiz_stats)
  @context.feature_enabled?(:quiz_moderate)

In ember we have a new environment attribute to check if moderate is enabled:
  env.get("moderateEnabled")

This also moves "take quiz" to the top item in the list, and changes its icon
to be a play icon to not have so many circles as icons in the menu

test plan:
  - feature flag changes
    - as a site admin
      - disable both quiz stats and quiz moderate
      - visit the quiz index/show/moderate/statistics pages
      - they should all be the non-ember versions of the pages

     - enable the quiz stats feature
       - as a teacher
         - visit the quiz index/show/statistics pages
         - this should be the ember version of these pages
         - visit a quiz page
         - this should enable the ember version of these pages
         - there should be a link to moderate the quiz in the dropdown menu
         - try to visit the moderate page (quizzes/123/moderate)
         - this page should render correctly as the old moderate page
         - the moderate tab should not be there

    - enable the quiz moderate feature
      - as a teacher
        - visit the quiz page
        - the moderate link in the drop down menu should be gone
        - this should enable the moderate tab in ember
        - visit the quiz moderate page, this should be the ember version
        - if you try to visit quizzes/123/moderate directly it should
          redirect you to the moderate page

  - api changes
    - as a teacher
      - request the quizzes api endpoint for a single quiz
      - you should see a new "moderate_url" property in the payload

    - as a student
      - request the quizzes api endpoint for a single quiz
      - you should NOT see the "moderate_url" property in the payload

  - other changes
    - with stats enables, the take quiz should be at the top of the dropdown
    - the take quiz icon has been changed

Change-Id: I04639890b425b1c5abf3305892e4b5b9d804b525
Reviewed-on: https://gerrit.instructure.com/35810
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
2014-06-04 00:32:34 +00:00
Drew Bowman 3c1786adac improve student group signup experience
fixes CNVS-11832
fixes CNVS-11836
fixes CNVS-13327

test plan

  - enable feature student_groups_next for course
  - regression test groups page student view

  - regression test instructor groups page

  - as an instructor have multiple groups in a group set
  - visit one of the groups
  - the instructor can switch between the groups in the group set

  - as a student you should be able to create a group

Change-Id: Iacf1eaf4467b57f307d45245b53dfc93f14154ff
Reviewed-on: https://gerrit.instructure.com/34454
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Drew Bowman <dbowman@instructure.com>
2014-05-30 20:53:56 +00:00
Jeremy Stanley cc4f0925ef remove "Allowed" state for RootAccount features on root accounts
the "Allowed" state means a feature is off in an account, but
sub-accounts or courses below it are allowed to enable it.

the 'allowed' state does not, however, make a lot of sense for
features that apply to RootAccount. since the feature cannot
be controlled in sub-accounts or courses, the 'allowed' state
is equivalent to 'off' here.

so to make this less confusing, remove the "allowed" state
for RootAccount features.

(specifically, lock the transition in the API, and make the
UI hide buttons for locked transitions that don't have
messages to display when the user tries to perform them)

test plan:
 - set the Use New Styles feature to "Allowed" in Site Admin
   account settings
 - in a root account settings page, ensure the 'Allowed'
   option is not selectable for this feature
 - ensure that the API reports the new_styles feature is "off"
   and its "allowed" transition is locked
   i.e., GET /api/v1/accounts/1/features/flags/new_styles
   includes state: 'off' and transitions: {allowed: {locked: true}}
 - ensure the API refuses to set the new_styles feature to "allowed"
   in the root account
   i.e., PUT /api/v1/accounts/1/features/flags/new_styles?state=allowed
   should return a 403 error and not change the state
 - regression test: in a sub-account, ensure the 'Use New Styles'
   feature does not appear
 - regression test: verify that when a (non-site-admin)
   root account admin attempts to disable Draft State in
   an account, the Off button is still there, and a message appears
   when you click it, and the feature remains enabled

fixes CNVS-13220

Change-Id: I4d41076c10696b02d0c482a778d2555714487f17
Reviewed-on: https://gerrit.instructure.com/35473
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
2014-05-30 19:56:24 +00:00
Simon Williams 28b14d4fc6 force gradebook transition
this commit forces on the new, accessible, individual gradebook view and forces
of the old GB1

closes CNVS-12327

test plan:
- make sure that individual gradebook view is on and GB1 is off and that you
  can't change it from the UI as a teacher or site admin
- now run the following (to simulate not already having the flag set to on):

  FeatureFlag.where(feature: "screenreader_gradebook").destroy_all

- check again to make sure it is on and can't be turned off

Change-Id: I23cb476d051b4e7697de47432dbe4a408b9800ef
Reviewed-on: https://gerrit.instructure.com/35464
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cameron Matheson <cameron@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2014-05-30 04:35:48 +00:00
Ryan Shaw afc1150b7b A feature flag to toggle html5/flash first video playback
this is a simple feature flag that will let us
toggle between:
a. trying html5 first then falling back to flash
   if not enabled or trying flash first.
b. trying flash first, then falling back to html5
   if unavailable.

test plan:
1. with feature flag not turned on, watch a video.
it should use flash to play it.
2. turn on the feature flag for domain_root_account
3. watch a video, it should use html5

Change-Id: I08aab043f89d049863dcbbd49aa1c4fcd8dc2895
Reviewed-on: https://gerrit.instructure.com/34248
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: David Julia <djulia@pivotallabs.com>
Reviewed-by: Paul Hinze <paulh@instructure.com>
Product-Review: Ben Hutchings <benh@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
2014-05-21 19:48:23 +00:00
James Williams 3b6fb6c5e6 rename outcome_gradebook feature flag
fixes #CNVS-11653

Change-Id: I8037521bd6995228271f8bcb66692923d5a779a8
Reviewed-on: https://gerrit.instructure.com/34048
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
2014-04-30 19:07:39 +00:00
Eric Adams 13296197fb add feature flag for post grades passback
fixes SIS-226

TestPlan:
 - verify Post Grades is now available from the root account settings
 - verify Post Grades is off by default and shows hidden and development
 - verify Post grades is viewable from a course once it is enabled from the root account
 - verify that once turned on in a course post grades button is now visible

Change-Id: I58ad6145bda8a1da11d240cf878ff378ce5fac36
Reviewed-on: https://gerrit.instructure.com/33370
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Duane Johnson <duane@instructure.com>
Product-Review: Eric Adams <eadams@instructure.com>
QA-Review: Eric Adams <eadams@instructure.com>
2014-04-26 04:12:54 +00:00
Ryan Shaw ca503542e2 a way for accounts to opt-in to new styles and users to high-contrast
fixes CNVS-11426

The UI/UX team *really* wants to start doing some major style changes
to the canvas interface. Because it is a very visual change and especially
because we've let people hack the crap out of canvas styles with
their own css override file, any changes we do need to be behind a
feature flag so an institution can opt-in when they are ready.

This commit does some trickery so we actually create 4 different versions
of every stylesheet. one for each variant in:
legacy_normal_contrast legacy_high_contrast
new_styles_normal_contrast new_styles_high_contrast
and then sets the $use_new_styles and $use_high_contrast sass variables
accordingly in each.

now, in any sass file, you can do things like:
  @if $use_new_styles {
    background-color: red;
  } @else {
    background-color: blue;
  }

  @if not $use_high_contrast{
    font-size: 12px;
  }

test plan:

* in a production (minified assets) environment, ensure you see:
  <link href="/assets/common_legacy_normal_contrast.css... in the <head> of the page
* go to the account settings page for the domain_root_account you are on
* turn on the "Use New Styles" feature
* now verify that <link href="/assets/common_new_styles_normal_contrast.css...
  is in the <head>. There should not be any visible differences because we do
  not have any styles that target specifically $use_new_styles yet.
* now, go to /settings and turn on the user feature for "Use High Contrast Styles"
* verify that <link href="/assets/common_new_styles_high_contrast.css..
  is in the <head>
* again, turning that on will not actually change the way anything looks,
  the next commit (g/32863) will take care of that

Change-Id: I45ba4ddfe780c5c819fb995b61ebfc0a5325d418
Reviewed-on: https://gerrit.instructure.com/31881
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
2014-04-17 19:47:05 +00:00
Cameron Sutter e7fcfa00c3 srgb feature flag to say 'Individual Gradebook View'
fixes CNVS-12253

test plan:
 - on the course Feature Options settings page
 - the srgb feature flag should now read:
   'Individual Gradebook View'
 - check the description as well
 - that wasn't so bad, right?

Change-Id: I312fbe0a833fb49aa71d35ab5bec74d655574f9d
Reviewed-on: https://gerrit.instructure.com/33021
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2014-04-10 23:18:24 +00:00