Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

annotation tools #2515

Closed
wants to merge 18 commits into from
Closed

annotation tools #2515

wants to merge 18 commits into from

Conversation

danielcebrian
Copy link
Contributor

To add these components to your course in Studio:

Installing Modules:

  1. Add "notes", "textannotation" and "videoannotation" to advanced_modules in Studio's Advanced Settings. Now on the unit page you can see the Advanced components.

  2. In the same advanced settings. It is necessary to add the annotation backend url and the annotation consumer key.
    2.1.) Type a url with the annotation external storage under “annotation_storage_url”
    2.2.) Type a consumer key for the annotation external storage under “annotation_token_secret”

Using Modules:

  1. When creating new unit, you can find Text and Video annotation modules under “Advanced” component
  2. Make sure you have either Text or Video in one unit, but not both.
  3. Annotations are only allowed on Live/Public version and not Studio.
  4. The video can not be opened in the cms (only in the lms) with youtube video.

Will also need to specify an annotation_storage_url and token_secret in Advanced Settings. @danielcebrian @lduarte1991 can provide this information.

@danielcebrian danielcebrian mentioned this pull request Feb 7, 2014
@cahrens
Copy link

cahrens commented Feb 7, 2014

Is there a date by which this cleanup PR will need to be reviewed/merged?

@cahrens
Copy link

cahrens commented Feb 13, 2014

@danielcebrian Is this PR ready to review? What is the timeline for all the cleanup requested in #2188? If there are PRs to be reviewed in the next 2 weeks I need to get something on the Studio backlog.

@lduarte1991
Copy link
Contributor

@cahrens This PR is ready to review. We've included a mixture of PR fixes from #2188 as well as bug fixes for the tool that we've found during live testing. We have on our own productivity tools a copy of the PR comments and will continue to tackle them, but we are definitely ready for a new push.

@cahrens
Copy link

cahrens commented Feb 13, 2014

So you would like a review from me and @cpennington? Anyone else?

@cahrens
Copy link

cahrens commented Feb 13, 2014

And is there a deadline?

@lduarte1991
Copy link
Contributor

When is your next scheduled merge?

@@ -282,6 +282,16 @@
'css/vendor/jquery.qtip.min.css',
'js/vendor/markitup/skins/simple/style.css',
'js/vendor/markitup/sets/wiki/style.css',
'css/vendor/ova/edx-annotator.css',
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know that we went back and forth before on whether or not Studio needs the annotator code. What made you decide that Studio does need it?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was on the original plans to include this feature and I was told to try to include it as much as possible. I've actually been running into an issue getting TinyMCE to work with studio (works fine on the LMS) whenever I try to create an annotation, so if you happen to know why that would be, I'd greatly appreciate it. Other than that, it seems like it should work as intended.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See my note below about 2 versions of tinyMCE being declared. When you are testing your changes, please also try opening an HTML component on the unit page to make sure that our existing usage of tinyMCE has not broken.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW, you might be interested in https://github.com/edx/edx-platform/pull/2588. We plan to review that PR in the next 2 weeks, and it will upgrade the version of TinyMCE used by Studio.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that might solve our issue, but that's @danielcebrian territory. Daniel do you know if having the version from #2588 will be okay for us?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we are currently using tinymce 4.0.5 and this version should work well, better than the current 3 version.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great! so @cahrens I guess the proper step we could remove all instances of our tinymce and point it to the version in #2588 whenever that goes out, right? Hopefully that means that our PR and their PR goes out at the same merge (or ours after theirs).

@lduarte1991
Copy link
Contributor

@cahrens Will this latest version be good enough to be pushed this week? I've taken out references in the CMS about tinymce and use your old one (it throws an error for now) but I'm guessing once the other pull goes through it will be referenced correctly since we are using requirejs, am I right?

@cahrens
Copy link

cahrens commented Feb 18, 2014

@lduarte1991 We still need to review the PR (and I imagine @cpennington needs to as well), so it will not be included in this week's push.

I don't expect the new version of TinyMCE to magically fix your issue (I haven't had a chance yet to see what it is). But if the usage in CMS is not important, you can wait until after the other PR is merged to debug.

After the new version of TinyMCE is merged, do you plan to use that for LMS as well and remove your copy of TinyMCE?

@lduarte1991
Copy link
Contributor

@cahrens that's unfortunate, but understandable. Totally agree on the TinyMCE issue, just letting you know that the reason we included our version was mainly because the one currently in requirejs is old and daniel gave the okay above, but of course we would need to test it. In that case I can probably add a jasmine test for our notes app as well.

In terms of using the new version of TinyMCE, if it works for the CMS there's no reason why it cannot be used in the LMS as well, so absolutely yes.

@lduarte1991
Copy link
Contributor

@cahrens and @cpennington can this version be included in the merge next week or is there anything that would still need to be changed?

If it is merged can the PR remain open for the next push with more fixes or will it have to be closed and a new PR opened (of course we'd still reference #2188 like we did above).

@@ -1,3 +1,27 @@
/*
HighlightTags Annotator Plugin v1.0 (https://github.com/lduarte1991/tags-annotator)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this the same license that @jtauber was aware of?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, all the Plugins for annotator have the same license (including the new one added this time around called diacritic-annotator.js) and that was conveyed in the email sent to him originally. Both of these were created by me.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is acceptable because of the "(at your option) any later version". We can't accept GPLv2 but we can GPLv3.

@cahrens
Copy link

cahrens commented Feb 21, 2014

A TinyMCE update. It turns out that merging the upgrade PR was not completely straightforward, and we will have to schedule the additional work into a future sprint. At this time, there is no estimate of when the work will be completed.

@lduarte1991
Copy link
Contributor

So does that mean I can't leave it as is for now and just bookmark any problems that may still be in place after the update takes place?

@cahrens
Copy link

cahrens commented Feb 21, 2014

As long as you are satisfied with the current behavior and there is no negative impact for our TinyMCE usages. I'm hoping to get back to this PR on Monday.

@lduarte1991
Copy link
Contributor

Sounds good. I removed all offensive items in regards to your TinyMCE usage so it should all be okay. Will @cpennington also have time to look over this PR and thus be part of the merge next week?

"vjs.youtube": 'js/vendor/ova/vjs.youtube',
"rangeslider": 'js/vendor/ova/rangeslider',
"share-annotator": 'js/vendor/ova/share-annotator',
"tinymce-annotator": 'js/vendor/ova/tinymce.min',
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You forgot to remove this tinymce reference.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will commit fix in 1 minute. EDIT: Should be fixed now.

@cahrens
Copy link

cahrens commented Feb 25, 2014

Were more changes added to this PR? It's impossible for me to tell what has changed since I last looked at the PR because you squashed the commits together.

Here are some suggestions for making the review process easier:

  1. Once someone has begun reviewing a PR, do not squash commits so the reviewer can just look at subsequent commits. The commits can be squashed again after the review is complete.

  2. If you are trying to get a set of functionality submitted as soon as possible, don't keep adding additional functionality to the same PR. Instead, you can create a branch based off the branch that is being used for the first PR. You can even open a pull request against that first branch to show just the differences relative to the first PR. This allows the first PR to merge earlier.

@danielcebrian
Copy link
Contributor Author

@cahrens I have added new functionality to this PR (new image annotation). Sorry if this way was not the best. I can go back to the last commit before the new functionalities. Should I do it?

> Decided to keep token-input css in main as it deals with stylizing
outside the module. Hoping to add token library properly by next push.
> Fixed camel case issue for a few functions
> Changed over to edx’s version of tinymce and removed our copy
@lduarte1991
Copy link
Contributor

@cahrens @sarina Not sure if either of you is able to help, but the latest commit has an error with iconmoon.eot and I'm assuming that has to do with the fact that I tried to load my own skin (not from the pipeline but from the sass = [] inside of textannotation_module.py) and it cannot find the font file. The issue I did this was because when I was loading the tinymce without that it would show me missing fonts.

I think that the .module_display.xmodule_TextAnnotationModule .annotator-widget * class overrides the items in skin.min.css.

Any idea how to deal with that?

EDIT: I should clarify that I don't think this was an issue in studio because your tinymce is in a floating box that appears outside the module's area.

@cahrens
Copy link

cahrens commented Apr 11, 2014

Hi Luis, I don't have a computer handy (at a conference), but I can give some pointers. We spent a lot of time figuring out how to force TinyMCE to use pipelined CSS and font files. This is necessary to get things to behave properly on the CDN on FireFox as well as Chrome. As part of this work, Nimisha disabled TinyMCE's default skin loading code. So I think you will need to check in your skin into the TinyMCE directory and follow the same pattern that we did (using the pipeline).

@lduarte1991
Copy link
Contributor

Well, actually I am trying to use your skin and not the one we had chosen before and that's what's causing the issues.

@lduarte1991
Copy link
Contributor

But like i said the .module_display.xmodule_TextAnnotationModule .annotator-widget * overrides it.

@singingwolfboy
Copy link
Contributor

@lduarte1991 said in #3466 that he is turning this pull request into a series of smaller pull requests. Does that mean that this pull request can be closed?

@singingwolfboy
Copy link
Contributor

@lduarte1991 @danielcebrian can this pull request be closed?

@lduarte1991
Copy link
Contributor

Yes, I'm sorry. Didn't know the first question was directed at me instead of about me. Absolutely.

jawad-khan pushed a commit that referenced this pull request Jul 10, 2024
…urses on dashboard view (#34848)

* feat: [AXM-24] Update structure for course enrollments API (#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>
OmarIthawi pushed a commit to nelc/edx-platform that referenced this pull request Jul 24, 2024
…urses on dashboard view (openedx#34848)

* feat: [AXM-24] Update structure for course enrollments API (openedx#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (openedx#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (openedx#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

Conflicts:
	lms/djangoapps/courseware/courses.py
mudassir-hafeez pushed a commit to mudassir-hafeez/edx-platform that referenced this pull request Jul 24, 2024
…urses on dashboard view (openedx#34848)

* feat: [AXM-24] Update structure for course enrollments API (openedx#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (openedx#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (openedx#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>
OmarIthawi pushed a commit to nelc/edx-platform that referenced this pull request Jul 25, 2024
…urses on dashboard view (openedx#34848)

* feat: [AXM-24] Update structure for course enrollments API (openedx#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (openedx#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (openedx#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

Conflicts:
	lms/djangoapps/courseware/courses.py
	lms/djangoapps/mobile_api/users/tests.py
cmltaWt0 pushed a commit that referenced this pull request Nov 1, 2024
* feat: [AXM-24] Update structure for course enrollments API (#2515)

* feat: [AXM-24] Update structure for course enrollments API

* style: [AXM-24] Improve code style

* fix: [AXM-24] Fix student's latest enrollment filter

* feat: [AXM-47] Add course_status field to primary object (#2517)

* feat: [AXM-40] add courses progress to enrollment endpoint (#2519)

* fix: workaround for staticcollection introduced in e40a01c

* feat: [AXM-40] add courses progress to enrollment endpoint

* refactor: [AXM-40] add caching to improve performance

* refactor: [AXM-40] add progress only for primary course

* refactor: [AXM-40] refactor enrollment caching optimization

---------

Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (#2522)

* feat: [AXM-53] add assertions for primary course

* test: [AXM-53] fix tests

* style: [AXM-53] change future_assignment default value to None

* refactor: [AXM-53] add some optimization for assignments collecting

* feat: [AXM-200] Implement user's enrolments status API

* style: [AXM-200] Improve code style

* refactor: [AXM-200] Divide get method into smaller methods

---------

Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
andrey-canon pushed a commit to nelc/edx-platform that referenced this pull request Nov 19, 2024
…urses on dashboard view (openedx#34848)

* feat: [AXM-24] Update structure for course enrollments API (openedx#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (openedx#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (openedx#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

Conflicts:
	lms/djangoapps/courseware/courses.py
	lms/djangoapps/mobile_api/users/tests.py
andrey-canon pushed a commit to nelc/edx-platform that referenced this pull request Dec 3, 2024
…urses on dashboard view (openedx#34848)

* feat: [AXM-24] Update structure for course enrollments API (openedx#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (openedx#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (openedx#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

Conflicts:
	lms/djangoapps/courseware/courses.py
	lms/djangoapps/mobile_api/users/tests.py
andrey-canon pushed a commit to nelc/edx-platform that referenced this pull request Dec 3, 2024
…ashboard view (openedx#34848)

* feat: [AXM-24] Update structure for course enrollments API (openedx#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (openedx#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (openedx#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

Conflicts:
	lms/djangoapps/courseware/courses.py
	lms/djangoapps/mobile_api/users/tests.py
andrey-canon added a commit to nelc/edx-platform that referenced this pull request Dec 9, 2024
#44)

* feat: Extend mobile API with course progress and primary courses on dashboard view (openedx#34848)

* feat: [AXM-24] Update structure for course enrollments API (openedx#2515)
---------
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>

* feat: [AXM-53] add assertions for primary course (openedx#2522)
---------
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

* feat: [AXM-297] Add progress to assignments in BlocksInfoInCourseView API (openedx#2546)
---------
Co-authored-by: NiedielnitsevIvan <81557788+NiedielnitsevIvan@users.noreply.github.com>
Co-authored-by: Glib Glugovskiy <glib.glugovskiy@raccoongang.com>
Co-authored-by: monteri <36768631+monteri@users.noreply.github.com>

Conflicts:
	lms/djangoapps/courseware/courses.py
	lms/djangoapps/mobile_api/users/tests.py

* fix: python 3.8 typing fixes

---------

Co-authored-by: Kyrylo Kireiev <90455454+KyryloKireiev@users.noreply.github.com>
Co-authored-by: Omar Al-Ithawi <i@omardo.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
open-source-contribution PR author is not from Axim or 2U
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants