| Age | Commit message (Collapse) | Author | Files | Lines |
|
This brings support for copying whole directories when specified in
album extra files or template supplemental files.
|
|
This commit brings full flexibility of custom image size definition and
usage. When a custom image size is defined, it automatically maps to the
album <item> tag arguments. Alternatively, this automatic name matching
can be overriden by <size tagname="..."> theme setup tags.
This allows us to supply image of different sizes that can be also used
in templates.
Legacy behaviour of "fullsize" and "preview" image size fallback is
retained (though not recommended in new theming setups).
|
|
This commit makes use of a common function for all template parsing and page
writing. The behaviour is controlled by the "item" argument passed in. This
allows us to have a single code that generates code for list of items as well
as for a single item. In the future, this can be used for e.g. combining
thumbnails and large images on the same page.
Other than that this commit also brings several other changes:
- further clarification of theming setup XML file
- <protected_thumbnail> tag has been moved out of the <album> structure into
the <index> structure where it functionally belongs. Only whole albums can
be protected and the substitute thumbnail is displayed on index pages.
- position marker format has been broken out to a constant
- added few more FIXMEs to mark places that will change soon
- some template variables have been renamed
|
|
This change makes thumbnail image sizes more flexible by explicitly
stating the particular image size is a thumbnail. And each thumbnail
image size can have different squared settings.
On the theme side it's now mandatory to specify which thumbnail size
to use (if applicable). This allows us to have different thumbnail styles
for index and album pages.
This commit also removes the <squared_thumbnails> tag from setup.xml
file but retains fallback for ver. 1 setup.xml files.
|
|
The gthread library has been merged in glib and the threading API has changed
a little. Since changes are negligible, there's no point of losing support
of older glib releases, thus make it conditional.
|
|
This adds support for simple password protected areas (albums and
all subalbums) through webserver HTTP authentication. CGG simply
generates .htaccess and password files and it's up to the user to
set up the rest on server side.
No UI changes at this point. Limited to one user per album for
the moment.
|
|
This extends current templating system to another dimension,
bringing the possibility to have multiple themes generated
at once. The purpose is to be able to switch between multiple
designs, from PC to mobile, classic vs. flat view, slideshow, etc.
For the moment, only the classic theme is available.
Rules:
* for switching between themes, place a link inside your template
manually - it's not a cgg concern, only your theming infrastructure
* don't forget to define different file names for index and album
pages across different themes
* it's recommended to keep default theme named as "index.*" to avoid
showing directory listing on webserver
Notes:
* some TODOs will be fixed when we have new theme using these advanced
features (e.g. pictures in album pages)
* TODO: introduce tag/block conditional system, allow custom user
defines for each theme/page
* TODO: deprecate <show_go_up>, <show_exif_table> and <border style>
in favor of conditionals (these tags belong to theming)
|
|
And convert it to use global path info.
|
|
No need to store generated data during thread work anymore.
|
|
|
|
This has a nice side effect of not having double slashes in paths anymore.
|
|
This will allow us to pass detailed path info to worker methods.
Each path info instance is bound to a currently processed album
and directory.
Possibly move to struct TItems in the future.
|
|
|
|
|
|
|
|
Also fix forgotten two struct members :-o
|
|
|
|
The goal is to get rid of any writes to unlocked objects
(album items) during thread work.
|
|
|
|
|
|
|
|
By doing update, cgg will check the output structure for missing files and re-generate them as necessary. The decision
whether an item (file, picture, album) needs to be updated is done by comparing timestamps (mtime specifically). Due to that reason it's important to
keep this fact in mind when replacing single image which carries older timestamp than other files. Either don't use the update mode or 'touch' that
new file. Changes made to any XML file will result in whole album re-generation (excluding subalbums).
|
|
|
|
|
|
|
|
Also made progress output a little bit nicer
default = 1 thread at once, for safety reasons
I've encountered critical issues with ImageMagick compiled with OpenMP support. Hope that package maintainers are clever.
ShittyMagickWandGenesis(), ShittyMagickWandTerminus() :-)
|