[Using Sakai] Sakai 2.9 Orientation Tutorial

adeyemi aladesawe aoa2124 at columbia.edu
Wed Aug 20 11:20:52 PDT 2014


Thanks. Here are the realities that necessitated that:

1. There are 3 kinds of users: New Users, Returning, and Second-time login
Users
2. New Users will see my new page /direct/ENTITY_PREFIX/adeyemi_p1.json and
also the existing tutorial pages by getting nextUrl (clicking Next)
3. Returning Users will only see my /direct/ENTITY_PREFIX/adeyemi_p1.json
(They previously saw the tutorial)
4. Second-time Users do not see any pop-ups

Branching Logic:
Check for my new flag, sakaiNewFlag. 
If not set, THEN never seen my new page
/direct/ENTITY_PREFIX/adeyemi_p1.json (New or Returning)
  Check sakaiTutorialFlag, 
   If set, THEN Returning, SHOW only my page (no nextUrl)
   else, New, SHOW my page + tutorial pages (nextUrl)

else Second-time user, do nothing

Also, onClick of submenuItem=Tutorial, showTutorial({}) should still be a
valid call. 

This is why I created a new entity_prefix. I could programmatically (in
TutorialEntityProviderImpl) check the status of the user and load the
appropriate resource, hence only creating new .config and Messages files.
But tried that and was stuck on the ResourceLoader not loading the right
resource. Thanks.




Bryan Holladay wrote
> First, you didn't need to create a new Entity Endpoint. You should just
> use
> the existing one. Here's how you'd add a new tutorial:
> 
> 1) Create your new pages in help-component/src/tutorial/Tutorial.config
> (these are linked lists based on nextUrl and prevUrl parameters)
> 2) Add body and title in
> help-component/src/bundle/TutorialMessages.properties
> 3) Call the first page with whatever button/page load you want (requires
> custom 1 line code).  For example, the portal calls the tutorial on load
> if
> the user hasn't seen it: javascript:
> showTutorialPage("/direct/tutorial/bryan_p1.json", {});
> 
> Here's some example code to adding a new tutorial popup:
> 
> Index: help-component/src/bundle/TutorialMessages.properties
> ===================================================================
> --- help-component/src/bundle/TutorialMessages.properties (revision
> 311867)
> +++ help-component/src/bundle/TutorialMessages.properties (working copy)
> @@ -82,3 +82,11 @@
>  introToSakai_pTutorialLocation.title=Tutorial
>  introToSakai_pTutorialLocation.body=You can go back to this tutorial by
> clicking the tutorial link in this dropdown.
> 
> +#Bryan Page 1
> +bryan_p1.title=Bryan 1
> +bryan_p1.body=This is my text
> +
> +
> +#Bryan Page 2
> +bryan_p2.title=Bryan 2
> +bryan_p2.body=This is my text too
> Index: help-component/src/tutorial/Tutorial.config
> ===================================================================
> --- help-component/src/tutorial/Tutorial.config (revision 311867)
> +++ help-component/src/tutorial/Tutorial.config (working copy)
> @@ -112,3 +112,20 @@
>  introToSakai_pTutorialLocation.positionTooltip=top right
>  introToSakai_pTutorialLocation.positionTarget=bottom left
>  introToSakai_pTutorialLocation.fadeout=true
> +
> +#Bryan Test Page 1
> +bryan_p1.selection=
> +bryan_p1.previousUrl=
> +bryan_p1.nextUrl=/direct/tutorial/bryan_p2.json
> +bryan_p1.dialog=true
> +bryan_p1.positionTarget=
> +bryan_p1.fadeout=
> +
> +#Bryan Test Page 2
> +bryan_p2.selection=
> +bryan_p2.previousUrl=/direct/tutorial/bryan_p1.json
> +bryan_p2.nextUrl=
> +bryan_p2.dialog=true
> +bryan_p2.positionTarget=
> +bryan_p2.fadeout=
> 
> 
> 
> On Wed, Aug 20, 2014 at 10:03 AM, adeyemi aladesawe <

> >
> wrote:
> 
>> Hi Bryan,
>>
>> I recently began working on extending Sakai's tutorial pages to add
>> notifications of default profile settings to new users. I decided that
>> the
>> existing tutorial pop pages were ideal and created EntityProviders and
>> EntityProviderImpl just as currently available and updated the JS.
>> However
>> clicking next to get the second JSON page displays nothing despite the
>> development console showing a GET status 200. Any hint would be
>> appreciated
>> on why this is happening. Thanks.
>> Bryan Holladay wrote
>> > Sorry, wrong VM, meant to point to this change:
>> >
>> >
>> http://source.sakaiproject.org/viewsvn/portal/trunk/portal-render-engine-impl/pack/src/webapp/vm/neoskin/includeStandardHead.vm?p2=%2Fportal%2Ftrunk%2Fportal-render-engine-impl%2Fpack%2Fsrc%2Fwebapp%2Fvm%2Fneoskin%2FincludeStandardHead.vm&p1=%2Fportal%2Ftrunk%2Fportal-render-engine-impl%2Fpack%2Fsrc%2Fwebapp%2Fvm%2Fneoskin%2FincludeStandardHead.vm&r1=108978&r2=108977&view=diff&pathrev=108978
>> >
>> >
>> > On Tue, Sep 17, 2013 at 2:39 PM, Bryan Holladay <
>>
>> > holladay@
>>
>> > >wrote:
>> >
>> >> Actually, instead of adding that JS to that site, you may want to add
>> >> something to the portal like the tutorial does, otherwise you'd have
>> that
>> >> tutorial always popping up.  You need to set a user property flag like
>> it
>> >> does in:
>> >>
>> >>
>> >>
>> https://source.sakaiproject.org/svn//portal/trunk/portal-impl/impl/src/java/org/sakaiproject/portal/charon/SkinnableCharonPortal.java
>> >> (search for
>> >> sakaiTutorialEnabled)
>> >>
>> >> Then just add some logic to make sure you are in the correct site and
>> add
>> >> some code to the portal VM to call the JS function like:
>> >>
>> >>
>> >>
>> http://source.sakaiproject.org/viewsvn/portal/trunk/portal-render-engine-impl/pack/src/webapp/vm/neoskin/includeTabs.vm?p2=%2Fportal%2Ftrunk%2Fportal-render-engine-impl%2Fpack%2Fsrc%2Fwebapp%2Fvm%2Fneoskin%2FincludeTabs.vm&p1=%2Fportal%2Ftrunk%2Fportal-render-engine-impl%2Fpack%2Fsrc%2Fwebapp%2Fvm%2Fneoskin%2FincludeTabs.vm&r1=108978&r2=108977&view=diff&pathrev=108978
>> >>
>> >>
>> >> On Tue, Sep 17, 2013 at 2:36 PM, Bryan Holladay <
>>
>> > holladay@
>>
>> > >wrote:
>> >>
>> >>> Yup, that's possible.  You just need to create a new set of tutorial
>> >>> pages with a new prefix (prefix is only for helping you distinguish).
>> >>> For
>> >>> example, the intro to sakai prefix is: "introToSakai_".  Once you
>> have
>> >>> the
>> >>> properties setup, all you need to do is add some javascript somewhere
>> in
>> >>> that site's home page to call the showTutorialPage function in
>> >>>
>> https://source.sakaiproject.org/svn//reference/trunk/library/src/webapp/js/jquery/qtip/tutorial.js
>> >>>
>> >>> The introToSakai just calls
>> >>>
>> >>> showTutorialPage("/direct/tutorial/introToSakai_p1.json", {});
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> On Tue, Sep 17, 2013 at 2:26 PM, Katie Golus <
>>
>> > kgolus@
>>
>> > > wrote:
>> >>>
>> >>>> Double thanks, Bryan!
>> >>>>
>> >>>> If I'm really this right (nice documentation, too, btw), adding
>> >>>> pages/properties will add the new item to the tutorial for all users
>> as
>> >>>> part of the system-wide tutorial.  Would it be possible to create an
>> >>>> entirely separate tutorial that is only visible to individuals upon
>> >>>> visiting a particular site?  We're specifically wanting to orient
>> new
>> >>>> students to their customized program and course sites, but they
>> would
>> >>>> need
>> >>>> to be different tutorial for every program (they all have different
>> >>>> tools
>> >>>> and functions) and be triggered on first visit to that site, rather
>> >>>> than
>> >>>> first visit to the system.
>> >>>>
>> >>>> Thanks,
>> >>>> Katie
>> >>>>
>> >>>> _____________________
>> >>>> Katie Golus, Ed.M.
>> >>>> Instructional Designer
>> >>>> Antioch University
>> >>>> 602 Anacapa Street
>> >>>> Santa Barbara, CA  93101
>> >>>> 805-962-8179 x5161
>> >>>>
>>
>> > kgolus@
>>
>> >>>>
>> >>>> Have an IT-related concern? Please contact the help desk, available
>> >>>> 24/7.
>> >>>> Web form: IT Helpdesk <https://helpdesk.antioch.edu/> or
>> Phone:
>> >>>> 1-866-662-0056
>> >>>>
>> >>>>
>> >>>> On Tue, Sep 17, 2013 at 11:13 AM, Bryan Holladay <
>>
>> > holladay@
>>
>> > >>> > wrote:
>> >>>>
>> >>>>> Thanks... There was one weekend that I couldn't get that idea out
>> of
>> >>>>> my
>> >>>>> head, so I just wrote it.
>> >>>>>
>> >>>>> You can easily modify the text that appears, including adding links
>> to
>> >>>>> a specific course:
>> >>>>>
>> >>>>>
>> >>>>>
>> https://source.sakaiproject.org/svn/help/trunk/help-component/src/bundle/TutorialMessages.properties
>> >>>>>
>> >>>>> If you know for sure that a course site will exist, you can always
>> >>>>> customize the tutorial and add a new page that points to that site
>> in
>> >>>>> the
>> >>>>> site's tab.  There is very little development required and it's all
>> >>>>> done
>> >>>>> through property files.  You just need to add the additional
>> >>>>> properties for
>> >>>>> the page to
>> >>>>>
>> https://source.sakaiproject.org/svn/help/trunk/help-component/src/tutorial/Tutorial.configand
>> >>>>> make sure the user facing text is saved in
>> >>>>>
>> https://source.sakaiproject.org/svn/help/trunk/help-component/src/bundle/TutorialMessages.properties
>> >>>>>
>> >>>>> Thanks,
>> >>>>> Bryan
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> On Tue, Sep 17, 2013 at 2:04 PM, Katie Golus <
>>
>> > kgolus@
>>
>> > >wrote:
>> >>>>>
>> >>>>>> We love the tutorial on first login to the system.  Thank you to
>> >>>>>> everyone who dreamed that up or worked on that!
>> >>>>>>
>> >>>>>> Is there any way we can use a modified version of that
>> instance-wide
>> >>>>>> tutorial to orient users to a specific course or project site?
>> >>>>>>
>> >>>>>> Thanks,
>> >>>>>> Katie
>> >>>>>>
>> >>>>>> _____________________
>> >>>>>> Katie Golus, Ed.M.
>> >>>>>> Instructional Designer
>> >>>>>> Antioch University
>> >>>>>> 602 Anacapa Street
>> >>>>>> Santa Barbara, CA  93101
>> >>>>>> 805-962-8179 x5161
>> >>>>>>
>>
>> > kgolus@
>>
>> >>>>>>
>> >>>>>> Have an IT-related concern? Please contact the help desk,
>> available
>> >>>>>> 24/7.
>> >>>>>> Web form: IT Helpdesk <https://helpdesk.antioch.edu/> or
>> Phone:
>> >>>>>> 1-866-662-0056
>> >>>>>>
>> >>>>>> _______________________________________________
>> >>>>>> sakai-user mailing list
>> >>>>>>
>>
>> > sakai-user at .sakaiproject
>>
>> >>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-user
>> >>>>>>
>> >>>>>> TO UNSUBSCRIBE: send email to
>> >>>>>>
>>
>> > sakai-user-unsubscribe at .sakaiproject
>>
>> >  with a subject of
>> >>>>>> "unsubscribe"
>> >>>>>>
>> >>>>>
>> >>>>>
>> >>>>
>> >>>
>> >>
>> >
>> > _______________________________________________
>> > sakai-user mailing list
>>
>> > sakai-user at .sakaiproject
>>
>> > http://collab.sakaiproject.org/mailman/listinfo/sakai-user
>> >
>> > TO UNSUBSCRIBE: send email to
>>
>> > sakai-user-unsubscribe at .sakaiproject
>>
>> >  with a subject of "unsubscribe"
>>
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://sakai-project-mail-list-archives.1343168.n2.nabble.com/Using-Sakai-Sakai-2-9-Orientation-Tutorial-tp7592354p7598800.html
>> Sent from the DG: User / Using Sakai (

> sakai-user at .sakaiproject

> )
>> mailing list archive at Nabble.com.
>> _______________________________________________
>> sakai-user mailing list
>> 

> sakai-user at .sakaiproject

>> http://collab.sakaiproject.org/mailman/listinfo/sakai-user
>>
>> TO UNSUBSCRIBE: send email to
>> 

> sakai-user-unsubscribe at .sakaiproject

>  with a subject of
>> "unsubscribe"
>>
> 
> _______________________________________________
> sakai-user mailing list

> sakai-user at .sakaiproject

> http://collab.sakaiproject.org/mailman/listinfo/sakai-user
> 
> TO UNSUBSCRIBE: send email to 

> sakai-user-unsubscribe at .sakaiproject

>  with a subject of "unsubscribe"





--
View this message in context: http://sakai-project-mail-list-archives.1343168.n2.nabble.com/Using-Sakai-Sakai-2-9-Orientation-Tutorial-tp7592354p7598805.html
Sent from the DG: User / Using Sakai (sakai-user at collab.sakaiproject.org) mailing list archive at Nabble.com.


More information about the sakai-user mailing list