Commit Graph

132 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
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
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
4dbb104136 Remove email field from CS client user object
This requires cs_comments_service commit 1d50176.
2014-05-02 13:17:24 -04: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
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
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
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
8ddd8c14a4 Fix pylint/pep8 errors 2013-11-08 11:08:48 -05:00
Greg Price
6bca7de4b0 Avoid CS search endpoint for non-search queries
This change requires cs_comments_service version 31ef160 or later. Now
that the /threads endpoint can filter by commentable_ids, use that
instead of the /search/threads endpoint, which does not sort and
paginate correctly.

Bug: FOR-224
2013-10-31 16:49:01 -04:00
Greg Price
7abaecd8b7 Improve forum error handling
CommentClientError now has sane subclasses that are meaningfully
distinct, and each subclass is handled appropriately. Errors raised by
the requests library are no longer handled by turning them into
CommentClientErrors, since there is no meaningful handling we can do,
and this way we will get more visibility into why errors are occurring.
Also, HTTP status codes from the comments service indicating client
error are correctly passed through to the client.
2013-10-28 11:23:06 -04:00
Greg Price
bd477581b6 Log all comments service requests
Logging the duration of each request will allow us to determine
whether there is a significant difference in the latency reported by
the comments service and that observed by the LMS. Each request will
be assigned a unique identifier to allow correlation of the reported
latency on each end.
2013-10-16 16:31:59 -04:00
Greg Price
62cc9e77bf Use HTTP header for comments service auth
Previously, authentication was done using a URL parameter, which would
appear in various logs. Now, authentication is done more appropriately
with an HTTP header. Note that this requires cs_comments_service commit
cf39aabdd160176ebf206ca19d3ee030161a0b47 or later.
2013-10-11 12:01:44 -04:00
Ned Batchelder
3bbdd2f4c3 No need to invoke classmethods through self.__class__ 2013-10-02 10:35:58 -04:00
Kevin Chugh
62f6e2d52b home button working, default to home when no thread selected 2013-07-29 23:33:50 -04:00
Your Name
6276997180 update checkbox with get settings 2013-07-29 13:26:31 -04:00
Kevin Chugh
d95693ebb7 hook up panel to new stats service 2013-07-25 03:23:04 -04:00
Ned Batchelder
45815e2d03 Remove obsolete file comment_client/legacy.py 2013-06-21 17:33:23 -04:00
Ned Batchelder
df4b512b6f Change wildcard imports into specific imports 2013-06-21 17:33:06 -04:00
Ned Batchelder
3eec09b87a Merge pull request #216 from edx/ned/remove-unused-imports
Ned/remove unused imports
2013-06-20 14:15:31 -07:00
Calen Pennington
308fe26b65 Clean up pep8 E128 issues 2013-06-20 09:08:25 -04:00
Ned Batchelder
61b53713d2 Remove unused imports from lms, as detected by pylint. 2013-06-19 16:56:34 -04:00
Greg Price
787366fe02 Remove tags for comment client request time histogram in Datadog
According to someone from Datadog, this was generating tags like "knowledgeable_
people_who_put_this_course_together._this_is_harvard._you_can_t_tell_us_there_s_
a_shortage_of_editorial_talent." They say that they can handle tens or hundreds
of unique tags but not thousands. Given that we have a unique URL for each
thread, we can't even use that as a tag. Thus, all tags are removed for now
until we can determine whether there is a useful set of tags with small enough
cardinality. In light of this, I did not investigate why the long tag mentioned
above was being generated.
2013-05-22 14:12:25 -04:00
Nate Hardison
cc7b2942ee Handle Heroku's 503 maintenance mode response
The LMS comment client previously would try to parse the response
as JSON, choke, and return a 500 to the client. Now, the LMS client
displays a message indicating that the forums are down for
maintenance.
2013-05-21 10:03:51 -07:00
Jay Zoldak
3b8a8a13b0 Revert "Revert "Merge pull request #1883 from MITx/feature/kevin/flagging_refactor_verbs""
This reverts commit 5560a4add4.
2013-05-16 10:29:33 -04:00
Jay Zoldak
ed5ad46192 Revert "Revert "fix merge conflict""
This reverts commit 2df3fe9344.

Conflicts:
	common/static/coffee/src/discussion/utils.coffee
2013-05-16 10:29:33 -04:00
Greg Price
87cc4fab5a Add tags to comment service request Datadog timer 2013-05-14 14:49:56 -04:00
Greg Price
c8970cafee Add comment service request time logging to Datadog 2013-05-14 11:32:40 -04:00
Diana Huang
c6f63140a2 Hide the API key during logging. 2013-05-07 16:38:38 -04:00