Difference between revisions of "Community/Community resources/Development"

From AtoM wiki
(Create basic page content)
 
(Add section for PeaceWorks dev)
Line 15: Line 15:
  
  
===CENDARI Shibboleth authentication plugin===
+
==CENDARI Shibboleth authentication plugin==
  
 
CENDARI (Collaborative European Digital Archive Infrastructure) is a research collaboration aimed at integrating digital archives and resources for research on medieval and modern European history. They have chosen AtoM for use as their collaborative Archival Directory (site [https://archives.cendari.dariah.eu/ here], more information [http://www.cendari.eu/archival-directories/ here]), and have done some custom development, including a plugin to integrate with [http://shibboleth.net/ Shibboleth], an "''open-source project that provides Single Sign-On capabilities and allows sites to make informed authorization decisions for individual access of protected online resources in a privacy-preserving manner.''"
 
CENDARI (Collaborative European Digital Archive Infrastructure) is a research collaboration aimed at integrating digital archives and resources for research on medieval and modern European history. They have chosen AtoM for use as their collaborative Archival Directory (site [https://archives.cendari.dariah.eu/ here], more information [http://www.cendari.eu/archival-directories/ here]), and have done some custom development, including a plugin to integrate with [http://shibboleth.net/ Shibboleth], an "''open-source project that provides Single Sign-On capabilities and allows sites to make informed authorization decisions for individual access of protected online resources in a privacy-preserving manner.''"
Line 23: Line 23:
 
* [https://github.com/CENDARI/sfDariahShibUserPlugin GitHub repository]
 
* [https://github.com/CENDARI/sfDariahShibUserPlugin GitHub repository]
 
* [https://int2.cendari.dariah.eu/docs/developer/atom/shibboleth.html Plugin documentation]
 
* [https://int2.cendari.dariah.eu/docs/developer/atom/shibboleth.html Plugin documentation]
 +
 +
 +
 +
==PeaceWorks MAID plugins ==
 +
 +
In March of 2015, [http://www.peaceworks.ca/ PeaceWorks Technology Solutions] helped to launch [http://archives.mhsc.ca/ MAID] (Mennonite Archival Image Database), a collaborative project of the Mennonite Historical Society of Canada  which includes Mennonite archival partners in British Columbia, Alberta, Saskatchewan, Manitoba, and Ontario, with images held in a shared AtoM instance. Over the course of the 2-year design and development project leading up to the launch, PeaceWorks developed several custom features and plugins for use in MAID, including an eCommerce "shopping cart" plugin for purchasing prints of images available in MAID; an image carousel for the home page, and integration with [http://www.tinymce.com/ TinyMCE] to add a [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] set of editing tools to AtoM's static pages (e.g. so users did not need to know basic HTML to style static pages). More details on each below.
 +
 +
===eCommerce plugin===
 +
 +
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.
 +
 +
According to the [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md plugin documentation's] Overview section, "This plugin allows website visitors to select and purchase individual photos. Payment for the photos happens via PayPal. E-Commerce admins review each order and may approve or reject (remove) photos from the order. After approval, the customer is sent an email containing a link which they can use to download the image(s).
 +
 +
Users have access to a shopping cart, where photos from multiple repositories can be added as users browse the site, and then ordered/checked out via PayPal. The shopping cart has basic integration with AtoM's PREMIS rights module, so when Dissemination = "Disallow," a message about restrictions is supplied instead. Other features include a vacation setting and a sales report.
 +
 +
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/ecommerce PeaceWorks GitHub AtoM fork, eCommerce branch]
 +
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/ecommerce/plugins/sfEcommercePlugin/README.md eCommerce plugin documentation]
 +
* [http://archives.mhsc.ca/ MAID], where you can see the shopping cart in action
 +
 +
 +
===Home page carousel plugin===
 +
 +
This plugin has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between July 2014 and March 2015.
 +
 +
This plugin adds a slideshow to the AtoM front page which displays up to 30 of the most recently added/updated photos in the system. Photos and their captions (if available) are displayed. Users may click a photo to go to its archival description.
 +
 +
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/carousel PeaceWorks GitHub AtoM fork, Carousel branch]
 +
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/carousel/plugins/sfCarouselPlugin/README.md Carousel README documentation]
 +
 +
 +
 +
===TinyMCE visual editor integration for editing static pages===
 +
 +
This integration has been developed by [https://github.com/jasonhildebrand Jason Hildebrand] of  [http://www.peaceworks.ca/ PeaceWorks Technology Solutions], primarily between April 2014 and March 2015. At this time, this integration has not been packaged as a plugin.
 +
 +
[http://www.tinymce.com/ TinyMCE] is "'' a platform independent web based Javascript HTML [https://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] editor control released as Open Source under LGPL,''" that, when integrated with AtoM, allows users unfamiliar with HTML to style static pages using familiar buttons, tools, and other user interface elements. The integration includes basic text styling (bold, underline, italics), table creation, image and file upload, link creation, and more.
 +
 +
* [https://github.com/PeaceWorksTechnologySolutions/atom/tree/tinymce PeaceWorks GitHub AtoM fork, TinyMCE branch]
 +
* [https://github.com/PeaceWorksTechnologySolutions/atom/blob/tinymce/README_tinymce.md TinyMCE README documentation]
  
  

Revision as of 13:35, 9 July 2015

Main Page > Community > Community/Community resources > Community/Community resources/Development

In this section of the wiki, we'll add links to custom patches, plugins, themes, forks, and other resources developed by community users and publicly available for developers to explore and work with.

Tip

Have you developed custom code for your AtoM installation? Let us know! And... why not consider contributing your code to the public project? That way, we maintain the code for you through future releases, and the entire community benefits from your work! Here are some links to get you started:

CENDARI Shibboleth authentication plugin

CENDARI (Collaborative European Digital Archive Infrastructure) is a research collaboration aimed at integrating digital archives and resources for research on medieval and modern European history. They have chosen AtoM for use as their collaborative Archival Directory (site here, more information here), and have done some custom development, including a plugin to integrate with Shibboleth, an "open-source project that provides Single Sign-On capabilities and allows sites to make informed authorization decisions for individual access of protected online resources in a privacy-preserving manner."

The plugin was developed against AtoM 2.1, and has not yet been tested with other releases. The development was done by Carsten Thiel, primarily between November and December of 2014.

PeaceWorks MAID plugins

In March of 2015, PeaceWorks Technology Solutions helped to launch MAID (Mennonite Archival Image Database), a collaborative project of the Mennonite Historical Society of Canada which includes Mennonite archival partners in British Columbia, Alberta, Saskatchewan, Manitoba, and Ontario, with images held in a shared AtoM instance. Over the course of the 2-year design and development project leading up to the launch, PeaceWorks developed several custom features and plugins for use in MAID, including an eCommerce "shopping cart" plugin for purchasing prints of images available in MAID; an image carousel for the home page, and integration with TinyMCE to add a WYSIWYG set of editing tools to AtoM's static pages (e.g. so users did not need to know basic HTML to style static pages). More details on each below.

eCommerce plugin

This plugin has been developed by Jason Hildebrand of PeaceWorks Technology Solutions, primarily between July 2014 and March 2015.

According to the plugin documentation's Overview section, "This plugin allows website visitors to select and purchase individual photos. Payment for the photos happens via PayPal. E-Commerce admins review each order and may approve or reject (remove) photos from the order. After approval, the customer is sent an email containing a link which they can use to download the image(s).

Users have access to a shopping cart, where photos from multiple repositories can be added as users browse the site, and then ordered/checked out via PayPal. The shopping cart has basic integration with AtoM's PREMIS rights module, so when Dissemination = "Disallow," a message about restrictions is supplied instead. Other features include a vacation setting and a sales report.

Home page carousel plugin

This plugin has been developed by Jason Hildebrand of PeaceWorks Technology Solutions, primarily between July 2014 and March 2015.

This plugin adds a slideshow to the AtoM front page which displays up to 30 of the most recently added/updated photos in the system. Photos and their captions (if available) are displayed. Users may click a photo to go to its archival description.

TinyMCE visual editor integration for editing static pages

This integration has been developed by Jason Hildebrand of PeaceWorks Technology Solutions, primarily between April 2014 and March 2015. At this time, this integration has not been packaged as a plugin.

TinyMCE is " a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under LGPL," that, when integrated with AtoM, allows users unfamiliar with HTML to style static pages using familiar buttons, tools, and other user interface elements. The integration includes basic text styling (bold, underline, italics), table creation, image and file upload, link creation, and more.