Developer Area/MochiKit in Mahara
From Mahara Wiki
< Developer Area
MochiKit needs to be removed from Mahara since it's unmaintained and unnecessary alongside jQuery (https://bugs.launchpad.net/mahara/+bug/1323920). This page lists the places it's still used, grouped by function to (hopefully) make it easier to refactor nicely.
Reusable components/snippets
- Editable list (admin/groups/groupcategories.php, admin/site/menu.php)
- User search (js/adminexportqueue.js, js/adminusersearch.js)
- Connecting pagination to search box
- admin/groups/groups.php
- admin/users/institutions.php
- group/members.php
- search/elasticsearch/index.php
- user/find.php
- user/myfriends.php
JS in PHP (MochiKit usage only; there's also a lot of jQuery)
- Reloading the page on select box change (bad for accessibility!)
- admin/users/institutionusers.php
- admin/users/pendingregistrations.php
- admin/users/progressbar.php
- admin/users/statistics.php
- lib/institution.php
- Focus element on load
- admin/site/fonts.php
- admin/site/views.php
- view/groupviews.php
- view/institutionviews.php
- Form element hiding/showing
- admin/users/addauthority.php - SSO and auth login message
- admin/users/institutions.php - institution theme settings
- view/access.php
- Pagination initialization (artefact/blog/index.php, probably others)
- Showing/hiding content of an expander (artefact/resume/lib.php:get_showhide_composite_js)
- Blocktype inlinejs initialization (group/view.php, user/view.php, view/blocks.php, view/view.php)
- Pieforms elements (lib/form/elements/{artefactchooser,checkboxes,filebrowser}.php)
- Show upgrade progress (admin/upgrade.php)
- Changing blog post status (artefact/blog/view/index.php)
- Login form JS (auth/lib.php:get_login_form_js)
- Adding wall posts (blocktype/wall/lib.php)
- Hide homepage info boxes (index.php)
- Tags page (tags.php)
- Choose view template (view/choosetemplate.php)
MochiKit in JS files
- artefact/blog/blocktype/taggedposts/js/taggedposts.js
- artefact/file/js/filebrowser.js
- artefact/plans/blocktype/plans/js/plansblock.js
- blocktype/creativecommons/js/creativecommons.js
- blocktype/openbadgedisplayer/js/configform.js
- js/adminadduser.js
- js/adminexportqueue.js
- js/adminsiteoptions.js
- js/adminsitepages.js
- js/adminuploadcsv.js
- js/adminusersearch.js
- js/export.js
- js/keyboardNavigation.js
- js/mahara.js
- js/paginator.js
- js/searchtable.js
- js/tablerenderer.js
- js/viewmenu.js
- js/views.js (getViewportDimensions)
- lib/pieforms/static/core/elements/textarea.js
- lib/pieforms/static/core/pieforms.js
MochiKit modules
- js/MochiKit/*
- js/Pager.js