About Coppermine
Coppermine Photo Gallery
(CPG) is an advanced, user-friendly, picture gallery script with
built-in support for other multi-media/data files. The gallery can be
private, accessible to registered users only, and/or open to all
visitors to your site. Users, if permitted, can upload pictures with
their web browser (thumbnail and intermediate sized images are created
on the fly during the upload stage), rate pictures, add comments and
even send e-cards. The site administrator determines which of the
features listed above are accessible by registered and non-registered
users. The site administrator can also manage galleries and batch
process large numbers of pictures that have been uploaded onto the
server by FTP.
Image
files are stored in albums and albums can be grouped into categories,
which in turn, can be further grouped under parent categories. The
script supports multiple users and provides the administrator of the
website with tools to manage which user groups can or cannot have
personal albums, send ecards, or add comments. Users may also upload to
public albums if the website administrator permits it. Permissions to
create albums, upload and delete files are all determined by the website
administrator.
Coppermine
has an optional user-selectable theme system with a number of themes
pre-installed. It also supports the use of multiple languages and
contains it's own language library. These language files provide users
of your gallery to access the gallery in their preferred languages.
Coppermine uses PHP (version 7 compatible), a MySQLi, PDO(mysql) or
MySQL database, and either the GD library (version 2.x), ImageMagick or
IMagick Extension as image libraries to generate and keep records and
file information of all thumbnails, intermediate, and full-sized images.
Coppermine generates the html code necessary to display its various
categories, sub-categories, albums, intermediate, and full-sized image
displays dynamically. This drastically cuts down on the number of files
and space your gallery would require using standard HTML. The install
script (install.php) makes it quick and easy to get started.
Coppermine uses the jQuery JavaScript/Ajax-library for a rich user experience and easy customization.
Coppermine is free, open source software and can be used both for
personal sites as well as for commercial use. It is being released under
the GNU GPL license, version 3, which has been approved by the OSI.
About the documentation
Use
the menu at the top left of this screen to browse through the
Coppermine documentation. The menu is available throughout the
documentation. The menu is JavaScript-driven - if you have JavaScript
turned off or can't use it for whatever reason, use the link at the top
that will lead you to the table of contents and from there on to the
section of the docs that you want to read.
The Coppermine dev team strongly recommends enabling JavaScript
and using a modern browser (with CSS and JavaScript according to the DOM standards) to read the documentation for a richer experience.
Documentation Conventions
Throughout the documentation the following conventions have been applied:
Text boxes
There are text boxes in this documentation that have special meanings:
Examples that are meant to illustrate the instructions given are displayed like this!
Additional information that should not be overlooked is being displayed like this.
Hints that usually will lead
to a bigger insight into the overall mechanisms within Coppermine or
that will help you applying features successfully are being highlighted
like this.
Warnings
about things that can easily go wrong if a mistake is being made are
being displayed in this manner. It is advisable to pay close attention
to the text within such boxes.
Things that can go wrong depending on user interaction or user input are being displayed like this.
Actual errors
or issues that can have a huge impact are being displayed like this.
This is the most serious kind of boxes - their content is very important
to read.
Longer sections of code examples (can be PHP, HTML, CSS or JavaScript) are displayed using the typewriter icon in front of them.
Links
All "regular" links (that don't have a special icon
displayed next to them) are internal links, i.e. they refer to a section
of this documentation and therefore allow you to navigate this
documentation. The exception to this rule are the following links:
-
Expandable / collapsible sections
There are some sections that can be expanded and
collapsed (if JavaScript is enabled in your browser) for easier reading.
Usually, the expandable sections contain details about the paragraph in
front of them. Expandable sections are being tagged with a little plus
box () in front of them if in collapsed state and a minus box ()
if in expanded state. If JavaScript is turned off in your browser, all
expandable boxes will be displayed expanded - clicking the icons won't
do anything then.
-
External links
External links that lead to a page outside of this
documentation are being followed by a little icon that represents a
window with an arrow in it: .
-
PHP documentation
As Coppermine is a PHP-driven app, there are a
number of references within it's documentation that relate to technical
terms of the programming language PHP. The links that are tagged with a
little PHP icon ()
therefore lead to sections within the official PHP documentation on
php.net that contain further information or definitions of the term used
within the Coppermine docs.
-
Anchors
On every page within the Coppermine documentation you will find anchor icons ()
next to many paragraph headings. They are clickable and will point
exactly to the paragraph in front of them. Their purpose mainly is for
easier support: if a supporter wants to refer to a particular section of
the docs from within his/her posting, he/she can easily perform a
right-click, "copy URL" within the documentation on the official
Coppermine home page and paste that copied link into his posting. For
you as an end user, the anchors can be helpful if you want to bookmark
particular section of the docs.
Features
Coppermine comes with many features. Below you'll find an incomplete list. Features that are new in cpg1.6.x (compared to cpg1.5.x) are marked accordingly.
Details
-
Installer
- easy install (installer provided)
- improved, wizard-like installer
- choose from MySQLi, PDO(mysql) or MySQL for database access (cpg1.6.x)
-
Registration & Login
-
User management
- user management (private galleries, groups)
visitors can register for themselves (if the admin allows registrations). Alternatively, admin can create user accounts.
- User management is group-based
- Permissions are managed/assigned per group
- bridging: integration of user management with various BBS (like phpBB, YaBB SE, SMF, Invisionboard, vbulletin)
- bbs integration settable with a wizard-like user interface (bridge manager)
- user membership in multiple groups
- more admin-settable user profile fields
-
Managing categories and albums
- arrangement of pictures in categories, optional sub-categories and albums
- users can create albums in admin allowed categories
- New category hierarchy system
-
Uploading
-
Displaying images
- Meta albums:
admin can specify what virtual extra albums can be used to provide alternative "views" or methods to browse the gallery:
- last commented
- last added
- random picture
- browse-by-date meta-album
- most viewed
- top rated
- favorites
- slideshow viewer
- option to display a clickable flimstrip of thumbnails below the image display
- watermarking option
- thumb cropping and sharpening
-
User interaction
-
Statistics
- public display of number of images, views and last uploads
- browser and OS stats for admin
- overall stats
- album hits counter
- public stats can be turned off
-
Searching
- advanced search (boolean operators)
- regular expressions in search
- clickable keywords
- tag cloud feature
-
Administration
- Admin tools
- basic authentication for update script
- reset to default for individual config options
- Uploaded files can be un-approved by the admin to temporarily hide them
- Direct banning option on comment approval screen
- User management screen with additional criteria, showing user interaction
-
Plugins
- plugin-API to allow the creation of user-contributed enhancements
- many plugin contributions available
- plugin-manager
-
Documentation
- online help feature for the admin pages
- bbcode help icon on comments
- complete admin documentation available
- multi-lingual documentation
- documentation split into sections for easier reading
-
Miscellaneous
- picture information stored in database
- full multimedia support
- multi-lingual
- English as a fallback language for un-translated entries in language files
- all features customizable with web interface (admin section)
- EXIF/IPTC support
- URL parameters refer to absolute positions instead of relative ones for search engine friendliness
- API for Coppermine to be used with applications like Koppermine and others
- news section for the admin to alert him about updates
- usage of Inspekt for the sanitization of superglobals, a tool to create secure PHP application
- granular control for guest access: no access, thumbs only, thumbs + intermediate only, thumbs + intermediate + full-size
- Prevent search engine spiders from indexing meta albums
-
Visual appearance
What's next?
There's a number of pages within this documentation that beginners should start with: