Coder Social home page Coder Social logo

edensung25 / islandora Goto Github PK

View Code? Open in Web Editor NEW

This project forked from islandora/islandora

0.0 1.0 0.0 16.91 MB

A Drupal module for browsing and managing Fedora-based digital repositories

Home Page: http://islandora.ca/

License: GNU General Public License v3.0

CSS 1.12% JavaScript 0.62% Shell 1.48% PHP 93.47% XSLT 3.30%

islandora's Introduction

Islandora Build Status

Introduction

This module includes the core functionality for interacting with Fedora Repository objects through the Drupal interface.

For installation and customization instructions please see the documentation and the DuraSpace Wiki.

All bugs, feature requests and improvement suggestions are tracked at the DuraSpace JIRA.

Requirements

This module requires the following modules/libraries:

Tuque is expected to be in one of two paths:

  • sites/all/libraries/tuque (libraries directory may need to be created)
  • islandora_folder/libraries/tuque

More detailed requirements are outlined in the Installing the Islandora Essential Modules chapter of the documentation.

Optional Requirements

If you want to support languages other than English, download and enable String Translation, and follow our guide for setting up additional languages.

Installation

This is one Drupal module in a suite of modules (and stack of related software) which are required for Islandora to function correctly. For full installation instructions please see the documentation in the DuraSpace Wiki.

Global Fedora XACML policies

Before installing Islandora, the XACML policies located here should be copied into the Fedora global XACML policies folder. This will allow "authenticated users" in Drupal to access Fedora API-M functions (create, edit, and delete objects in Fedora).

Notes:

  • Delete the permit-upload-to-anonymous-user.xml and permit-apim-to-anonymous-user.xml policies unless you want to allow anonymous (unauthenticated) users to create Islandora objects (not recommended).
  • Delete the deny-purge-datastream-if-active-or-inactive.xml to allow users to purge (permanently remove) datastream versions.

More detailed information can be found in the 'Set XACML Policies' in the Installing Fedora chapter of the documentation.

Protecting the 'anonymous' username

The islandora_drupal_filter passes the username of 'anonymous' through to Fedora for unauthenticated Drupal Users. A user with the name of 'anonymous' may have XACML policies applied to them that are meant to be applied to Drupal users that are not logged in or vice-versa. This is a potential security issue that can be plugged by creating a user named 'anonymous' and restricting access to the account. If this is done after installing Islandora, Drupal's cron can be run to remove expired authentication tokens.

Configuration

Configuration that applies to all solution packs, including the location of the Fedora Repository, the namespaces accessible by this instance of Islandora, and whether to generate derivatives on ingest, are available at admin/islandora/configure.

Configuration

Breadcrumb Generation

Whether Drupal breadcrumbs (showing an object's parent hierarchy) should be displayed, and how they are generated, can be set on the configuration page. Other modules (such as Islandora Solr) may provide alternatives that perform better at large scales than the built-in Resource Index query.

Inactive and Deleted Objects

By default, objects with the Fedora state of "Inactive" or "Deleted" are accessible to all users with the Drupal permission "View repository objects". It is possible to use a separate permission to control access to these non-"Active" objects, but this permission must first be enabled at admin/islandora/configure, then the permssion can be granted to desired roles at admin/people/permissions.

Customization

  • Hooks provided by Islandora are documented in islandora.api.php.
  • A detailed tutorial on extending the multi-page ingest forms is available on the Github (developers') Wiki.
  • Additional modules developed by members of the Islandora community to extend Islandora can be found on the curated Islandora Awesome list.

Documentation

Further documentation for this module is available at our documentation wiki.

Troubleshooting/Issues

Having problems or solved a problem? Check out the Islandora google groups for a solution.

Maintainers/Sponsors

Current maintainers:

Development

If you would like to contribute to this module, please check out CONTRIBUTING.md. In addition, we have helpful Documentation for Developers info, as well as our Developers section on the Islandora.ca site.

License

GPLv3

islandora's People

Contributors

adam-vessey avatar jordandukart avatar willtp87 avatar nigelgbanks avatar ppound avatar morgandawe avatar rwincewicz avatar ruebot avatar ajstanley avatar diegopino avatar dannyjoris avatar nhart avatar whikloj avatar mitchmac avatar yqjiang avatar rosiel avatar daniel-dgi avatar manez avatar matthewperry avatar jonathangreen avatar krisbulman avatar philsogadgi avatar nmader avatar christianselig avatar mjordan avatar jmacwilliams avatar bondjimbond avatar slangerx avatar bryjbrown avatar dmoses avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.