Top 10 album headaches

Albums today are complex piece of code. Starting with images and videos coming from various sources, processed through jAlbum and skins authored by many developers, the albums uploaded to very different servers, utilize tons of 3rd party services over the internet, and viewed on a multitude of device types, be it a mobile a tablet or a desktop PC. And all this in a constatnly moving environment, where browsers change, OS’s change and remote services change day-by-day. No wonder the final result is flawed sometimes, or it gets flawed over time. But we are here to help. We – jAlbum developers – all do customer support, so we’re all aware of the classic pitfalls. If jAlbum had less settings, less things could go wrong, but jAlbum is a power tool. Here are some advices so you avoid cutting yourself while using it.

1. Processing subdirectories

Generally you should always allow jAlbum to Process subdirectories. Previously, there was a quirky method of creating so-called “master albums” (album of albums) where turning this option off stopped jAlbum from processing these (already made) albums again. Fortunately, since jAlbum 14 we have introduced the “Web locations”, which makes this task much simpler, so today there’s no real use of this option – it’s there for backwards compatibility.

The other one, Process only updated directories was also useful in the old times, when the subdirectories could work independently of each other or the common resurces from the top level’s “res” folder. Today the folders of the albums are much more interconnected, they always rely on the common resources (like the Javascript or CSS files), so once you update the album with this setting ON, those subfolders where nothing has changed might get broken. The tricky thing is they usually don’t get broken instantly. They usually show signs of malfunction only after a skin update, and by that time users usually don’t remember they’ve changed this setting. (Although a skin change renders these orphaned folders instantly unusable.)

Those skins rely on a database (JSON) are even more prone to break if you don’t let jAlbum to go through the whole folder tree.

jAlbum is intelligent enough, so once you have processed a folder it will not reprocess the images again, only the HTML files, which is really just a matter of seconds.

I hope I could convince you to keep these setting like the ones marked on this picture. See Settings → Advanced → General page.

2. Upload errors, manual FTP upload

When you work locally, everything works the same way, reproducible. The internet, however, is full of potential errors. When you upload a large album it might happen the connection between your PC and the server gets broken (IO ERROR), the server drops the connection (READ END DEAD) or jAlbum gives up on retrying (TIMEOUT). Don’t panic, this happens every now and then. jAlbum (just like anything on the internet) is prepared for such errors. All you have to do is Upload the album again. It will continue where it has left off, so don’t worry, it won’t upload everything all the time. If the upload fails, jAlbum will display a little triangle () in the lower right corner – you can click for the full log.

If uploads doesn’t play well with your server, you can switch to another FTP client and test (e.g. ftp4j). jalbum has two ftp clients for the standard “FTP” protocol, and three for “sFTP”. If you get frequent connection timeouts you might want to check also if your firewall (or internet security software) isn’t blocking jAlbum’s traffic. Check if jAlbum is allowed to communicate through port 21 (sFTP: 22).

With jAlbum you can use an external FTP (or sFTP) application too to upload albums. While jAlbum always knows which files it has changed, when you upload the files manually you often don’t. When the FTP app relies on file modification dates it’s not as reliable either. For example if you only add one new folder, you might think it’s enough to upload that folder only. That’s not true. The files always change in the root folder, the /res folder, and all the HTML and JSON files throughout the whole album after a Make. It’s hard to follow, much easier to leave this to jAlbum. And jAlbum’s built-in FTP client is really fast, believe me. It can manage 6 simultaneous uploads! So unless you’re fully aware of what you do, I suggest you to rely on jAlbum’s built-in Upload tool. You can choose from 5 different clients inside jAlbum, so hopefully you can find the one works the smoothest with your server.

3. Broken album in local preview

You only see one or two rows of thumbnails in albums made with Tiger or Photoblogger using the local preview? That’s because these skins are based on a database format (JSON), which is not recognized by browsers as internet files (like a HTML file), and in an attempt to hide local files from phishing attacks, they block access to these files. The easiest way to preview these albums is using jAlbum’s built-in browser. Firefox also works out of the box. If you prefer Chrome you can still allow “local file acces” using a command line option. Save this file to you desktop (Windows / Mac), and double-click it. Close all Chrome windows before! Do not visit untrusted pages in this mode! The hardest way is using a web server and generate albums right into the “www/albums” folder. Being a web designer I use this method, but simply for tesing albums it might not worth the effort, I admit.

4. Garbage instead of accented letters, missing icons

The internet has settled on using UTF-8 as a standard for international codepage support. Previously we’ve seen some cases where it didn’t work, e.g. in old Internet Explorers, using the local album, but today UTF-8 is ubiquitous, it will work locally in any browser, on any server being it Linux or MS. So I suggest keeping this option always on. The other option stemmed from the same old use patterns is Naming → URL-encode links which also better to be kept on, although it supposed to not break pages if left off. (Tiger skin turns these options on whatever you choose, because its database is always encoded with UTF-8, anyway.) Read more about character encoding problems in jAlbum’s Wiki.

If the wrong letters appear only in the headline font (Google fonts) – e.g. question marks –, it might happen the font doesn’t contain the required codepage. Tiger and Photoblogger try to load the fonts with the language set in Preferences → Language, but not all Google fonts have all the codepages. You can check if a particular font has the required codepage here.

If no icons appear in the album – Tiger or Photoblogger – it’s probably because the server is not properly configured, and it sends the icon font file as plain text instead of binary. You will need to add .woff files to the MIME types application/x-woff on your IIS (Azure) server or ask your hosting provider if you don’t have access to settings. Turning on Settings → Tiger → Site → Site admin → Use Microsoft IIS or Azure server configuration might help too. On Apache servers these files supposed to work out of the box.

5. Album, folder and file names with accented or special letters

In theory the UTF-8 encoding should take care of this, but it’s always been a struggle for a skin developer to make special/accented letters work in file- or foldernames. And even if the skin can handle them, there’s no guarantee that every connected service will, e.g. social sites or PayPal. So if you want to remain on the safe side, use plain album and folder names, and keep the original image file names. Naturally, you can use any character in the final album, it’s just about the file and folder names that must work on the server and on the visitor’s PC too. (Using non-ASCII characters in file and folder names makes the ZIP feature broken too, that is the file names will carry invalid letters after unzipping.) You should avoid these frequently used letters (besides the accented ones) for example: ' " & @ # ! $ / * + ( ) [ ]

When creating a new album use e.g. “Mary and Johns wedding” (spaces are fine), then go to Settings → General and change Album title to “Mary & John’s wedding” – this time only the visible title will change.

The same goes for folders too. Add a new folder with the icon using simple (web-safe) letters, then switch to Title view and provide the final title (and Comment for lengthier text). This time you’re free to use any letter. (In the comment HTML tags are also allowed.) Same is true for regular files.

6. Facebook Share problems

There is an ongoing battle between Facebook and the rest of the world behind the scenes. You only see that your Facebook share button doesn’t work as expected, e.g. shares only the index page, but not the individual images. On one hand it’s comprehensible Facebook wants to get rid of newsfeed manipulations, and let only static pages to be shared for this reason, on the other hand they make fully legitimate uses impossible (like sharing individual images of an album) fighting back the malicious use. Some years ago they let sharing – even internal stages of webb apps – through a simple link. They’ve changed the syntax every now and then, and finally they’ve made sharing possible only through their API (application interface). Now, after the latest update this summer they’ve removed the customization possibilities. So you can’t customize which photo, what title and description to share, only the meta tags from the static page will be taken into account.

If you want to use Facebook’s other features (the Box, Like or Commenting) you’ll need to own a Facebook page. A private account simply doesn’t work, as you can’t assign “Apps” to it. You will need to create a new App here (click “Add new App”), and provide your website’s URL. Don’t forget to make it “Live”! In order it work properly, you will also need to fill in the Settings → Tiger → Site admin → Upload path box, because Facebook can work only with absolute URL’s, and if this is not provided upfront, the skin can’t generate the proper links to album thumbnails for example.

If you want to check if everything is set all right, copy/paste the uploaded album’s URL here and click “Debug”. This tool is also useful if Facebook has cached some wrong data, and you would like to get rid of that. (Click “Scrape again”!)

7. “Ooops” instead of map

Google Maps requires a unique “API key” for every site since 06/2016. This is something I can understand, because anonymous use could easily lead to server overloads, and even to malicious attacks. Click the “Create new/Manage” link in Tiger’s user interface to create a new key, or get one you’ve already created before. They keep older maps – as they call – “grandfathered”, that is, you don’t have to provide the API key in those albums. The maps in new albums, however, will be grayed out if no API key is used. The same goes for local previews, as you can’t create an API key for local files, obviously.

8. Custom code or caption template mistakes

Modern skins allow you to add HTML code at several places and allow you to edit the caption templates too. This comes with some risks though. If you enter the wrong HTML code, the whole album might get broken. For example you need to close most HTML tags, (e.g. <div>... </div>) otherwise the code comes next will be nested into your code, resulting in broken layout. (The exceptions are <img> <hr> <br> <audio> <video> <iframe> <input> – the so-called “void-elements”.) Also note, modern skins are based on HTML5 standard, in which some tags are not allowed, like <center>, <font>, <frame>, etc. Read more here. Instead of them use inline styles, e.g.
<p style="text-align:center; font-size:1.2em;"></p>

Or even better, use CSS classes:
<p class="mycomment"></p>
... and add style definitions through the Settings → Tiger → Site → Custom code → CSS box:
.mycomment { text-align:center; font-size:1.2em; } (Don’t forget the dot “.” before the name!)

9. Broken Tiger or Photoblogger album after upload

Not all servers created equal. Some of them for example are not prepared for handling the required JSON files out of the box. Microsoft’s IIS or Azure servers for example. (You can check the server’s type here – look for “Server: ”.) If you have access to the server settings, you can make the required changes by yourself. Also, once you’re there you might want to check if every file type is properly defined. (IIS servers are famous for being poorly configured.) You need to Add or check the existence of the following MIME types:

ExtensionMIME type
.jsonapplication/json
.svgimage/svg+xml
.mp4video/mp4
.woffapplication/x-woff

Read here how.

If you don’t have access to the server settings, you might want to ask your hosting provider to add support for the types above.

You can also use Settings → Tiger → Site → Site admin → Use Microsoft IIS or Azure server configuration to ask the skin to create a web.config file in the album’s folder, which enables these types for the current album only. Make + Upload

If your server is Apache/Linux, and the album shows the “The album’s main database file is missing or broken!” error, then the server’s configuration is wrong or the server hasn’t been updated in the last century. Ask your hosting company to get things in order.

10. Turtle to Tiger transition woes

Moving Turtle albums to Tiger skin is most of the time a painless process, but there are some things you need to be aware:

1. No separate slides mode exist in Tiger. Tiger albums are based on a database, which makes it easy to reach any photo from any page of the album. And this database would be gross (time consuming) to load on every slide page. Just like quitting Excel and opening every time you change cells. I see though not everybody will like this, because they’ve built albums with individual photos, linked or shared through social sites, let indexed by Google one-by-one. In this case it’s better to keep with Turtle in my opinion.

2. Although Tiger tries to import as many settings from Turtle albums as can, they might not fit with Tiger’s layout as good as with Turtle’s. I suggest looking through the following settings and set to Tiger defaults:

SettingTurtleTigerComment
Images / Image bounds / Thumbnails200x150240x180 Tiger needs slightly larger thumbnails
Advanced / General / Write UTF-8-ON mandatory
Advanced / Naming / URL-encode links-ON mandatory
Tiger / Header / Top bar / Use search-ON suggested
Tiger / Header / Hero / Folder titletopLeft bottomSelect "Left top" for Turtle look
Tiger / Header / Hero / ${folderModDate}-Camera date range Select "None" if no dates needed
Tiger / Sections / Folders / Folder columns43Folders Look better with less columns
Tiger / Sections / Images / Thumbnail columns45suggested
Tiger / Sections / Images / Place captionsAs tooltipBelowTooltips aren’t mobile-friendly
Tiger / Sections / Images / Caption template-suggested
Tiger / Lightbox / Photo data-Press “Reset to defaults”will provide more and better photo data

That’s it for now. Write in the comments if you feel something has left out.

Sign in to post
Add your comment
Post comment
gvmelle

gvmelle 13 zile în urmă

Laca:: I use Turtle and will keep your suggestions in mind concerning the skin updates. I don't use the "Search" feature.
Thanks.

Laca Molnar

Laca Molnar 13 zile în urmă

gvmelle: That's huge. There are skins that tolerate this settings better, but some fails. Mostly those that use JSON files (Photoblogger, Tiger), and Turtle also if you are using the "Search" feature. Also, after every skin update you need to re-make all the HTML files, because the global "res" files might bring changes that make the subfolders broken if they left from the older version.

gvmelle

gvmelle 14 zile în urmă

Laca:: nog to worry, it was a leftover setting: advanced video setting tagged, although none chosen. So my mistake.
But tagging “process only updated subdirectories” is for me the best option. To avoid unchaining other subdirectories I always change a comment in the nabouring directory. If I untag this, 12000 html are made anew and have to be ftp-ed to my website. After that I sync the webalbum to a usbstick and that takes also an hour. So I stick to the “process only updated subdirectories” when possible.

Laca Molnar

Laca Molnar 14 zile în urmă

gvmelle: jAlbum should not reprocess videos provided the source files hasn't changed, and you haven't changed the settings either. If jAlbum reprocesses them unnecessarily, it would be great if you could send us a bug report to support@jalbum.net so we can fix it.

gvmelle

gvmelle 14 zile în urmă

-"jAlbum is intelligent enough, so once you have processed a folder it will not reprocess the images again, only the HTML files, which is really just a matter of seconds."

So how to make jAlbum smart enough to NOT reprocess my video-files over and over again???

RobM

RobM 16 zile în urmă

10, Turtle to Tiger (or any skin change)
If your album has page templates they will need to be updated after changing skins, see how to do this easily at http://jalbum.net/forum/thread.jspa?threadID=5 2475&tstart=0

Laca Molnar

Laca Molnar acum o lună

Thanks! Can't they be closed like <audio src="" /> ?

jGromit

jGromit acum o lună

The <video>, <audio>, and <iframe> tags all require closing tags. Otherwise, they regard everything that follows them as "alternate content" for browsers that don't support those tags.