--- loncom/interface/mydesk.tab	2013/07/03 16:44:20	1.163
+++ loncom/interface/mydesk.tab	2025/01/07 04:57:29	1.185
@@ -1,3 +1,4 @@
+# $Id: mydesk.tab,v 1.185 2025/01/07 04:57:29 raeburn Exp $
 # primary menu links
 # Apache::lonmenu::primary_menu() generates a menu from these elements
 # prim: item belongs to primary menu
@@ -7,29 +8,32 @@
 # text: link text
 # condition: when to show link, primary_menu will act upon this
 #   possible conditions:
-#   - empty: link is displayed if user is authenticated
-#   - public: display link if user is public or authenticated 
+#   - empty: link is displayed if user is authenticated (unless excluded by LTI)
+#   - public: display link if user is public or authenticated (unless excluded by LTI)
 #   - onlypublic: only show this link to public users
-#   - newmsg: only display if there are new messages 
-#   - nonewmsg: only display if there aren't any new messages
-#   - roles: show Roles instead of Courses
-#   - courses: show Courses instead of Roles
+#   - newmsg: only display if there are new messages (unless excluded by LTI)
+#   - nonewmsg: only display if there aren't any new messages (unless excluded by LTI)
+#   - roles: show Roles instead of Courses (unless LTI)
+#   - courses: show Courses instead of Roles (unless LTI)
+#   - notlti: not LTI launch
+#   - ltiexc: link shown unless LTI config excludes display
 # position: where link is to be displayed
 #   possible positions: 
 #   - empty (will be displayed on right side -- default location).
 #   - left
-# prim:link:icon:alt:text:condition:position
-prim::::Personal::left
-prim:/adm/about.html:/adm/lonIcons/minilogo.gif:LON-CAPA Logo:About:public:
-prim:/adm/menu:::Home::
-prim:/adm/communicate:::Messages:nonewmsg:
-prim:/adm/communicate:::New Messages:newmsg:
-prim:/adm/roles:::Roles:roles:
-prim:/adm/roles:::Courses:courses:
+# name: short name for item (used in visibility check for menu collection in effect)
+# prim:link:icon:alt:text:condition:position:name
+prim::::Personal::left:pers
+prim:/adm/about.html:/adm/lonIcons/minilogo.gif:LON-CAPA Logo:About:public::logo
+prim:/adm/menu:::Home:notlti::menu
+prim:/adm/communicate:::Messages:nonewmsg::comm
+prim:/adm/communicate:::New Messages:newmsg::comm
+prim:/adm/roles:::Roles:roles::roles
+prim:/adm/roles:::Courses:courses::roles
 prim:/adm/helpdesk:::Help:onlypublic:
 prim:/adm/roles:::Log In:onlypublic:
-prim::::Help::
-prim:/adm/logout:::Logout::
+prim::::Help:::help
+prim:/adm/logout:::Logout:ltiexc::logout
 
 # primary sub-menu links
 # Apache::lonmenu::primary_menu() generates a sub-menus from these elements
@@ -41,16 +45,20 @@ prim:/adm/logout:::Logout::
 #   possible conditions:
 #   - empty: link displayed if user is authenticated
 #   - portfolio: link displayed if portfolio access
-#   - blogs: link displayed if blog access
+#   - blog: link displayed if blog access
 #   - wishlist: link displayed if user has privileges to use Stored Links
 #   - reqcrs: link displayed if user can request Course or Community creation
-# primsub:parent:link:text:condition
-primsub:Personal:/adm/[domain]/[user]/aboutme:Information:
-primsub:Personal:/adm/preferences:Preferences:
-primsub:Personal:/adm/portfolio:Portfolio:portfolio
-primsub:Personal:/adm/wishlist:Stored Links:wishlist
-primsub:Personal:/adm/announcements:Calendar:
-primsub:Personal:/adm/[domain]/[user]/_rss.html:Feeds:blog
+#   - browsepub: link displayed if user can browse published resources
+# name: short name for item (used in visibility check for menu collection in effect)
+# primsub:parent:link:text:condition:name
+primsub:Personal:/adm/[domain]/[user]/aboutme:Information::about
+primsub:Personal:/adm/preferences:Preferences::prefs
+primsub:Personal:/adm/portfolio:Portfolio:portfolio:port
+primsub:Personal:/adm/wishlist:Stored Links:wishlist:wish
+primsub:Personal:/adm/announcements:Calendar::anno
+primsub:Personal:/adm/[domain]/[user]/_rss.html:Feeds:blog:rss
+primsub:Personal:/adm/searchcat:Search Library::srch
+primsub:Personal:/res/:Browse Library:browsepub:brse
 
 # secondary menu links
 # Apache::lonmenu::secondary_menu() generates a menu from these elements
@@ -63,37 +71,98 @@ primsub:Personal:/adm/[domain]/[user]/_r
 #   possible conditions:
 #   - empty: 
 #   - showgroups: user is member of a group
-#   - showsyllabus: course context and user has mdc priv, or syllabus exists
+#   - showsyllabus: course context and user has mdc or cev priv, or syllabus exists
 #                   (and not included in course content).
-#   - showfeeds: course context and user has mdc priv, or course feeds exist
-#   - showresv: course context and user cannot manage grades, and slots exist
+#   - showfeeds: course context and user has mdc or cev priv, or course feeds exist
+#   - showresv: course context and user cannot view or manage grades, and slots exist
 #   - always: show this link even if user hasn't selected a role
+#   - crseditCourse: user can modify content in a Course
+#   - crseditCommunity: user can modify content in a Community
+#   - crsedit: user can access Course/Community Editor (mdc or cev priv)
 #   - whn: access what's new
-#   - cst: Grant/revoke role of Student:Grant/revoke role of Member 
-#   - ncst: Not grant/revoke roles
-#   - opa: Set assessment parameters
+#   - vgr: user can view grades
+#   - viewusers: user can grant/revoke student/member roles or can view classlists
+#   - params: Set and/or view assessment parameters
+#   - noviewusers: user can neither grant/revoke student roles nor view classlists
 #   - nvgr: cannot view other people's grades 
 #   - mgr: Manage grades
-#   - author: authors (au, ca, aa)
-#   - cca:  Grant/revoke role of co-author (author only)
-# prim:link:icon:alt:text:condition
+#   - authorspace: (au, ca, aa)
+#   - author (au only)
+#   - coauthor (ca, aa only)
+#   - mca: Manage co-authors (author and possibly specific co-authors)
+#   - vca: List but not manage co-authors
+#   - lti: LTI launch -- LTI-specific rules apply
+#   - notlti: not LTI launch
+#   - notltimapres: not LTI launch for specific map or resource
+# name: short name for item (used in visibility check for menu collection in effect)
+# scnd:link:icon:alt:text:condition:name
+scnd::::Personal:lti
+scnd:/adm/navmaps?postdata=[url]&postsymb=[symb]:::Contents:notltimapres:cont
+scnd:/adm/coursedocs?command=contents:::Course Editor:crseditCourse
+scnd:/adm/coursedocs?command=contents:::Community Editor:crseditCommunity
 scnd:/adm/whatsnew:::What's New:whn
-scnd:/adm/navmaps?postdata=[url]&postsymb=[symb]:::Contents:
-scnd:/adm/quickgrades:::Grades:nvgr
-scnd:/adm/createuser:::People:cst
-scnd:/adm/viewclasslist:::People:ncst
-scnd:/adm/coursegroups:::Groups:showgroups
-scnd:/adm/slotrequest?command=manageresv:::Reservations:showresv
-scnd:/adm/slotrequest?command=showslots:::Slots:mgr
-scnd:/adm/grades:::Grades:vgr
-scnd:/adm/parmset:::Settings:opa
-scnd:/public/[cdom]/[cnum]/syllabus:::Syllabus:showsyllabus
-scnd:/adm/[cdom]/[cnum]/_rss.html:::Feeds:showfeeds
-scnd:/adm/roles:::Roles:
-scnd:/priv/[udom]/[uname]/:::Authoring Space:author
-scnd:/res/[udom]/[uname]/?launch=1:::Browse:author
-scnd:/adm/createuser:::People:cca
-
+scnd:/adm/quickgrades:::Grades:nvgr:grades
+scnd:[javascript]chat_win();:::Chat:plc:chat
+scnd::::Grades:vgr
+scnd::::People:viewusers
+scnd::::Settings:params
+scnd:/adm/viewclasslist:::People:noviewusers:people
+scnd:/adm/coursegroups:::Groups:showgroups:groups
+scnd:/adm/slotrequest?command=manageresv:::Reservations:showresv:resv
+scnd::::Public:crsedit
+scnd:/public/[cdom]/[cnum]/syllabus:::Syllabus:showsyllabus:syll
+scnd:/adm/[cdom]/[cnum]/_rss.html:::Feeds:showfeeds:feeds
+scnd:/adm/roles:::Roles:notlti:roles
+scnd:/adm/communicate:::Messages:lti
+scnd::::Help:lti
+scnd:/adm/logout:::Logout:lti
+scnd:/priv/[udom]/[uname]/:::Authoring Space:authorspace
+scnd:/res/[udom]/[uname]/?launch=1:::Browse:authorspace
+scnd:/adm/createuser:::People:mca
+scnd:/adm/viewcoauthors:::People:vca
+scnd::::Settings:author
+scnd:/adm/preferences?action=authorsettings[returnurl]:::Settings:coauthor
+scnd:[javascript]open_aboutLC();:/adm/lonIcons/minilogo.gif:LON-CAPA Logo:About:lti
+
+# secondary sub-menu links
+# Apache::lonmenu::secondary_menu() generates a sub-menus from these elements
+# scndsub: item belongs to secondary sub-menu
+# parent: name of secondary menu item, for which this is a sub-menu
+# link: references the url
+# text: link text
+# condition: when to show link, secondary_menu() will act based on this
+#   possible conditions:
+#   - author: link displayed if user is author
+#   - empty: link displayed if user is authenticated
+#   - crsedit: link displayed if user can access Course/Community Editor
+#   - vgr: link displayed if user can view grades
+#   - params: link displayed if user can set or view assessment parameters
+#   - mgr: link displayed if user can manage grades
+#   - viewusers: link displayed if user can either grant/revoke student/member roles or view classlists
+#   - vcg: link displayed if user can view groups to which he/she does not belong
+#   - lti: LTI launch -- LTI-specific rules apply
+#   - lti(portfolio,wishlist,blog): LTI launch -- LTI-specific rules apply in
+#     addition to access rule for tool itself (portfolio, wishlist or blog)
+# scndsub:parent:link:text:condition
+scndsub:Personal:/adm/[domain]/[user]/aboutme:Information:lti
+scndsub:Personal:/adm/preferences:Preferences:lti
+scndsub:Personal:/adm/portfolio:Portfolio:ltiportfolio
+scndsub:Personal:/adm/wishlist:Stored Links:ltiwishlist
+scndsub:Personal:/adm/announcements:Calendar:lti
+scndsub:Personal:/adm/[domain]/[user]/_rss.html:Feeds:ltiblog
+scndsub:Grades:/adm/statistics?reportSelected=student_assessment:Assessment Chart:vgr
+scndsub:Grades:/adm/statistics:Statistics and Reports:vgr
+scndsub:Grades:/adm/classcalc:Spreadsheet:vgr
+scndsub:Grades:/adm/grades:Content Grading:vgr
+scndsub:Settings:/adm/courseprefs:Course Settings:params
+scndsub:Settings:/adm/parmset:Content Settings:params
+scndsub:Settings:/adm/slotrequest?command=showslots:Slots:vgr
+scndsub:Settings:/adm/preferences?action=authorsettings[returnurl]:Editing Options:author
+scndsub:Settings:/adm/preferences?action=changedomcoord[returnurl]:Domain Access:author
+scndsub:People:/adm/createuser:Users:viewusers
+scndsub:People:/adm/coursegroups:Groups:vcg
+scndsub:Public:/public/[cdom]/[cnum]/syllabus:Syllabus:crsedit
+scndsub:Public:/adm/[cdom]/[cnum]/_rss.html:Feeds:crsedit
 
 # Categories for main menu
 # cat:column,row:title
@@ -122,7 +191,7 @@ cat:2,6:oth:Other
 # img-> img for the button
 # top-> txt for the top row of the remote
 # bot-> txt for the bottom row of the remote
-# act-> javascrtip to excute when clicked
+# act-> javascript to execute when clicked
 # txt-> text to display in the extended remote or inline remote
 # cat-> category that this belongs into (or "none" if in top menus)
 #
@@ -170,6 +239,8 @@ cat:2,6:oth:Other
 1:1:nsc:any:roles.png:switch[_2]:role[_1]:go('/adm/roles');:Switch to another user role:rol
 1:1:nsc:rcm:roles.png:choose[_2]:role[_2]:go('/adm/roles');:Choose the user role:rol
 1:2:clear
+1:2:pcev:$crs:docs.png:course[_7]:editor[_1]:go('/adm/coursedocs?command=home');:Edit course contents:crc
+1:2:pcev:$cmty:docs.png:communi-[_1]:ty edit[_1]:go('/adm/coursedocs?command=home');:Edit community contents:cmc
 1:2:pmdc:$crs:docs.png:course[_7]:editor[_1]:go('/adm/coursedocs?command=home');:Edit course contents:crc
 1:2:pmdc:$cmty:docs.png:communi-[_1]:ty edit[_1]:go('/adm/coursedocs?command=home');:Edit community contents:cmc
 2:1:clear
@@ -196,30 +267,37 @@ cat:2,6:oth:Other
 5:1:any:any:ccat.png:course[_13]:catalog[_1]:go('/adm/coursecatalog');:Display catalog of courses and communities:oth
 5:2:courseenv_student_classlist_view:any:clst.png:course[_12]:roster[_1]:go('/adm/viewclasslist');:View course roster:umn
 5:2:communityenv_student_classlist_view:any:clst.png:communi-[_5]:ty list[_1]:go('/adm/viewclasslist');:View community membership:umn
+5:2:coauthor:rca:cprv.png:user[_1]:list[_1]:go('/adm/viewcoauthors');:List co-authors:umn
+5:2:coauthor:raa:cprv.png:user[_1]:list[_1]:go('/adm/viewcoauthors');:List co-authors:umn
+5:2:coauthorenv_manager:rca:cprv.png:user[_1]:privs[_1]:go('/adm/createuser');:Manage co-authors:umn
 5:2:pvcl:$crs:clst.png:course[_12]:roster[_1]:go('/adm/createuser?action=listusers');:View class lists:umn
 5:2:pvcl:$cmty:clst.png:course[_12]:roster[_1]:go('/adm/createuser?action=listusers');:View membership lists:umn
 5:2:pcst:$crs:cprv.png:user[_1]:privs[_1]:go('/adm/createuser');:Manage course users:umn
 5:2:pcst:$cmty:cprv.png:user[_1]:privs[_1]:go('/adm/createuser');:Manage community users:umn
 5:2:pcca:$requested_domain:cprv.png:user[_1]:privs[_1]:go('/adm/createuser');:Manage co-authors:umn
+5:2:pvac:$requested_domain:cprv.png:user[_1]:privs[_1]:go('/adm/createuser');:View information about users:umn
 5:2:pcdc:/:cprv.png:user[_1]:privs[_1]:go('/adm/createuser');:Create users or modify the roles and privileges of users:umn
 5:2:pmau:$requested_domain:cprv.png:user[_1]:privs[_1]:go('/adm/createuser');:Create users or modify the roles and privileges of users:umn
 5:3:clear
 5:3:pccc:$requested_domain:ccrs.png:course[_8]:creation[_1]:go('/adm/createcourse');:Course and community creation:ccm
+5:3:pdcc:$requested_domain:ccrs.png:course[_8]:creation[_1]:go('/adm/createcourse');:Course and community creation:ccm
+5:3:pvpa:$crs:parm.png:course[_9]:parms[_1]:go('/adm/parmset');:View parameter settings (due dates, etc) for resources and the course:cmn
 5:3:popa:$crs:parm.png:course[_9]:parms[_1]:go('/adm/parmset');:Modify parameter settings (due dates, etc) for resources and the course:cmn
 5:3:popa:$cmty:parm.png:communi-[_6]:ty parms[_1]:go('/adm/parmset');:Modify parameter settings (due dates, etc) for resources and the community:cmm
 6:1:clear
-6:1:author:rau:cstr.png:con-[_1]:struct[_1]:go('/priv/$udom/$uname/');:Enter my Authoring Space:set
-6:1:author:rca:cstr.png:co con-[_1]:struct[_2]:go('/priv/$cadom/$caname/');:Enter Authoring Space as a co-author:set
-6:1:author:raa:cstr.png:co con-[_1]:struct[_2]:go('/priv/$cadom/$caname/');:Enter Authoring Space as an assistant co-author:set
+6:1:author:rau:cstr.png:author[_1]:space[_1]:go('/priv/$udom/$uname/');:Enter my Authoring Space:set
+6:1:author:rca:cstr.png:coauthor[_1]:space[_2]:go('/priv/$cadom/$caname/');:Enter Authoring Space as a co-author:set
+6:1:author:raa:cstr.png:coauthor[_1]:space[_2]:go('/priv/$cadom/$caname/');:Enter Authoring Space as an assistant co-author:set
 6:1:pmau:$requested_domain:conf.png:domain[_1]:config[_1]:go('/adm/domainprefs');:Set domain configuration:dom
 6:1:courseenv_canuse_pdfforms:any:pdfupload.png:upload[_1]:pdf form[_1]:go('/adm/pdfupload'):Upload a PDF Form with filled Form Fields:grd
 6:1:community_canuse_pdfforms:any:pdfupload.png:upload[_1]:pdf form[_1]:go('/adm/pdfupload'):Upload a PDF Form with filled Form Fields:grd
 6:2:clear
-6:2:pbro:/res/:res.png:resource[_1]:space[_1]:go('/res/?launch=1');:Browse own authored or co-authored resources:cnt
-6:2:pbre:$requested_domain:res.png:resource[_1]:space[_1]:go('/res/$udom/?launch=1');:Browse published resources:cnt
-6:2:author:rau:res.png:resource[_1]:space[_1]:go('/res/$udom/$uname/?launch=1');:Browse published resources:cnt
-6:2:author:rca:res.png:co res[_1]:space[_2]:go('/res/$udom/$uname/?launch=1');:Browse published resources:cnt
+6:2:pbro:/res/:res.png:resource[_1]:space[_3]:go('/res/?launch=1');:Browse own authored or co-authored resources:cnt
+6:2:pbre:$requested_domain:res.png:resource[_1]:space[_3]:go('/res/$udom/?launch=1');:Browse published resources:cnt
+6:2:author:rau:res.png:resource[_1]:space[_3]:go('/res/$udom/$uname/?launch=1');:Browse published resources:cnt
+6:2:author:rca:res.png:co res[_1]:space[_4]:go('/res/$udom/$uname/?launch=1');:Browse published resources:cnt
 6:3:clear
+6:3:prar:$requested_domain:mcrs.png:view[_2]:course[_17]:go('/adm/modifycourse');:View a course or community:ccm
 6:3:pccc:$requested_domain:mcrs.png:modify[_1]:course[_15]:go('/adm/modifycourse');:View or modify a course or community:ccm
 7:1:clear
 7:1:pmau:$requested_domain:srvr.png:server[_1]:status[_1]:go('/adm/domainstatus');:Status of domain servers:dom
@@ -236,7 +314,7 @@ cat:2,6:oth:Other
 9:3:adv:any:wishlist.png:view[_1]:linkstor[_1]:go('/adm/wishlist'):Stored Links:set
 10:1:clear
 10:1:any:any:anno.png:calendar[_1]:announce[_1]:go('/adm/announcements');:Announcements and my calendar:com
-10:1:course:any:anno.png:calendar[_1]:announce[_1]:go('/adm/announcements');:Course anouncements and my calendar:com
+10:1:course:any:anno.png:calendar[_1]:announce[_1]:go('/adm/announcements');:Course announcements and my calendar:com
 10:1:community:any:anno.png:calendar[_1]:announce[_1]:go('/adm/announcements');:Community announcements and my calendar:com
 10:2:any:any:com.png:commu-[_1]:nication[_1]:go('/adm/communicate');:Send and display messages:com
 10:3:clear