mirror of
https://github.com/nextcloud/documentation.git
synced 2026-01-04 10:46:21 +07:00
245 lines
8.4 KiB
ReStructuredText
245 lines
8.4 KiB
ReStructuredText
===========
|
|
Gallery app
|
|
===========
|
|
|
|
The Pictures app has been rewritten and improved, and is now called the Gallery
|
|
app. It supports more image formats, sorting, zoom, and scrolling. It also
|
|
supports advanced customizations via a simple text file.
|
|
|
|
On your main Nextcloud Files page, click the little icon at the top right,
|
|
underneath your username, to open your Gallery. The Gallery app automatically
|
|
finds all images in your Nextcloud folders, and overlays the thumbnails with the
|
|
folder names. Click on the folder thumbnails to open the folders. At the top
|
|
left you have two sorting options, alphabetical and by date.
|
|
|
|
.. figure:: ../images/gallery-1.png
|
|
:alt: Gallery folder thumbnails.
|
|
|
|
After entering any folder, click on any image to open it in slideshow mode.
|
|
This has the following features: a download button at the top center, forward
|
|
and back buttons at the right and left sides, an automatic slideshow button at
|
|
the bottom right, and a close button at the top right.
|
|
|
|
.. figure:: ../images/gallery-2.png
|
|
:alt: Gallery in slideshow mode.
|
|
|
|
Custom configuration
|
|
--------------------
|
|
|
|
You may customize a Gallery album with a simple text file named
|
|
**gallery.cnf**, which contains parameters structured using the
|
|
`Yaml <https://en.wikipedia.org/wiki/YAML>`_ markup language. You may have
|
|
multiple **gallery.cnf** files; you need one in your own root Nextcloud folder
|
|
(your Home folder) that defines global features, and then you may have
|
|
individual per-album **gallery.cnf** files if you want to define different
|
|
behaviors in different albums.
|
|
|
|
Features
|
|
^^^^^^^^
|
|
|
|
The following general features are currently implemented:
|
|
|
|
* Native SVG support.
|
|
* Access to external shares.
|
|
|
|
The following album features are currently implemented:
|
|
|
|
* Adding a link to a file containing a description.
|
|
* Typing a simple copyright statement directly in the configuration file.
|
|
* Adding a link to a file containing a copyright statement.
|
|
* Defining a sort type and order.
|
|
* Defining the colour of the background.
|
|
* Defining if sub-albums will inherit the configuration.
|
|
|
|
The following slideshow features are currently implemented:
|
|
|
|
* Showing a button which lets you pick which background, either black or
|
|
white, to use for the picture you are currently viewing (for images with
|
|
transparent backgrounds).
|
|
|
|
Setup
|
|
^^^^^
|
|
|
|
The configuration file has to be named **gallery.cnf**. You may have multiple
|
|
per-album **gallery.cnf** files. To enable global features, place one in your
|
|
top-level folder, which is symbolised in the Web GUI by the home icon. (This
|
|
puts it in ``data/<user>/files/``.) See :ref:`an example below
|
|
<supported_variables_label>` in the **Global features** section.
|
|
|
|
.. note:: You need to refresh your browser after changing your configuration to
|
|
see your changes.
|
|
|
|
Format
|
|
^^^^^^
|
|
|
|
UTF-8, **without BOM**. A file created from within the Nextcloud Web GUI works.
|
|
|
|
Structure
|
|
^^^^^^^^^
|
|
|
|
You should include a comment in the file, so that people stumbling upon
|
|
the file know what it's for. Comments start with #.
|
|
|
|
Spacing is created using 2 spaces. **Do not use tabs.**
|
|
|
|
Take a look at the `YAML Format documentation
|
|
<https://symfony.com/doc/current/components/yaml/yaml_format.html>`_ if you are
|
|
getting error messages.
|
|
|
|
Here is an example `gallery.cnf`::
|
|
|
|
# Gallery configuration file
|
|
# Created on 31 Jan 2016 by Nextcloud User
|
|
features:
|
|
external_shares: yes
|
|
native_svg: yes
|
|
background_colour_toggle: yes
|
|
design:
|
|
background: "#ff9f00"
|
|
inherit: yes
|
|
information:
|
|
description: This is an **album description** which is only shown if there
|
|
is no `description_link`
|
|
description_link: readme.md
|
|
copyright: Copyright 2003-2016 [interfaSys sàrl](https://www.interfasys.ch),
|
|
Switzerland
|
|
copyright_link: copyright.md
|
|
inherit: yes
|
|
sorting:
|
|
type: date
|
|
order: des
|
|
inherit: yes
|
|
|
|
.. _supported_variables_label:
|
|
|
|
Supported variables
|
|
^^^^^^^^^^^^^^^^^^^
|
|
|
|
**Global Features**
|
|
|
|
Place this in your root Nextcloud folder, which is your Home folder.
|
|
|
|
* **external_shares**: Set to **yes** in your root configuration file if you
|
|
want to load images stored on external locations, when using the
|
|
**files_external** app.
|
|
* **native_svg**: Set to **yes** in your root configuration file to enable
|
|
rendering SVG images in your browser. This may represent a security risk if
|
|
you can't fully trust your SVG files.
|
|
* **background_colour_toggle**: Set to **yes** in your root configuration file
|
|
to enable a button that toggles between black and white backgrounds on
|
|
transparent images.
|
|
|
|
.. note:: External shares are 20-50 times slower than local shares. Be prepared
|
|
to wait a long time before being able to see all the images contained in a
|
|
shared album.
|
|
|
|
**Album Configuration**
|
|
|
|
Each album can be individually configured using the following configuration
|
|
sections. Use the **inherit** parameter to pass configurations on to
|
|
sub-albums.
|
|
|
|
**Design**
|
|
|
|
* **background**: Defines the colour of the background of the photowall
|
|
using the RGB hexadecimal representation of that colour. For example:
|
|
**"#ffa033"**. You must use quotes around the value or it will
|
|
be ignored. It is strongly recommended to use a custom theme, with a CSS
|
|
loading spinner if you intend to use this feature. You can use `this colour
|
|
wheel <http://paletton.com/>`_ to find a colour you like.
|
|
* **inherit**: Set to **yes** if you want sub-folders to inherit this part of
|
|
the configuration.
|
|
|
|
**Album Presentation**
|
|
|
|
* **description**: A markdown-formatted string which will be displayed in the
|
|
info box. It can spread over multiple lines using the Yaml markers.
|
|
* **description_link**: A markdown file located within the album which will
|
|
be parsed and displayed in the info box instead of the description.
|
|
* **copyright**: A markdown-formatted string. This supports links to external
|
|
resources.
|
|
* **copyright_link**: Any file (e.g. copyright.html), in the album itself,
|
|
which will be downloaded when the user clicks on the link
|
|
* **inherit**: Set to **yes** if you want sub-folders to inherit this part of
|
|
the configuration.
|
|
|
|
See `<http://www.markitdown.net/markdown>`_ for the markdown syntax.
|
|
|
|
.. note:: Do not add links to your `copyright` string if you use the
|
|
**copyright_link** variable.
|
|
|
|
**Sorting**
|
|
|
|
* **sorting**: **date** or **name**. **date** only works for files.
|
|
* **sort_order**: **asc** or **des** (Ascending or descending).
|
|
* **inherit**: Set to **yes** if you want sub-folders to inherit this part of
|
|
the configuration.
|
|
|
|
Notes
|
|
-----
|
|
|
|
* When only the sort **type** variable has been set, the default sort order
|
|
will be used.
|
|
* When only the sort **order** variable has been found, the sort configuration
|
|
will be ignored and the script will keep looking for a valid configuration in
|
|
upper folders.
|
|
* To enable a feature such as native SVG in a public share, you need to create
|
|
in that folder a configuration file containing that feature.
|
|
* If you share a folder publicly, don't forget to add all the files you link to
|
|
(e.g. ``description.md`` or ``copyright.md``) inside the shared folder as
|
|
the user won't have access to files stored in the parent folder.
|
|
* Since people can download a whole folder as an archive, it's usually best to
|
|
include all files within a shared folder, rather than adding text directly
|
|
in the configuration file.
|
|
|
|
Examples
|
|
--------
|
|
|
|
**Sorting Only**
|
|
|
|
Applies to the current folder only::
|
|
|
|
# Gallery configuration file
|
|
sorting:
|
|
type: date
|
|
order: asc
|
|
|
|
Short description and link to copyright document, applies to the current folder
|
|
and all of its sub-folders. This also shows you the syntax you can use to
|
|
spread a description over multiple lines::
|
|
|
|
# Gallery configuration file
|
|
information:
|
|
description: | # La Maison Bleue, Winter '16
|
|
This is our Winter 2016 collection shot in **Kyoto**
|
|
Visit our [website](http://www.secretdesigner.ninja) for more information
|
|
copyright: Copyright 2015 La Maison Bleue, France
|
|
copyright_link: copyright_2015_lmb.html
|
|
inherit: yes
|
|
|
|
**Load Images From External Clouds**
|
|
|
|
.. note:: Features can only be defined in the root folder.
|
|
|
|
You can add standard configuration items to the same configuration file::
|
|
|
|
# Gallery configuration file
|
|
features:
|
|
external_shares: yes
|
|
|
|
**Enabling native SVG**
|
|
|
|
.. note:: Special features can only be defined in the root folder.
|
|
|
|
You can add standard configuration items to the same configuration file::
|
|
|
|
# Gallery configuration file
|
|
features:
|
|
native_svg: yes
|
|
|
|
Possible future extensions
|
|
--------------------------
|
|
|
|
Different sorting parameters for albums.
|
|
|