Commit Graph

226 Commits

Author SHA1 Message Date
Greg Price
c23a27bac4 Add post type control to forum new post form
Also change server to pass post type through to the comments service.
2014-08-29 15:59:32 -04:00
Greg Price
182ae7aeb0 Add endorsement info to marked answers in forum
Co-authored-by: jsa <jsa@edx.org>
2014-08-29 15:59:31 -04:00
Greg Price
8d2211a698 Handle question posts from comments service 2014-08-29 15:59:31 -04:00
swdanielli
ff4c2c17c2 add pyfs service 2014-08-19 10:23:47 -04:00
cahrens
77a8660243 ispublic is in active use by Stanford. 2014-07-18 20:28:06 -04:00
cahrens
66173ab9e6 Add "visible_to_staff_only" field to support staff locking in Studio.
STUD-1875
2014-07-14 14:46:40 -04:00
cahrens
a4b172d9d8 Display names, help text, and "deprecated" for Advanced Settings.
STUD-302, STUD-303
2014-06-26 16:54:22 -04:00
Piotr Mitros
afe22ca42e Review from Cale 2014-06-20 10:57:11 -04:00
Piotr Mitros
4f303a623b XBlocks can disable navigation chrome.
There is an option to:
* Enable/disable accordion navigation
* Enable/disable/repoint tab navigation

This allows for full-screen XBlocks (e.g. a code IDE, or large video
player). It is also the first pass at allowing top-level XBlocks. It's
also now possible to make a chromeless XBlock, point a tab to it, and
make it point back to that tab.

Next steps down that path would be:
* Fix up how tabs are handled. The current version is a hack.
* Create appropriate XBlocks for courseware, tabbed navigation,
  etc. to reach feature parity
* Invert/rejigger the XML format.
2014-06-19 21:06:08 -04:00
jsa
51f3b94f53 bugfix: avoid side-effects when overriding User.default_retrieve_params 2014-06-16 16:01:13 -04:00
jsa
c2ebfde429 implement forums endpoint for searching users 2014-06-16 10:12:52 -04:00
jsa
58c5066e66 Add support for search spell corrections to Forums UX.
Co-authored-by: Brian Talbot <btalbot@edx.org>

JIRA: FOR-591
2014-06-05 15:00:29 -04:00
Greg Price
dc2342859e Improve handling of bad JSON from comments service
Instead of allowing the JSONDecodeError to escape, raise an error
indicating the request id and containing the first 100 characters
of the response to aid investigation.
2014-06-03 13:34:36 -04:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Calen Pennington
ecb05e6b03 Merge pull request #2905 from edx/opaque-keys
(WIP) Make course ids and Locations/Locators opaque to LMS/Studio
2014-05-23 12:58:20 -04:00
Greg Price
eb0e6c909b Add page num to forum search tracking log events 2014-05-23 11:55:45 -04:00
Calen Pennington
cd862b3253 Merge remote-tracking branch 'edx/master' into opaque-keys
Conflicts:
	cms/djangoapps/contentstore/tests/test_contentstore.py
	cms/djangoapps/contentstore/views/component.py
	cms/djangoapps/contentstore/views/item.py
	cms/djangoapps/contentstore/views/preview.py
	cms/djangoapps/contentstore/views/tests/test_container.py
	cms/static/js/spec/views/unit_spec.js
	cms/static/js/utils/module.js
	cms/templates/container.html
	cms/templates/studio_vertical_wrapper.html
	cms/templates/studio_xblock_wrapper.html
	common/djangoapps/student/views.py
	lms/templates/notes.html
	lms/templates/textannotation.html
	lms/templates/videoannotation.html
2014-05-22 10:52:00 -04:00
Calen Pennington
4af2249a9d Remove dead code 2014-05-21 14:28:04 -04:00
Greg Price
299046a86f Add logging of search quality information
For now, this only includes course id, search terms, and result count.
Information is logged both to the standard logger for near-term analysis
and the event tracker for the longer term. Result count logging requires
commit 02466b1 of cs_comments_service (otherwise it will be null).
2014-05-19 17:37:26 -04:00
Calen Pennington
240d91daeb Merge remote-tracking branch 'edx/master' into opaque-keys-merge-master
Conflicts:
	cms/djangoapps/contentstore/management/commands/tests/test_import.py
	cms/djangoapps/contentstore/tests/test_import.py
	common/lib/xmodule/xmodule/modulestore/tests/test_mongo.py
	common/lib/xmodule/xmodule/modulestore/xml_importer.py
	lms/djangoapps/bulk_email/tests/test_course_optout.py
	lms/djangoapps/bulk_email/tests/test_email.py
	lms/djangoapps/bulk_email/tests/test_err_handling.py
	lms/djangoapps/class_dashboard/tests/test_dashboard_data.py
	lms/djangoapps/courseware/courses.py
	lms/djangoapps/django_comment_client/base/views.py
	lms/djangoapps/instructor/tests/test_email.py
	lms/djangoapps/instructor/tests/test_legacy_anon_csv.py
	lms/djangoapps/instructor/tests/test_legacy_download_csv.py
	lms/djangoapps/instructor/tests/test_legacy_email.py
	lms/djangoapps/instructor/tests/test_legacy_enrollment.py
	lms/djangoapps/instructor/tests/test_legacy_forum_admin.py
	lms/djangoapps/instructor/tests/test_legacy_gradebook.py
	lms/djangoapps/instructor/tests/test_legacy_raw_download_csv.py
	lms/djangoapps/instructor/tests/test_legacy_reset.py
	lms/djangoapps/instructor/views/api.py
	lms/djangoapps/instructor/views/instructor_dashboard.py
	lms/djangoapps/instructor/views/legacy.py
	lms/templates/courseware/instructor_dashboard.html
2014-05-13 15:30:56 -04:00
Calen Pennington
484c529d99 Merge remote-tracking branch 'edx/opaque-keys' into opaque-keys-merge-master 2014-05-13 10:23:24 -04:00
Greg Price
57f14bded1 Allow extra fields returned from comments service
Previously, an error was raised if the comments service returned data
including an unexpected field, which unnecessarily complicated the
release path for new features, since the list of allowed fields would
need to be modified before cs_comments_service could be modified, and
only then could edx-platform take advantage of the new CS feature. We
still log a warning if an unexpected field is returned, so we will
still be able to tell if the CS returns a corrupt response.

JIRA: FOR-180
2014-05-12 13:49:24 -04:00
Calen Pennington
155ffe37ca Merge remote-tracking branch 'edx/master' into opaque-keys-merge-master
Conflicts:
	cms/djangoapps/contentstore/views/item.py
	cms/djangoapps/contentstore/views/tests/test_container.py
	cms/djangoapps/contentstore/views/tests/test_tabs.py
	common/lib/xmodule/xmodule/modulestore/mongo/draft.py
	lms/djangoapps/certificates/management/commands/gen_cert_report.py
	lms/djangoapps/certificates/queue.py
	lms/djangoapps/certificates/views.py
	lms/djangoapps/courseware/module_render.py
	lms/djangoapps/courseware/tests/test_module_render.py
	lms/djangoapps/instructor/views/api.py
	lms/djangoapps/instructor/views/instructor_dashboard.py
	lms/djangoapps/instructor/views/legacy.py
	lms/djangoapps/shoppingcart/tests/test_models.py
	lms/djangoapps/verify_student/views.py
2014-05-09 15:29:32 -04:00
Calen Pennington
76a04fa805 Fix discussions by correctly serializing outgoing course_ids 2014-05-09 14:51:03 -04:00
Calen Pennington
cd746bf8e5 Make course ids and usage ids opaque to LMS and Studio [partial commit]
This commit adds the non-courseware lms/djangoapps and lms/lib.

These keys are now objects with a limited interface, and the particular
internal representation is managed by the data storage layer (the
modulestore).

For the LMS, there should be no outward-facing changes to the system.
The keys are, for now, a change to internal representation only. For
Studio, the new serialized form of the keys is used in urls, to allow
for further migration in the future.

Co-Author: Andy Armstrong <andya@edx.org>
Co-Author: Christina Roberts <christina@edx.org>
Co-Author: David Baumgold <db@edx.org>
Co-Author: Diana Huang <dkh@edx.org>
Co-Author: Don Mitchell <dmitchell@edx.org>
Co-Author: Julia Hansbrough <julia@edx.org>
Co-Author: Nimisha Asthagiri <nasthagiri@edx.org>
Co-Author: Sarina Canelake <sarina@edx.org>

[LMS-2370]
2014-05-08 12:09:23 -04:00
Greg Price
f32e2892f6 Merge pull request #3569 from edx/gprice/remove-cs-email
Remove email field from CS client user object
2014-05-05 11:02:53 -04:00
Greg Price
4dbb104136 Remove email field from CS client user object
This requires cs_comments_service commit 1d50176.
2014-05-02 13:17:24 -04:00
Jason Bau
f8c062b6ce lti 2.0 result service rest endpoint 2014-04-29 12:01:12 -07:00
Calen Pennington
6dd6f0c79d Add more tags to comment_client request metrics
This captures real-time metrics for all of the comment client actions,
segregated by course_id, as well as other small-cardinality fields.

The goal is to be able to detect changes in forum usage, with the goal
of alerting on potential error conditions.
2014-03-28 11:37:44 -04:00
Calen Pennington
ec1b056d82 Use requests library utility method for getting json results 2014-03-28 11:37:43 -04:00
Calen Pennington
cb93b66582 Remove unused *args and **kwargs from perform_request 2014-03-28 11:37:43 -04:00
Calen Pennington
d4db0ee7e4 Remove unused methods from comment_client 2014-03-28 11:37:43 -04:00
Jay Zoldak
1de5e565c3 Kill the perfstats module, which is unused 2014-03-18 15:47:36 -04:00
jsa
b20c8f9248 Ensure account creation succeeds before creating comments service user
Also improves handling in cases where account creation did succeed, but
comments service user creation did not.

Depends on commit 88abdd8a0b20bc9816f487b25abdea1953f5661d in https://github.com/edx/cs_comments_service

JIRA: FOR-522
2014-03-18 13:24:30 -04:00
Diana Huang
bce7d9e43d Add tests and clean up A/B testing
Also fixes STUD-1351
2014-03-05 13:46:03 -05:00
Victor Shnayder
281ad63d2b split testing support in the LMS.
Adds a split_test_module XModule, that can choose one of its children
to display, based on a get_condition_for_user API added to the runtime.

To test, add something like this to an xml course, or make equivalent
 tweaks in mongo.

 <vertical url_name="split_test_vert">
    <split_test url_name="split1" experiment_id="0" condition_id_to_child='{"0": "i4x://MITx/6.00x/html/split_test_cond0", "1": "i4x://MITx/6.00x/html/split_test_cond1"}'>
       <html url_name="split_test_cond0">condition 0</html>
       <html url_name="split_test_cond1">condition 1</html>
    </split_test>
  </vertical>

Also needs an experiment configured in the course policy json: e.g.

        "user_partitions": [{"id": 0,
                                      "name": "Experiment 0",
                                      "description": "Unicorns?",
                                      "version": 1,
                                      "groups": [{"id": 0,
                                                        "name": "group 0",
                                                        "version": 1},
                                                        {"id": 1,
                                                        "name": "group 1",
                                                        "version": 1}]}]

(This particular snippet will work inside a course with org MITx
 and course name 6.00x)

Co-Author: Sarina Canelake <sarina@edx.org>
Co-Author: Julia Hansbrough <julia@edx.org>
Co-Author: Diana Huang <diana@edx.org>
Co-Author: Calen Pennington <cale@edx.org>

[LMS-2095]
2014-03-05 13:45:08 -05:00
Calen Pennington
9126777ed7 Add test of local_resource_url in AcidBlock 2014-02-25 14:01:37 -05:00
Calen Pennington
dbc99ef8ad Implement children for pure XBlocks in edx-platform
This requires fixing the javascript api implementation, and adding
an implementation of get_block to the ModuleSystem api.

However, the implementation is incomplete, due to mismatches between
the expectations of XModule and XBlock.

Also adds tests using the Acid block to make sure that the javascript
and python apis for children are working correctly.
2014-02-21 15:01:20 -05:00
Greg Price
1c188c9f89 Send language preference to the comments service 2014-02-12 15:25:34 -05:00
Greg Price
5841d460f0 Clean up usage of CS API key 2014-02-12 15:24:30 -05:00
Calen Pennington
f6731342de Make Studio load XBlock fragment js and css on the client-side
[LMS-1421][LMS-1517]
2014-02-04 15:38:13 -05:00
Calen Pennington
49217ebe8b Allow multiple client-side runtimes on a single page
Make XBlock client-side runtimes proper classes, so that handlerUrl can
be defined in a per-runtime way, and we can have multiple runtimes on a
single page.

[LMS-1630][LMS-1421][LMS-1517]
2014-02-04 08:55:36 -05:00
Greg Price
4e1c595472 Merge pull request #2377 from edx/gprice/forum-thread-pagination
Add pagination of responses to forum threads
2014-02-03 08:55:20 -08:00
Jay Zoldak
bc30addfb9 Unicode changes to support QRF
fixing unit tests

fixing merge error

fixing xqueue submission issue with unicode url (trial 0.1)

fixing fotmats as commented upon

removing yaml file language selection

Unicode changes to support QRF

removed unnecessary pass in modulestore/init.py

fixing merge error

fixing fotmats as commented upon

removing yaml file language selection

fixing pep8 violations

- fixing pylint violations

pylint violation

fixing line spaces and formats

ignore pylint E1101

remove empty line

fixing pylint violations

 pep8 violations

bulk mail unicode/decode

fix migration error

fix pep8 just to push again

more unicode/decode
Final changes to comments and error messages.
2014-01-30 16:20:36 -05:00
Greg Price
fba6f2ebb2 Allow LMS to do forum thread response pagination
The relevant parameters and data are merely passed through between the
front end and comments service.
2014-01-30 13:58:46 -05:00
jsa
40fcc6b9a5 Allow new response pagination parameters to pass through thread model.
JIRA: FOR-374
2014-01-28 17:24:37 -05:00
Greg Price
a1dc49cc9b Remove defunct forum post tagging code 2014-01-14 13:03:56 -05:00
Calen Pennington
d937da8d47 Update handler_url support to match the latest in the xblock repo, for both js and python runtimes
[LMS-1613]
2013-12-10 12:04:18 -05:00
Calen Pennington
6d613f9d4e Enable un-authenticated handler urls
Updates to depend on the latest version of XBlock, which includes
support for service-to-service (thirdparty) handler urls, which aren't
authenticated with a user (unlike handler requests coming from the
xblock client-side javascript).

Co-author: Ned Batchelder <ned@edx.org>
2013-11-26 16:29:34 -05:00
Calen Pennington
864d831ce3 Use XBlock handlers for handle_ajax in XModules
Adds xblock handler_url support to the LMS, and makes handle_ajax use
that code.

[LMS-230] [LMS-229]
2013-11-08 11:08:48 -05:00