Zoph v0.9.16 came out at the end of last year and I planned to release v0.9.17 on the first of April. However, I had quite a few things that were 'nearly' done at that time so I gave myself an extra month to finish those and still have some time to test it properly. This has resulted in a release with a lot of changes. I've extended the XMP feature with the possibility to load the XMP-data from a 'sidecar' file. This means that the XMP data for, for example IMAGE_001.JPG is stored in IMAGE_001.JPG.XMP, giving you the possibility to store information about your photos without actually modifying the file itself. The Zoph CLI `zoph` can now be used to create and display users. This can be handy to script Zoph installations or modifications. It was requested for the inclusion of Zoph in FreedomBox, a project aiming to create a home server appliance that can be used by non-technical users. Check out their demo if you want to know more. (Unfortunately, at this moment, Zoph is visible there, but not yet installable). Zoph now allows the use of the '-' character as part of the path where photos are stored. Zoph stored the date and time a photo was taken (from EXIF data) and when it was last edited. However, as soon as a photo was edited at for the first time, the date and time a photo was imported was lost. As of this version, this data is stored, this will enable something like "recently imported" overviews in the future. During the change, the last edited date/time is stored as the 'imported' time, for all new photos imported as of the version, the 'real' import date will be stored. Zoph has had a possibility to create an 'annotated' version of a photo for a long time. This would enable you to create a photo where some data of the photo would be added to a text block at the bottom of the photo, mostly when mailing a photo. The result looks rather dated and doesn't really have a good use case. I highly doubt anyone uses it, so I've decided to deprecate the function and remove it in the next version. If you have this feature enabled, Zoph will warn you. If you actually use this feature, please let me know in Issue #150 Furtermore, a few bugs have been fixed and, invisible to most, a lot of work has been done in the 'background'. The ongoing project of moving all Zoph's frontend (HTML) code to separate templates has made a number of changes. I've also done work on unittests, tests used to automatically run hundreds of tests on Zoph's source code after every change. Finally, Leaflet, the library used add maps to the user interface, has been updated to the latest version. Unfortunately, due to changed licence terms from Google, I have had to remove Google Maps support. The full changelog can be found in the changelog. You can download Zoph from the Gitlab site.
Just before the end of the year, a new Zoph release. I've been quite busy with a handful of new features, several bugfixes and a lot of internal changes. I've added some more XMP-support, Zoph can now read the rating from a photo and XMP support has also been added to the CLI import. This continues to be a work in progress and if there's anything you'd like to see in this regard, please do not hesitate to contact me. The full changelog can be found in the changelog. You can download Zoph from the Gitlab site.
This release fixes a few bugs, finalizes the update of the slideshow, bringing back the navigation buttons and added 'swiping' to aid into optimizing the working on touch devices. I've also started on a request that has been outstanding for a very long time: adding XMP support to Zoph, to aid into interworking with other applications. It's very basic now, please see XMP in the documentation. If you are planning on using this in your workflow, please let me know what you're missing! The full changelog can be found in the changelog. You can download Zoph from the Gitlab site.
This release mainly fixed a handful of minor bugs, introduced with the changes in the previous release. I also improved the way you can manage Zoph's configuration via the CLI, this could come in handy if you'd like to automate changes or have made a mistake that causes not te be able to logon anymore. Part of this was already there, just never documented. It is now. I also did some work on the long running project to move all HTML code out of the source code and into templates. The full changelog can be found in the changelog. You can download Zoph from the Gitlab site.
I have not yet managed to get back to my planned 6 week interval between releases, but at least it hasn't been a year since the last release. This release adds a few new features and fixes a few bugs. For the feature changes, I have also refactored the code somewhat to modernize Zoph's code and besided that, many more lines of code are now covered by unittests, which should have a positive impact on Zoph's stability. Zoph can now use external authentication by using REMOTE_USER authentication, this can be used to build a single signon system, where a front end performs the authentication and Zoph trusts the external authenication and logs the user in without presenting the logon screen. Obviously, this feature is off by default and you should only turn it on if you are aware of the consequences and trust the third party authenticator. This feature was requested to enable integration into FreedomBox. Anyone who has photos in their Zoph database with more than just a handful of people on it, knew that Zoph was limited on this point. This release enables you to specify rows of people on a photo and a much improved way to edit the order of people on a photo. This should make organizing photos with lots of people on it much easier. Finally, I updated leaflet and mapbox, which are used to display maps in Zoph to the most recent version. The new version can be dowloaded from the releases page on gitlab.
New slideshow and bugfixes After almost a year, I finally managed to find some time to wrap up a new Zoph release. I've completely rebuilt the slideshow feature to make it more modern and feature rich. It's not yet complete, check Issue#124 if you have ideas on how to improve it or if you run into unexpected results, maybe on some devices. The new slideshow features a full-screen mode and briefly shows the data of the photo superimposed on it. Let me know what you think via Issue#124! I also fixed a few bugs, among others, making Zoph compatible with PHP 7.4 and a few bugs with the lightbox feature. The new version can be dowloaded from the releases page on gitlab.
A release with only minor fixes this time. I worked on the oldest open issue for Zoph, Issue #8. This issue is about using templates to determine the looks of Zoph. The issue has been open for years and it turns out to be a lot of work. But we're one step closer with this release. Furthermore, a couple of minor fixes, see the changelog for that. The new version can be dowloaded from the releases page on gitlab.
Here is the latest release of Zoph. For those who had hoped for a v1.0 after v0.9.9... I have to disappoint you as it has become v0.9.10. I still think Zoph is not ready to be v1.0 but we're moving closer and closer. This version brings two new features, both of which were ideas from John Lines, one of them was even partly implemented by him. Thanks John! The first new feature is the so called "location lookup". Sometimes, if you want to add a location to a photo or place, you may have looked it up through another site first, or there is already another photo or place at this location in Zoph. Wouldn't it be convenient if you could just copy and paste the results from the other site into Zoph? That's exactly what John thought and he implemented this for GPS coordinates and Open Street Map URLs. I've made some updates and added Open Location Codes ("Pluscodes") and the possibility to paste Zoph URLs. John Lines also requested a change to the calendar page. He asked whether it would be possible to remove the links to the pages that have no photos. Anyone who has ever used the calender view in Zoph probably agrees that this was a good idea. Since the whole calendar page was a little bit outdated, I decided to implement his feature with some extras, I've added a more modern look, in line with how the other pages in Zoph look, and a random picture from each day as a thumbnail. Furthermore, a bug was fixed and I removed some old code, that was needed to make a smooth switchover from the old password checking mechanism to a new one. Any user that has nog logged in to Zoph since you upgraded to v0.9.3, will no longer be able to do so. It is easily fixed by resetting their password as an admin user.
Zoph's site has been completely rebuild and redesigned It is now hosted at Gitlab. In 2009, I gave Zoph a new site. This site was hosted on Sourceforge servers, at the time Zoph's home. In almost 10 years that passed, Zoph has relocated twice, first to Github and recently to Gitlab. The site used Concrete5 as it's CMS and unfortunately, with the switch from version 7 to version 8, they made the, in my opinion, grave mistake to drop backwards compatibility. This meant that I needed to re-build the site from scratch. Since I wanted to switch to Github's hosting, which did (and does) not support full-blown CMS's, I figured that if I needed to rebuild the site anyway, I could do it in an environment that is supported by GitHub. The project took ages to finish (I think I started it about 5 years ago!) and in the meantime I had switched to GitLab. Fortunately, I could use the same setup on GitLab Pages. GitHub and GitLab pages are build around Static Site Generators. I chose to use Jekyll as my SSG. I chose the Agency theme as a basis for the Zoph site, but modified it highly to fit my needs.
It's been a long time since the last Zoph release. A lot has happened in between, Zoph has moved from Github to Gitlab and a lot of changes have been made to Zoph. Most of the changes are so called 'refactoring': changes to the code that do not change the functionality, so you shouldn't see anything of it. Many of these changes are necessary to keep Zoph's code up to date with current PHP best practices. Also, there is the long-running change to make Zoph's look fully managed by templates. In this release, I changed more parts of Zoph to use templates, instead of embedded HTML. There's one exception to the "no functionality changes": I dropped the possibility to redirect zoph back and forth between http and https. When this code was added, 12 years ago, many home-servers were not powerful enough to handle large photos over an SSL session, so Zoph included a system where you would logon via SSL and then redirect back to plain http. Nowadays webservers can easily handle the filesizes and this code only adds unnecessary complexion, so I removed it. Several bugs were fixed in this version, but none of them very major.
I have moved all Zoph's documentation to Github. About 12 years ago, Zoph's documentation was hand-crafted HTML that was an ordeal to keep updated. I moved it to Wikibooks so I could update the docs through their webinterface. Nowadays, Github offers 'markdown' which is a text format that is both readable in plain text and can be rendered to a more pleasing look on the website. I was already keeping some documentation in this format and it caused a lot of extra work, because I was essentially maintaining two sets of documentation. So, as of this release, all documentation is back in one place: Zoph's repository on GithubFurthermore, quite a few bugfixes have been been made. Most of them related to the rewrite of the search page in the previous version.
I have had a very busy year and little time to spend on Zoph, but last december, I finally found time to finish what I had originally planned for 0.9.6: a complete rewrite of the search screen and the search engine. Most of the code in that part of Zoph was over 10 years old and had become quite messy over the years. The search engine is really the core of Zoph: if you open an album in Zoph, under the hood, Zoph really executes a search for all the photos in that album. This makes this code really important and I've made sure to cover all this by automated tests (UnitTests) before making any changes. Besides that, a few minor bugfixes. You can download the new release from Github.
Zoph 0.9.6 is a release that contains mostly bugfixes. Shortly after the release I received several reports about SQL-errors I could not reproduce on my system. After investigating, it turned out to be a change in MySQL 5.7.4 that caused troubles, not only for Zoph, but many other Open Source projects had similar issues. Since the change had only been made in Oracle's MySQL and not in the MariaDB fork, that I am using. It took quite some effort to locate all the places in Zoph that were violating MySQL's "new rules" and to fix the problems. @Raysir has been an invaluable help in testing the changes and pointing out more problems that needed fixes. Since Zoph was not the only project facing these problems, MySQL has reverted most of the changes in question as of MySQL 5.7.8. Since the changes were actually improvements notwithstanding the fact that they are not really needed anymore, I am not reverting them. @Pontusfroding has found and fixed several other bugs. Big thanks to him for that! Because of the time it took to fix the bugs,I decided against releasing an interim bugfix release, but just release this in the normal release schedule. Of course this means that the changed originally planned for 0.9.6 have now shifted to 0.9.7.
I have just published v0.9.5 of Zoph to the GitHub site. Zoph now uses Leaflet for mapping, instead of the abandonned Mapstraction library. You can now choose between Google Maps and OpenStreetMaps as your mapping provider and I've also added MapBox, which uses OpenStreetMap, but has a lot of possiblities to alter the looks of the maps. You will have to request a (free) API code with MapBox if you want to use the advanced features. For the basic features you can use Zoph's (preconfigured) API code. Another new feature is the ability to choose access permissions from the album edit screen instead of the group edit screen. This makes it possible to add an album and then immediately assign rights to it, instead of having to go through all the different groups one by one to give them rights. This will be a huge timesaver for anyone who uses the album permissions feature. Lots of other changes have been made, mostly in the background. For more details, see the changelog. To download Zoph, please go to the download page on Github.
Due to holidays a little later than the planned 10 week release interval, but nevertheless I'm proud to present the next release of Zoph: v0.9.4. Zoph 0.9.4 is the new stable release. It is recommended for everyone to upgrade to this release. Several changes have been made in this release, the most notable include: Unfortunately, I had to drop support for Yahoo and Cloudmade for mapping because their mapping service is no longer available for the public. I have also removed Openlayers mapping, because the implementation Zoph uses (Mapstraction) is no longer maintained and didn't work correctly anymore. For now, this leaves only Google Maps. In the next version, Mapstraction will be replaced by - as it currently looks - Leaflet. When using the Geocoding feature, Zoph now also searches Wikipedia. I have cleaned out Zoph's CSS and added some small changes here and there to give it a slightly modernized look. Several new colour schemes have been added: Did you know you can easily modify the colour schemes yourself? As of this version it's even easier, because now you can simply select the colours from a palette, instead of typing the HTML-codes. As of this version, it is possible to configure Zoph in such a way that whenever a new subalbum is added to an existing album, the new album automatically inherits the access rights. For some Zoph users this could prevent a lot of work. This is configurable per album. Also, the admin user can configure a set of default prefences that will automatically be applied to new Zoph users, this could also be a time-safer! Finally, it is now possible to have Zoph move the physical files into a predefined "Trash" folder when deleting them from Zoph. A lot more changes have been made, please see the download page on Github for a full changelog.
Much faster than you might have expected, I have released v0.9.3. The previous release took over 2 years to create and I decided to change the way I work on Zoph a little bit. I used to create a long list of changes I would like to incorporate in Zoph and finish all of them before releasing. I now work with a time schedule of about two months and finish whatever I can in that time frame, then take about 2 weeks for some extra quality control and release after that. This should result in a release interval of about 10 weeks. Zoph 0.9.3 is the new stable release. It is recommended for everyone to upgrade to this release Despite the relative short period of time since the previous release, quite a number of changes have been made to Zoph: Features Issue #72 Zoph now has a new logon screen. The logon screen has background photos. Two of them are already included in Zoph. You can place your own backgrounds in templates/default/images/backgrounds. Or, you can (on the config screen) define an album from which the images will be used as background images. Zoph will display a random image as background. Issue #76 The logon screen now gives a message about the username and/or password being wrong instead of just returning to the same screen Issue #75 Zoph now uses PHP's password hashing algorithm instead of MySQL's. This includes a random 'salt' added to each password. This will make it much, much harder to decrypt your passwords, if your database would ever fall into the wrong hands. The old hashes will be updated with the new ones as soon the the user logs in. Zoph will continue to support the old password hashes at least until v0.9.5. Issue #26 It is now possible to define the cookie expirement time. In previous versions of Zoph, a user would be logged out when closing the browser. Is now possible to extend the time to 1 hour, 4 hours, 8 hours, 1 day, 1 week or 1 month. This means a user will not need to re-login for that period of time, even when the browser is closed in the mean time. This can be very convenient, but it could mean that a user leaves Zoph logged in on a public PC. Therefore, the default is still 'session', which means a user will be logged out when closing the browser. It is now possible to give a user "can see all photos" access rights. This means you can give a user access to all photos, without giving him/her admin rights and without having to update user rights whenever an album is added. Issue #22 It is now possible to allow a user to create albums, categories, people, circles and places. The user automatically has access rights to place photos in the albums, categories, people, circles and places he or she has created. Issue #21 It is now possible to allow a user to delete photos. The user will have to have "write" access to at least one album a photo is in. Bugs Issue #73 Fixed sharing feature Issue #74 Fixed Canadian English, Dutch and German translation files For a full overview of the changes see the changelog. Zoph 0.9.3 can be downloaded from Github.
It has taken a while. It has been more than two years since the previous Zoph release. But, here it is, the new version of Zoph. v0.9.2. It has taken a lot of work. Literally 1000s of lines of code have been changed, added or deleted. The most important change was driven by a major change in PHP, the language Zoph is written in. The driver Zoph was using to connect to the database was declared deprecated as of PHP v5.5 and has been removed in PHP v7.0. I could have simply removed the references to the old functions and replaced them by PDO calls, but I decided I wanted to make optimal use of the new driver and wrote a complete new database subsystem and query builder for Zoph. This required changes, literally, all over Zoph. This was a major thread for the stability of Zoph, because many of the database queries only get executed in very specific situations. So, another thing I did, was creating automatic tests (unittests) for Zoph, making sure that every query was being executed and it's results tested, before I changed it to the new database subsystem. As said, a lot of work and the better part of two years to finish this. Of course this is all behind the scenes and should be invisible for you as a user. Furthermore, I implemented a few changes requested through the issues page on Github: Issue #44: Added 'circles': a way to group people in Zoph. This is especially handy if you have a large amount of people in your Zoph, and the 'person' page is becoming confusing or cluttered. Issue #46: A circle and it's members can be surpressed in the overview page, so you can, for example, hide people that you added only for a small set of photos. Issue #32: It is now possible to set more properties of a photo, including map zoom from the web import. Issue #60: The link text for "next" and "previous" as well as page numbers has been increased in size for better usability esp. on mobile devices Besides these improvements, numerous bugs have been fixed. A full overview can be found in the changelog. Contrary to previous 0.x.y releases, Zoph 0.9.2 should be considered a stable release. I have decided to drop the separation between stable and unstable or feature releases. This means every user of Zoph is encouraged to upgrade to this version. Last, but not least, Jason Taylor has recently joined the Zoph development team. In this release, he has helped me testing and fixed several bugs. He also added a few features. I'm sure you will see more contributions by his hand in the next release (which is supposed to come out a lot earlier than 2018...) If you are a new user of Zoph, you can find requirements and installation instructions in the Wikibooks documentation, where current users of Zoph can find upgrade instructions as well.
Zoph 0.9 and 0.9.0.1 were released in 2012, so it is about time a new release sees the light! A lot of work has been put into this new release, even though it has only one major feature added. As of Zoph 0.9.1, almost all of the configuration options in config.inc.php have been replaced by a user-friendly web GUI.Besides, that, it's only small features I have added or modified. See the changelog for more details. But, there is more, I have also worked hard to modernize Zoph's code. A proces that I have started several years ago and that will continue for some time. Slowly, I am modifying Zoph's code to meet today's standards of coding. To prevent that process from causing too many bugs, I am doing that one step at a time. As a part of that process, I have started to create automatic tests that will automatically run parts of Zoph and check if the code returns the expected results. As of now, about 20% of Zoph's code is automatically tested. The majority of the work for this release has been these modernizations of Zoph, something you will not (should not) notice when you install this software, however, in the long run, this should lead to less bugs and easier development of new features. Zoph 0.9.1 is a feature release, this means that it is meant as a preview of the next stable release, which will be v0.10. That means that Zoph 0.9.1 is not a stable release. Having said that, I have been running development versions of v0.9.1 on my system for several months now, so the rough edges have been shaved off by now. The new version can be downloaded for Sourceforge: zoph-0.9.1.tar.gz.
Four months ago, Zoph 0.9 was released. During that time a few bugs were reported, this release includes the fixes for all known bugs. It is therefore recommended for everyone to upgrade to this version. The most important fixes are PHP 5.4 and MySQL 5.4.4 compatibility. You can still use Zoph with PHP 5.3 and older MySQL versions. PHP 5.2 and older are no longer supported. Other fixes include some PHP warnings that would display in a few cases, fixes for the geotagging function that broke down in v0.9 and some layout fixes. For full details on the changes, check out the changelog. To, check out the upgrade instructions. If you find any bugs in this version, please report them as Github Issue. You can report requests for enhancements there as well. For other support, you'd best go to the Zoph forums.
Every open source project needs a place where it can store and publish it's source code. For Zoph this has been CVS, hosted by Sourceforge for the past 10 years. A few years ago, Linus Torvards wrote Git to maintain the Linux Kernel sources and since then a lot of open source projects have switched to Git. Github offers free Git hosting for open source projects along with some tools to efficiently manage a project. Github is very much focused on interaction and makes it very easy to fork a project, to make your own changes in that fork and once those changes are ready for the world, to invite the original project to "pull" your changes into the official branch. As of today, Zoph's sourcecode is hosted on https://github.com/jeroenrnl/zoph and issues (bugs and feature requests) can be logged on https://github.com/jeroenrnl/zoph/issues, I have already created issues for every open bug and feature request on Sourceforge. I will still keep using Sourceforge to host releases and this homepage, but I will use Github for development from now on. I am inviting everyone to fork me on github.
Yesterday, I released Zoph v0.9. Today, I did what I always do the day after a new release, searching Google for "zoph 0.9" to see if there are any reactions to it. To my surprise, I found someone claiming to have found some security issues in Zoph 0.9pre2. Searching a little more, I found that this accusation had been taken over by several sites, but I was never informed. I am a big fan of "Full Disclosure", however, Full Disclosure also means that the person who finds the problem first reports it to the author, giving him a reasonable time to fix it and full disclose after the fix has been published. In this case, I have not been informed at all. Of course I have immediately tested the alleged vulnerabilities against Zoph. And none of them work. Some "Proof of Concept" scripts even contained mistakes that caused the script not to work at all and even after fixing these mistakes, they did not work. Moreover, I tested the scripts while logged in to Zoph as an admin user and even then they did not work. In short, these so-called security issues are only a pathetic attempt for some attention. Unfortunately, many sites just copy this information without checking. If you do find a real security problem in Zoph, please contact me and we can work together to fix the problem and I will (of course) give you the credits for finding the problem.
Zoph 0.9 has been released. It can be downloaded from Sourceforge. The only difference compared to the pre-release, Zoph 0.9pre2, that was released in February, is the Italian translation, which has been updated by Francesco Ciattaglia. Compared to the previous stable release, Zoph 0.8.0.5, a lot has changed: New features The way debugging is done has changed, instead of the "old" DEBUG setting, there are now 3 settings that can be used to give very granular control over which debugging messages are shown. You can read more about that in the documentation. The way Zoph handles character sets has been changed. The solution Zoph used prior to this version was to specify a character set per language, for example, Italian used iso-8859-1 and Turkish used iso-8859-9. This caused a lot of troubles for people using "special" characters in for example album names or locations. As of Zoph 0.8.1, all languages use UTF-8. In order to make this change you need to convert your database to UTF-8. You can read in this document how to do that. The import system has been completely rewritten. Both the web interface and the CLI interface have been redesigned and almost completely rewritten from scratch. The web import system has been the number one cause for problems for many Zoph users. Many users had issues with PHP timers running out and Zoph did not give proper feedback when things went wrong. Also, usability and user-friendliness were outdated. The new web import looks much more up to date than the old one and is based on templates instead of hard coded HTML. You can now upload multiple photos simultaneously and while they are uploading, upload progress is shown. Zoph no longer tries to resize all photos at the same time, which caused PHP time-outs for a lot of people. Zoph now resizes photos 1 by 1. Upload and import have been separated, you can now upload multiple photos and then import them separately, so you can set albums and categories different, for example. The old web import allowed only one album and category, now multiple albums and categories during import. For some reason it was never possible to add people to photos from the import screen, this has been corrected. Preview images of what you have uploaded are shown before your import them. You can now add albums, categories, persons and places from the commandline, manually with the --new CLI option or automatically with --autoadd. Zoph now supports recursive import: instead of giving a long list of files, you can import a whole directory. With --dirpattern you can even have Zoph organize photos based on the input directory name. Zoph now reads lat/lon data from EXIF and can automatically rotate images based on EXIF tags. The CLI (command line) import utility (zophImport.pl) worked ok for most people, but had one big problem: it was written in Perl and not in PHP, like the rest of Zoph. This caused a lot of development effort every time something needed to be changed in the import system: everything needed to be written twice. A new CLI utility, simply called 'zoph' is introduced in this version. This has been written in PHP, just like the rest of Zoph. Geotagging allows you to use a GPS-tracker to create a track of where you were, because these devices do not only register where you were, but also when you were there. Since your digital camera also registers when a photo was taken, you can now determine exactly where a photo was taken. Of course you will need a program that can make the match for you and now Zoph is one of those programs. Once your photo database starts to grow, and you have many photos on which you have set a location, you may want to search for these locations as well. This version adds a new search option to the search page; you can now point on the map and search for photos taking within a certain distance from that point. Even if you do not have GPS tracker, you may want to record where your photos were taken. This has been possible since the first version of Zoph, adding a map in v0.7.3. However, when adding a new location, it was often a lot of work to find that specific location on the map. Zoph can now use the Geonames project to find a location by name. Even if the specific location can not be found, it can often zoom in to the city or region, saving you a lot of mouseclicks. Another timesaver is a small change to Zoph's behaviour, if you have set the lat/lon on a place and then add a 'child' to that place, it will already zoom in to the parent's location, often saving you many mouseclicks. It does the same when editing a photo that has no lat/lon set, but does have a location assigned with lat/lon information. A popup has been added to the thumbnail view of albums, categories, places and people that will show you some information about what is in that album. A 'share this photo' feature has been added, that will allow you to (selectively) share photo's with other users without logging in to Zoph. The 'edit photo' and 'bulk edit photo' now automatically add a new dropdown menu whenever you add an album, category or person. The 'people slots' feature that implemented a part of this functionality for people only, but was less flexible, has been removed. Performance The bulk edit page allows you to make changes to many photos at the same time. With many photos, this page now loads over 20 times faster. The SQL queries that Zoph used for the 'show tracks' page were slow and not cachable. The first time this page is opened, it loads about 10x faster than previously, each consequitive time, it's even 50 to 100 times faster, thanks to database caching. Refactoring As you may know, Zoph has been around for over 10 years. This means that the first lines of code were written in the era of PHP3. I have started to update Zoph's code to be in line with current best practices of PHP programming. This is a process that will continue over the next releases. Stable This release is the result of two and a half year of development. In this time several feature releases and prereleases have been published. Since many people have used these releases and reported bugs back, this release should be free of problems. It's recommended for everybody to upgrade to this release. Details on how to upgrade can be found in Upgrading. If you are creating a new Zoph installation, you should read Installation. Full details about all the changes can be found in the Changelog.
It's been a long time since the release of Zoph 0.9pre2, way too long. I have been busy with a lot of things outside Zoph and since no bugs have been found since that release, I've not really had any presure to work on it. Anyway, I am trying to get a release out in a few days and as a preparation, I have updated the site to the latest version of Concrete5, the Content Management System this site uses. In the process, I have also slightly modified the theme, removing the images used as transparent backgrounds and replacing them with CSS3-gradients. It should work in all modern browsers, please let me know if you run into problems.
It's been almost 3 months since Zoph 0.9pre1 has been released, a lot longer than I anticipated but I have been busy... Two bugs were found in Zoph 0.9pre1 and they have been fixed in this release. See the changelog for more details. Anyone running v0.9pre2 is recommended to upgrade to this version. Please report any bugs you find, so I can fix them in the next release. To upgrade, please read the upgrade instructions.
Zoph v0.9 is almost done. Since the v0.8.4 release, I've worked on killing some bugs and dealing with PHP warning messages. The work seems to be done now. Just like with previous stable releases, I am starting with one or more pre-releases, just to make sure the final v0.9 release will be as bug-free as possible. This is the first one. As from now, I will release a new pre-release every two or three weeks until two or three weeks pass without any reported bugs. Obviously each pre-release will have the previously found bugs resolved. No other changes will be made until the v0.9 release, except for translation updates. changes Compared to the v0.8.4 release, a couple of bugs were resolved. The "share this photo feature", that was introduced in v0.8.4 had some problems. The changes in album, category, location and person selection in v0.8.4 had also caused some bugs, it wasn't possible to remove a photo from an album or category anymore. The newly introduced popup in thumbnail-view didn't always disappear when you'd move your mouse away from the album or category. Another thing I've been working on throughout the v0.8.x releases, is PHP warning messages. PHP gives warnings about situations that are not an error, but aren't 100% correct either. Zoph was full of them. Fortunately, most default PHP installations are configured to hide them, but every now and then I got a report from someone who was seeing them. When I started the v0.9 development, about 2 years ago, I decided that one of the development goals for v0.9 should be getting rid of them. Throughout the various feature releases I resolved most of them, but a few were still left. They should be all gone now. There is one notable exception: the search page. The search page is still full of warnings and the code is, frankly, a mess. I was pretty sure trying to resolve all the warnings would introduce a range of bugs, something I didn't want to do so close to a stable release. In the v0.10 release, I will completely rewrite the search page and the backend search so I will take care of that in the near future. For more details, see the changelog. stable / unstable v0.9pre1 is a beta release, that may have some sharp edges, so if you're looking for a solution that just works, you could probably best stay with the current stable release (v0.8.0.5). (On the other hand, I have been using various stages of development between v0.8.4 and this version on my own photo-album, with little problems but the now resolved bugs.) If you are willing to help out ironing the last few wrinkles, please consider downloading this version and reporting any problems you find. documentation Documentation is available as a wikibook, which includes information about installing, configuring, using, upgrading and a full changelog. download This release can be downloaded from the Sourceforge file release system: Zoph v0.9pre1.
Today, exactly 2 years after v0.8, I have posted a new Zoph release to the Sourceforge site. Version 0.8.4 is the fourth and last prerelease for v0.9. No more new features will be added to v0.9. This version features many small improvements compared to the 0.8.3 release from april this year. Several features have been added to the new CLI client, that was introduced in v0.8.1 and everal usability improvements have been made. New features A popup has been added to the thumbnail view of albums, categories, places and people that will show you some information about what is in that album. A 'share this photo' feature has been added, that will allow you to (selectively) share photo's with other users without logging in to Zoph. The 'edit photo' and 'bulk edit photo' now automatically add a new dropdown menu whenever you add an album, category or person, similar to the way the webimport already did this since v0.8.1. The 'people slots' feature that implemented a part of this functionality for people only, but was less flexible, has been removed. CLI Client The zophImport.pl CLI client was replaced by zoph in v0.8.1. This release adds new functionality to the zoph CLI client. You can now add albums, categories, persons and places from the commandline, manually with the --new CLI option or automatically with --autoadd. Zoph now supports recursive import: instead of giving a long list of files, you can import a whole directory. With --dirpattern you can even have Zoph organize photos based on the input directory name. Performance The bulk edit page allows you to make changes to many photos at the same time. With many photos, this page now loads over 20 times faster. The SQL queries that Zoph used for the 'show tracks' page were slow and not cachable. In v0.8.4, the first time this page is opened, it loads about 10x faster than in v0.8.3, each consequitive time, it's even 50 to 100 times faster, thanks to database caching. refactoring As you may know, Zoph has been around for over 10 years. This means that the first lines of code were written in the era of PHP3. I have started to update Zoph's code to be in line with current best practices of PHP programming. This is a process that will continue over the next releases. documentation and changelog Documentation is available as a wikibook, which includes information about installing, configuring, using, upgrading and a full changelog. downloading You can download Zoph from the Sourceforge page. Keep in mind, however, that this is a beta release. I have tested this version thoroughly and there are no known issues at this time but some rough edges may still be present. If you do not feel comfortable with that, you can download the latest stable release, v0.8.0.5. But, Zoph cannot do without the brave users that test these prereleases, and help me find the last few bugs so v0.9 will be even better. version 0.9 As mentionned before, this is the last feature release for v0.9, so no new features will be added anymore. Of course any bugs that will be reported will be solved before v0.9. The new features have also added quite a few text labels to Zoph and many of them have not been translated. It would be nice if v0.9 could have a large proportion of the translations up to date. So, if you are more-or-less fluent in one of the incomplete languages, I can use your help. Check the translations page for the 'missing strings'. support + contact If you have problems when installing or using Zoph, please post a message to the forum, if you are sure the problem you have is caused by a bug, please report it. You can follow Zoph on Facebook and Twitter.
I have been using Twitter for some time now and found that it can be quite handy to stay up to date with all kinds of information. So, I have now also registered a Twitter account for Zoph, @zoph_org, follow me if you want!
Zoph 0.8.3 has been released. This is the third feature release for v0.9. Most of the improvements in this version are related to mapping. The most important new feature is "geotagging". Geotagging allows you to use a GPS-tracker to create a track of where you were, because these devices do not only register where you were, but also when you were there. Since your digital camera also registers when a photo was taken, you can now determine exactly where a photo was taken. Of course you will need a program that can make the match for you and as of v0.8.3, Zoph is one of those programs. Once your photo database starts to grow, and you have many photos on which you have set a location, you may want to search for these locations as well. This version adds a new search option to the search page; you can now point on the map and search for photos taking within a certain distance from that point. Even if you do not have GPS tracker, you may want to record where your photos were taken. This has been possible since the first version of Zoph, adding a map in v0.7.3. However, when adding a new location, it was often a lot of work to find that specific location on the map. Zoph can now use the Geonames project to find a location by name. Even if the specific location can not be found, it can often zoom in to the city or region, saving you a lot of moseclicks. Another timesaver is a small change to Zoph's behaviour, if you have set the lat/lon on a place and then add a 'child' to that place, it will already zoom in to the parent's location, often saving you many mouseclicks. It does the same when editing a photo that has no lat/lon set, but does have a location assigned with lat/lon information. Furthermore, several bugs have been fixed. There are no known bugs in this release. However, this is a pre-release, and should be considered beta. You can download both Zoph 0.8.3 from the Sourceforge site.
I have just uploaded Zoph v0.8.2.1 to the Sourceforge site. It is a bugfix release for v0.8.2, that was released a month ago. This release fixes 9 bugs, mostly in the new CLI tool. No new features have been added. For a complete list of all changes see the changelog in the Zoph Wikibook. You can download the new release from Sourceforge.
I have created two new releases for Zoph. The first one is a bug fix release for the stable 0.8 branch. This release fixes six bugs that are not very serious, but could be very annoying. All currently known bugs have been fixed in this release. If you are running a v0.8 or v0.8.0.x release, it is recommended to upgrade to this release. The other release is Zoph 0.8.2, which is a feature release that offers a preview on the new features for Zoph 0.9. This release introduces a completely rewritten import system. Both the web interface and the CLI interface have been redesigned and almost completely rewritten from scratch. This release is the result of 9 months of development. The web import system has been the number one cause for problems for many Zoph users. Many users had issues with PHP timers running out and Zoph did not give proper feedback when things went wrong. Also, usability and user-friendliness were outdated. The new web import looks much more up to date than the old one and is based on templates instead of hard coded HTML. You can now upload multiple photos simultaneously and while they are uploading, upload progress is shown. Zoph no longer tries to resize all photos at the same time, which caused PHP time-outs for a lot of people. Zoph now resizes photos 1 by 1. Upload and import have been separated, you can now upload multiple photos and then import them separately, so you can set albums and categories different, for example. The old web import allowed only one album and category, now multiple albums and categories during import. For some reason it was never possible to add people to photos from the import screen, this has been corrected. Preview images of what you have uploaded are shown before your import them. Zoph now reads lat/lon data from EXIF and can automatically rotate images based on EXIF tags. The CLI (command line) import utility (zophImport.pl) worked ok for most people, but had one big problem: it was written in Perl and not in PHP, like the rest of Zoph. This caused a lot of development effort every time something needed to be changed in the import system: everything needed to be written twice. A new CLI utility, simply called 'zoph' is introduced in this version. This has been written in PHP, just like the rest of Zoph. Zoph 0.8.2 is not a stable release. I have tested everything as well as possible, but some rough edges may have been overlooked. If you just want a system that works, you should not install this update and install the v0.8.0.5 release. However, if you are willing to help improve Zoph and help me find those rough edges, please install this version and let me know on the forum. You can download both Zoph 0.8.0.5 and 0.8.2 from the Sourceforge site.
Immediately after the release of v0.8, Jeroen starts working on v0.9. The first thing he wants to change is the way zoph handles character encoding. Up until now, every translation used it's own encoding. This caused, however, major problems for users who would use different translations for different users: a text encoded with one encoding would be sent to another user's webbrowser, with a different encoding. This change gets released as Zoph 0.8.1. Secondly, he wants to change the part of Zoph that has been causing the majority of support requests: importing photos. Jeroen has rewritten almost all of the import code, to make it easier to use and maintain. In the new webimport, a user can upload multiple photos simultaniously, a progressbar of the upload is shown and you will see a thumbnail of the photo before you actually import it. This is on the list for Zoph 0.8.2. A large part of the development is finished now, but testing and wrapping up open ends is taking up a lot of time. Zoph 1.0 So, will the release after 0.9 be 1.0? I don't think so, there's a lot on my list that I'd like to implement or improve in Zoph before I will take the beta label off and consider it a finished product. One of the most important things that really need to change is the fact that you need to be a bit of a techie to install Zoph. I suppose the release after 0.9 will be 0.10, but maybe after that... Jeroen Roos
In february 2003, Jeroen Roos buys his first digital camera. After shooting 600 pictures in two months, he realizes that he would need some kind of tool to organize his photos: I made a list of features I wanted in such a tool and started searching and browsing the Internet. Eventually ended up on a page that listed 40 or so tools for organizing photos. I started checking them out, but none of them was what I was looking for. The list was ordered alphabetically, so, the very last one in the list was Zoph. Jeroen Roos He installs Zoph and starts using it. After some time he realizes he is missing the possibility to search for photos by the specified 'level'. He creates a patch to add this to the search screen and on april 6 he sends it to Jason. After some mailing back and forth, he offers to work on the implementation of CSS. This takes him almost a year and a half to complete. Jason and Jeroen worked together to integrate it with other development on Zoph, which were mostly patches provided by other Zoph users. By that time, it was almost 2 years since a Zoph release had been made. I had been taking fewer digital photos and had less time for Zoph after I started a new job at Lucasfilm in September of 2003. Jason Geiger Several bugs had been reported during that time and Jeroen starts working on fixing them. He also gives the Zoph site a facelift, which goes live in May 2005. Finally, in August 2005, almost 3 years after Zoph 0.3.3, Jeroen makes his first release. Because Zoph 0.4pre1 had been the name of the Zoph version in CVS for a long time, he names the release Zoph 0.4pre2. A month and several bugfixes later, Zoph 0.4 is released. Among the many changes in Zoph itself, another major change has been made: Zoph switched from a BSD-license to GPLv2. Zoph 0.5 and 0.6 Several feature requests have been posted and Jeroen starts implementing them, resulting in Zoph 0.5, released in March 2006, after as much as 3 pre-releases and followed by a bugfix release only 2 weeks later. Zoph 0.5 also included a security fix: a few possible SQL-injections. One of the new features in Zoph 0.5 is "hierarchical places", from now on, a place can be placed inside another place so it becomes easier to navigate a large number of places. Only 3 months later, the first pre-release for Zoph 0.6 is released, which includes a large number of small feature improvements, but it will take until september before all the bugs have been squashed and Zoph 0.6 comes out. Zoph 0.7 Jeroen decides that it is time to modernize Zoph a bit, a lot has changed in browserland and a lot more is possible now. He adds a genuine Web 2.0 "autocomplete" function and updates the overview screens for albums, categories, places and people by adding a tree-based and a thumbnail-preview view. In March 2007, these updates appear in the 0.7 release of Zoph. The release also adds some small functions to zophImport.pl. Jeroen is trying to find a balance between releasing early and releasing quality. I was unhappy with the fact that I had to release a bugfix release only days after a release a couple of times due to an overlooked problem. I thought about how I could release early, but still keep quality at an acceptable level. I came up with "feature releases". Jeroen Roos Between 0.7 and 0.8, Jeroen releases 5 feature releases (0.7.1 to 0.7.5) that all introduce a few new features, but are released as 'unstable releases'. Now a user can choose between the 'bleeding edge' release with new features or a 'stable' release that remains supported over a long period of time. Zoph 0.8 In september 2009, Jeroen releases the first "stable" result of the new development strategy, Zoph 0.8. The most important change compared to 0.7 is the addition of mapping support. In the picture above, it is shown with Googlemaps, but thanks to mapstraction, one can just as easy use Yahoo or OpenStreetmaps. I didn't want to force Zoph users to use a specific mapping provider, because you never know what the future brings, they might start charging for their service or change the conditions of use or whatever that would cause users to want to switch to another provider. And of course, users may just have a preference for a specific service. So I chose to implement the mapping feature using mapstraction. Which means, a user can change the mapping provider by simply changing the MAPS variable in the config from, for example, Google to Yahoo. Jeroen Roos v0.8 also adds timezone support and a simple pbpBB-like CMS called zophPages that let's a user create coverpages for albums, categories, people and places. The thumbnail feature is extended with an option to "auto-pick" a thumbnail from an album, based on rating or age. Another new feature is the "admin page", a kind of control panel from where administrative tasks can be done.
On April 12, 2002 I emailed two friends from work asking them to take a look before the release. I finished up the website and documentation and posted the release to Freshmeat on April 24 and to a few open source directories the following day. It was out! My initial description of Zoph on Freshmeat went something like this: Zoph is yet another photo album/gallery/management system, written using PHP and MySQL. It can store lots of information about your photos, including the regular EXIF info, photographer, location, title, description, rating, and the people in the photo. Photos can appear in multiple albums and categories. Additional features include search, slideshows, email and access privileges. Freshmeat site The website clarified Zoph's purpose like this: If you just want to generate a gallery of thumbnails from a bunch of images, you may want to try one of the other numerous photo album projects. But if you want to also store additional information about your photos, search them, or control access to them, take a look at Zoph. Zoph site The first response I got was an email on May 9th. Thankfully it contained kind words: "Let me first say, I totally love your ideas about Zoph! It's exactly what I want! By extension, you're probably also really cool." Great! Of course it continued, "But there's one thing it lacks"... My reply was twice as long as the message I received; I must have been eager to please. But it worked: "I think I'll go with Zoph, as you've responded so quickly." I felt I was off to a good start. By the end of May I had a number of email threads going with people trying out Zoph. I was surprised but impressed that people were willing to work with me to help debug whatever issues they were with this unproven project. But then this must be the sort of feedback loop that makes quality open source software possible. On June 16th I received my first unsolicited patch, fixing a typo. On June 21 2002 I released Zoph 0.2.1 which included fixes for bugs the early adopters had found as well as a default user feature to try to help more than one person who wanted to have their site display photos without forcing people to log in. I continued to receive mostly favorable feedback from people trying Zoph. One person wrote, "Hey, I like it. Though I miss some of the flash of the plain photo album projects." I think that pretty much summed up Zoph: it was more about the data and less about the flash. On July 14th I received my first email from someone using Zoph in their business: "we have around 4000 classified photos right now, and the system behaves extremely well! ... zoph spits the pages or do[es] the searches in microseconds :) I'd bet its due to the general tidyness and good software engineering, not the system power." There's nothing like hearing things like that to motivate you to continue to develop a project. I knew that "ego satisfaction" drives lots of open source, but I hadn't experienced it first hand before. Jason Geiger On the topic of motivation, as the months passed I received a broader range of requests, some for things I didn't think aligned with Zoph, and other that did but that I didn't have a particular use for or desire to build. Some of these I worked on anyway, like the default user. Others I got lucky and someone contributed code for, like a web importer. Others I just didn't do. I considered the database and the ability to store structured metadata on thousands of photos to be the most important part of Zoph. But there were other key pieces as well, such as access control. I was happy that some people at least wanted a system like Zoph which took security a little more seriously than most projects. For example, I hadn't seen most photo albums provide the ability to stream photos in order to control access rather than serve them statically. At least one person early on used this optional feature of Zoph and even sent in some improvements. I should say that though security was important to me, and I was initially confident I had done a decent job at it, over the years numerous flaws were discovered and reported. It didn't take very long to learn that I shouldn't rely on only my own eyes when it comes to security. Zoph 0.3 Besides the web importer, another big contribution from outside was internationalization. Someone added the ability to translate each static string in Zoph and sent me a French localization. As more translations came in this feature made me disproportionately happy because none of the work on it was my own; it was all contributions from people around the world. Those changes and others were in the September 25 release of Zoph 0.3. Development remained fairly active through the end of the year with version 0.3.3 released in December. I created a Sourceforge project for Zoph and began hosting the releases, bug reports and feature requests there. Reading this, I imagine it seems like this should be the point that Zoph starts to really take off. But that's not what happened. In the move to Sourceforge I began to use their CVS repository. This switch to public source control was good development practice but may have contributed to the lack of a new release of Zoph for almost two years. The primary factor was just myself though. I didn't spend as much time on Zoph in 2001. When I would make changes, I'd submit them to the repository but wouldn't create a minor release. The updates would be there in CVS for people to grab if they needed it. As time went on, the list of changes grew larger and the differences between 0.3.3 and 0.4 somehow made it more difficult to assemble the new version. Debian Development didn't cease but it was more sporadic. One highlight from 2003 was an offer by someone to be the maintainer of an official Debian package of Zoph. When I eventually saw I could apt-get Zoph it was bliss. But as time passed I began receiving much more spam in my Zoph account than emails from users. I don't like projects in which the only recent version to use is the latest from source control. But that's exactly what happened to Zoph. "Release early, release often," is the mantra but for a long time Zoph didn't. From the outside I'm sure it looked like the project had stagnated. The appearance of activity is a big deal; many people will dismiss a project that looks like it might be dead or dying. Zoph is by far the best web/mysql based photo album i've ever seen/used. Sadly, however, it hasn't been updated in a very long time. :( Freshmeat comment by "SplasPood", 25 july 2004 Zoph's growth slowed over this time but people still wrote me, including those offering to add something to the project. Jeroen Roos asked about CSS in 2003, something I hadn't really been familiar with when I started the project. He ended up working on converting the layout from nested tables to styled elements. This was a big task that touched on most of Zoph UI and I talked with him a little about the design principles behind Zoph, such as they were. I had been taking fewer digital photos and had less time for Zoph after I started a new job at Lucasfilm in September of 2003. But eventually, largely motivated by Jeroen's contributions, I focused on getting a prerelease available followed by the release of 0.4 in September 2005. I was relieved to get all the latest code out, but I knew that I would again start spending less time on Zoph than was required to keep it healthy. Thankfully, Jeroen had expressed interest taking over development of Zoph and the next chapter in the project began.
Indexation In 1999 I graduated from college and started looking for a job. I wasn't immediately successful and while I looked I wrote some scripts. I started with a contacts database written in Perl using CGI and a MySQL database. After that was working I moved on to something a little more useful. It was called Indexion and stored people, places and photos in the database. I didn't finish it but in some ways it was a distant ancestor of Zoph. Thankfully I did manage to find a job and was saved from writing another iteration of those Perl scripts. In August I moved to San Jose to work at Knight Ridder New Media, the online division of the newspaper company that had moved its headquarters to the Silicon Valley the year before. In early 2000 I was going on trip to England and Wales and was in the market for a digital camera. In February I ordered a Kodak DC 280 from Onvia and after the trip in April I had over 300 photos and wanted a way to organize them. Zoph 0.1 I looked around but didn't see anything that really matched my needs. I was surprised how most open source photo albums stored fairly unstructured metadata. I wanted to separate people, places and photos, but most projects didn't seem to operate like that. At KRNM I had been learning more about table design and I figured it wouldn't be hard to just write a normalized photo database myself if I couldn't find an existing one. And so I started on what would become Zoph. PHP 3 had been getting popular and was easy to use so I went with that for the UI. Since I had many photos already I wanted an command line importer. I used Perl for that part, though it bugged me to be using two different languages. I don't think it occurred to me to try to get PHP running on the command line. MySQL and Apache rounded out the technologies. By September of 2000 the first version of Zoph running on my desktop. Later, when there was going to be another version, I called this release 0.1 just because that was when I had first sent a link around to a few people. For example, here's a what I wrote my sister on September 26: A couple of weeks ago, for a week straight, I worked on my photo album. It's sorta working but not everything is finished and I'm probably going to redo it sometime anyway. But you can take a look if you want. Jason Geiger As you can see, it was a major rollout with a big marketing push. There's not much of a story behind the name. I decided to go with a recursive acronym and came up with "Organizes PHotos" part before picking a first letter. It hadn't occurred to me until I submitted Zoph to various sites much later that I'd picked a name that would almost always end up at the very end of the search results. I guess I could have gone with something more alphabetically potent like Boph or Coph, but I still like the sound and distinctiveness of Zoph. Over the course of 2001 I worked on Zoph off and on but didn't share it further. Then in early 2002 I decided to leave my job and also decided to release Zoph to the public, knowing I would have more time to dedicate to it when I quit. But before releasing Zoph to the wild I thought I'd rewrite it, adding some features and cleaning up the code.
If you've ever looked closely at the changelog of Zoph, you might have noticed: This is exactly 10 years ago today, a great opportunity to look back at 10 years of development. I have asked Jason Geiger, the original maintainer of Zoph to write something about roughly the first 5 years of Zoph and I have written something about my work on Zoph. I hope you will enjoy this.
I was contacted by VUPEN Security to report several Cross Site Scripting (XSS) issues in Zoph. While working on fixes for those, I found a few more myself too. All these issues are only exploitable by logged in users, most even only by admin users, some may however be exploited by tricking you into opening a link to your Zoph installation, therefore I am classifying this as a MEDIUM risk. I encourage all users to upgrade to one of the two new releases that fix these issues: Users who are running the v0.8 release or one of the bugfix releases for that version (v0.8.0.1 or v0.8.0.2) are recommended to upgrade to v0.8.0.3 as soon as possible. This release fixes also a few other bugs found in v0.8.0.2. For users who are running the unstable v0.8.1 release, I have created the v0.8.1.1 release. I have made many many changes to the Zoph sourcecode to achieve this. I have tested everything I could think of, but since so many changes were made in many different parts of the code, I have, without doubt, left a few bugs. If you happen to run into one, please report a bug.
I have posted the first pre-release for v0.9 to the Sourceforge site. There are two major changes in this release. The first is the way debugging is done, instead of the "old" DEBUG setting, there are now 3 settings that can be used to give very granular control over which debugging messages are shown. You can read more about that in the documentation. The other change is the way Zoph handles character sets. The solution Zoph used prior to this version was to specify a character set per language, for example, Italian used iso-8859-1 and Turkish used iso-8859-9. This caused a lot of troubles for people using "special" characters in for example album names or locations. As of Zoph 0.8.1, all languages use UTF-8. In order to make this change you need to convert your database to UTF-8. You can read in this document how to do that. Zoph 0.8.1 is a pre-release and should not be considered stable. Everything was tested as well as possible, but some sharp edges may have been overseen. Only upgrade to this release if you are comfortable with that. On the other hand, this release is to find those sharp edges, so I would really appreciate if people would install this release and let me know how it works. Download Zoph from the Sourceforge site.
Today, SourceForge.net's Community Blog writes about Zoph: "Need a great photo organizer? Take Zoph". Last month's issue of the British Linux magazine Linux Format featured an article called "Cool Linux Projects", which also included Zoph. I have sent them a few e-mails asking them permission to reproduce the article on the site, but unfortunately, they have not replied so far. Therefore, I am publishing only some low-resolution scans. You can, however, read the article online at Techradar.com. If you come across any other references to Zoph in online or offline media, I'd love to hear about it!
Since the release of Zoph v0.8 several people have reported problems with Zoph. I thought it was time to bring together the bugfixes I have created so far and have released Zoph v0.8.0.2. Most of the bugs are small bugs regarding MSIE compatibility or functionality that doesn't always work as expected (see the release notes for details). One bug however, could be quite serious as it could lead to data loss, bug#2888263, in some cases making updates using the 'bulk edit' feature could cause the location or photographer to be removed from the photos. If you cannot upgrade right away, be careful when using the bulk edit feature! Download v0.8.0.2
During development of Zoph 0.8.1, I found a privilege escalation issue that affects all versions of Zoph; this means that a user that is logged in in Zoph can perform actions that this user is not allowed to do. This includes a user that is logged in through the default user feature. You should upgrade your Zoph installation as soon as possible, if you cannot upgrade right away, you should at least disable the default user feature until you have upgraded. I have published 2 new versions of Zoph to the sourceforge site: Zoph 0.8.0.1, for users of Zoph 0.8. If you are using one of the feature-releases (0.7.x), you should also upgrade to this version. For users who are using 0.7 or 0.7.0.x and do not want to upgrade to 0.8 yet, you can upgrade to Zoph 0.7.0.8. If you want to be automatically notified of new versions, you can subscribe to Zoph on the Freshmeat site, you will then receive an e-mail whenever a Zoph version is released. (Free registration on Freshmeat required).
I have just updated the Zoph demo site (http://www.zoph.org/demo) to the latest stable version of Zoph: v0.8. I have also included some examples of the new features, check for example this album for an example of the Pages feature or this place for an example of the use of maps.
Together with the launch of Zoph 0.8, I have launched the new Zoph website. The old one had been unchanged since May 2005 and was a minor restyle compared to the first Zoph site, which had been online since somewhere in 2002. You could say the old site looked a bit outdated. The new site has been built with Concrete5, a very user friendly and easy to customize CMS (Content Management System). The Zoph site uses a custom theme that I created especially for the Zoph site. The site is still hosted on the Sourceforge servers and I am still using the zoph.org domain name, which is owned by Antoine Delvaux and generously lended to the Zoph project. Cassiopea.org provided DNS hosting for Zoph.
Zoph 0.8 is available on the Sourceforge site. Compared to v0.8pre3, a small bug regarding timezone support in PHP 5.1 has been fixed. Compared to v0.7, which was released in July 2007, the list of improvements is almost endless. Due to the new release model, that I adopted after v0.7, all the new features have already been made available in feature releases 0.7.1 to 0.7.5. I would like to thank all the people who have tried these feature releases and have reported the problems they found! The most important new features in v0.8, compared to v0.7 are: Downloading a set of photo's in a ZIP file Admin page as a central place for managing your Zoph installation Pages feature, that allows you to customize the 'front page' of an album, category, person or place. Mapping support using Mapstraction, which will allow you to display the location of a photo or place on a map from Google Maps, Yahoo Maps or Open Streetmap. Thanks to Mapstraction it would be easy to add other mapping providers. Timezone support. It is no longer necessary to set the correct time on your camera, simply leave it on your home timezone and let Zoph do the calculation Group access rights: you can now group your users and no longer have to give access rights to each user individually. Save search results: You can now save search results to have easy access to a specific set of photos. If you're an admin user, you can even share them with other users. Various improvements to: Watermarking: more configuration options Automatic thumbnails for albums, categories and places. Comments: markup, smileys and easy overview of comments by a user Performance: various improvements to Zoph performance, especially with large databases. Ratings: overview of ratings per user and possibility to allow a user to rate multiple times (for shared user accounts) To see a complete overview of all the features of Zoph (not just the ones added in this version), check out Features. There are also many more screenshots. To see the complete changelog, check the changelog on the Wikibooks site.
I have posted the third pre-release for Zoph 0.8 to the sourceforge site. It fixes a couple of bugs, most notably the cross site scripting bug that was previously fixed in the v0.7.0.7 release. Furthermore the translations and the documentation have been updated. This will probably be the last pre-release of Zoph 0.8, unless serious bugs are discovered. If you discover a bug (seriously or not), please report it, as I will try to solve every known bug before the 0.8 release. As always, this is a pre-release, intended for testing purposes.
While I was fixing some bugs in Zoph v0.8pre2, I spotted two possibilities for code injections, making Zoph vulnerable to a cross site scripting attack. I have fixed this bug and created a new release for the 0.7 stable branch: 0.7.0.7. A fix for the v0.8pre2 release will be released soon. Users of the 0.7 release or one of the 0.7.0.x release are encouraged to upgrade to this version. Users of a 0.7.x or 0.8pre release should either upgrade to the 0.8pre3 release when it comes available or apply this patch. This patch should work on any Zoph version.
I have just posted the second pre-release for v0.8 on Sourceforge: v0.8pre2. It fixes the bugs discovered since v0.8pre1, including the security bug. All users currently running a 0.7.x or 0.8pre1 are advised to update. Users running 0.7.0.x should upgrade to 0.7.0.6 or could consider changing to this release.
I was contacted by someone who wishes to be referred to as "y3nh4ck3r", who found a cross site scripting bug in Zoph. I have fixed this bug and created a new release for the 0.7 stable branch: 0.7.0.6. A fix for the v0.8pre1 release will be released soon. Users of the 0.7 release or one of the 0.7.0.x release are encouraged to upgrade to this version. Users of a 0.7.x release should either upgrade to the 0.8pre2 release when it comes available or apply this patch. This patch should work on any Zoph version.
I have posted the first prerelease of Zoph v0.8 to the SourceForge site, this version serves as a release candidate for the upcoming v0.8 release. Compared to v0.7.5, several bugs have been fixed but no new features have been added. Users of v0.7.x releases are encouraged to upgrade to this version as it fixes all currently known bugs (except to those related to encoding / utf-8 support, those will be solved in v0.8.1). Users of v0.7.0.x should probably stay with their current version, as v0.8pre1 should not be considered 'stable'. A special warning to those who are still using PHP4, as of the release of v0.8, PHP4 will no longer be supported. So, if you are on PHP4 and cannot upgrade to PHP5, install this version and report any bug you find...
Zoph 0.7.5 is an interim "feature" release that offers a preview on a few of the new features that will be available in Zoph v0.8. Zoph 0.7.5 will be the last feature release before v0.8, which is now feature-frozen. It also fixes some bugs from the earlier 0.7.x releases. The new features is this release include: the possibility to save search results and (if you are an admin user) even share them with other users. Furthemore some improvements have been made to the rating system, for example, it is now possible to set whether a user can rate photos or not. You can also give a user the possibility to rate the same photo multiple times, this can come in handy if you use the 'default user' function or otherwise have multiple users who share the same user account. If you go to the user page (via the admin menu) you can now see the ratings this user has made and the comments the user has left. See the changelog for more details. 0.7.5 is still an unstable release. Download 0.7.0.5 if you're not comfortable with running an unstable release. Please report any issues you find, so I can make sure they are fixed in the final 0.8 release.
Zoph 0.7.4 is an interim "feature" release that offers a preview on a few of the new features that will be available in Zoph v0.8. It also fixes some bugs from the earlier 0.7.x releases. This release features 2 major improvements: the first is performance, all the new features in 0.7.x had demanded their toll on Zoph's performance, so I have put a lot of work in improving the performance. The second innovation is the 'group access rights', instead of giving each user seperate access rights to the albums, you can now group your users and assign the rights to the group. For those who want to stay with the current model, a script is included in the contrib dir, that will create a group for each user and assign the group the album permissions of that user. A record amount of bugs have been fixed in this release. See the changelog for details. 0.7.4 is still an unstable release. Download 0.7.0.5 if you're not comfortable with running an unstable release. Please report any issues you find, so I can make sure they are fixed in the final 0.8 release.
Zoph 0.7.3. is an interim "feature" release that offers a preview on a few of the new features that will be available in Zoph v0.8. It also fixes some bugs from 0.7.1 and 0.7.2 Finally, it includes the bugfixes from 0.7.0.5. This includes the security update. The most important new feature in this release is the mapping support. You can now show the locations of your photos or places on a map. Thanks to Mapstraction you can easily change between 3 mapping providers: Google Maps, Yahoo Maps and Open Street Maps. It should be easy to add support for the other mapping providers Mapstraction supports later. Furthermore, you can store timezones in Zoph and make automatic calculations between the different timezones. Simply leave your camera on your home timezone (or UTC) and tell Zoph where you went on holiday, and it will automatically compute the right time for you. Finally, a record amount of bugs have been fixed in this release. See the changelog for details. 0.7.3 is still an unstable release. Download 0.7.0.5 if you're not comfortable with running an unstable release. If you are currently running 0.7.1, 0.7.2 or 0.7.2.1, I recommend upgrading to 0.7.3, because of the security update.
During development of Zoph, I found a couple of possible SQL injections. Although most are not exploitable or only exploitable by an admin user, I have created an updated release for Zoph: v0.7.0.5. I recommend evereyone upgrading to his version. The release also includes a number of extra 'safety nets' that will make exploiting any future SQL injections a lot harder. It also fixes a number of bugs in the 0.7 release. An updated version of the 'unstable' branch will be available later this week.
I have created a bugfix release for Zoph 0.7.2: I found out that the 0.7.2 release that was released earlier this week did not include the latest version of some files. I also fixed 2 other bugs. For a full overview of the changes, see the changelog. 0.7.2.1 is still an unstable release. Download 0.7.0.4 if you're not comfortable with running an unstable release.
Zoph 0.7.2. is an interim "feature" release that offers a preview on a few of the new features that will be available in Zoph v0.8. The most important new feature in this release is the 'Zoph Pages' feature, that allows you to create your own pages as frontpage for an album, category, place or person. Also, you can now add smileys and (limited) markup to comments. The "users" link in the main menu has changed into "admin" and the newly created admin page gives access to the user-administration and the new pages feature, through an icon-based menu. Francisco Javier Félix provided a patch that allows you to set the default language to something else than English, a patch that makes it possible to translate the login page and a patch that improves the usability of the list of people, by adding some colour to that page. He also updated the Spanish translation. Finally, this release fixes all the known bugs in 0.7.1 and also includes all the fixes from 0.7.0.3 and 0.7.0.4. Although this release was tested as well as possible, it is not a "stable" release and you should continue using the latest stable (0.7.0.4) if you are not comfortable using an unstable version.
I have created a bugfix release for Zoph 0.7: version 0.7.0.4 which fixes a few small bugs, mainly layout-issues, but also an issue with the sql file that caused installations on some systems to fail. For a full overview of the changes, see the changelog.
I have updated the table with the current state of translations (see below). Some languages have not been maintained for a long time. Why not check out the table and see if you can be of help? Also, if Zoph has not yet been translated in your language and you're willing to spend a little time, please contact me!
I have created a bugfix release for Zoph 0.7: version 0.7.0.3 which fixes a few small bugs.
Zoph 0.7.1. is an interim "feature" release that offers a preview on a few of the new features that will be available in Zoph v0.8. ost notable changes are more configurable options to watermarks (position and amount of transparency), possibility to download a set of photos in a ZIP file and some improvement to the thumbnails for albums, categories and places. Although this release was tested as well as possible, it is not a "stable" release and your should continue using the latest stable (0.7.0.2) if you are not comfortable using an unstable version.
I have created a bugfix release for Zoph 0.7: version 0.7.0.2 that fixes a few bugs. None of them are really serious. The most important change is an update to the installation SQL script, a fix that was created by Raimund Hook. This version also includes an up to date Italian translation, thanks to Francesco Ciattaglia.
During development I found a possibility for SQL injection. As far as I could determine it cannot be used to gain privileges, modify or retrieve data; however, just to be sure, I recommend everyone to upgrade to the fixed version. You can download the new version here, or you can download a patch. If you are running an older version of Zoph, it should not be hard to adapt this patch for your version.
Here is the second pre-release for Zoph 0.7. A few bugs have been solved and all translations have been updated. All duplicate and unused strings have been removed from the translation files. Dutch, German, Canadian English, French, Norwegian and even Swedish Chef (Bork! Bork! Bork!) are completely up to date now. Danish, Italian and Turkish are almost up to date. Many thanks to Antoine Delvaux, Francesco Ciattaglia, Håvard Lund and Mufit Eribol for translating Zoph in their languages. This is also the last call for translations and bugs! I am planning on releasing v0.7 by the end of this week, so if you are aware of any bugs that are still present in v0.7pre2, please report them as soon as possible. Also, if you wish to include a new translation in Zoph or update an existing (see http://www.zoph.org for missing strings in current translations), please submit them as soon as possible, so they can still be included in the upcoming release!
I have updated the Zoph Demo site to v0.7pre1.
Finally! Zoph v0.6 is now available on Sourceforge. Most notable new features are the possibility to leave comments and the possibility to link photos to eachother (you could for example use this to keep the original photo together with edited versions). For all new features, see the changelog. Known issues: Not all language files are completely up to date. For full list of changes, see the changelog
The first pre-release of Zoph v0.6 is now available on Sourceforge. Most notable new features are the possibility to leave comments and the possibility to link photos to eachother (you could for example use this to keep the original photo together with edited versions). For all new features, see the changelog. This is the first pre-release of Zoph 0.6, so despite all the testing I have done, it could be beta-quality. Don't install it if you're not comfortable with that. If you do not mind running into a glitch, please do install it, and report all the bugs (even the little ones), so I can make sure they'll be removed in the final version. If no really bad bugs are found, you can expect the final 0.6 version in about a month. Known issues: Not all language files are completely up to date. For full list of changes, see the changelog
Zoph 0.5.1 is available on Sourceforge. Several bugs have been fixed in this release. Most notable are some encoding issues that caused trouble when you used quotation marks in text fields, the sort order of places, and a bug on the search page that caused it to malfunction when using a translated version of Zoph. The mail classes have been updated to the most recent version. For full list of changes, see the changelog
I have just posted Zoph 0.5 to the sourceforge site. As no bugs have been found since the last pre-release, this version is equal to Zoph 0.5-pre4. Compared to v0.4, many changes have been made. Most important changes in this release: Hierarchical locations Watermarks Many improvements to zophImport.pl Many improvements to the search page SSL support MySQL >4.1 support HTML updates: many tables were removed and replaced by semantic HTML, this will allow better CSS skinning in future versions. Some security updates: there were a few SQL-injections possible in previous versions, as far as I could determine, they were non-exploitable. For full list of changes, see the changelog
I have just posted Zoph 0.5-pre4 to the Sourceforge site. This is the fourth pre-release of the upcoming 0.5 release. If no major bugs are found, this is the last pre-release and v0.5 will be released the first week of March. Some bugs in the Bulk Edit and some problems with the album permissions part of the user management have been resolved, also a (not-exploitable) SQL injection possibility has been resolved.
I have just posted Zoph 0.5pre3 to the sourceforge site. This release is a roundup of several fixes for bugs in Zoph 0.5pre2. Just like the previous release, this version meant for the brave and curious who are willing to test the next release. Please report any bugs you find on the Sourceforge bug page.
I have just posted Zoph 0.5pre2 to the sourceforge site. While testing Zoph-0.5pre1 I found a bug that I considered serious enough to immeadiately make a new release: a last minute change - that I obviously didn't test thorough enough - caused several errors when logging on as a non-Admin user. Just like the previous release, this version meant for the brave and curious who are willing to test the next release. Please report any bugs you find on the Sourceforge bug page.
I have just posted Zoph 0.5pre1 to the sourceforge site. This is a pre-release of Zoph-0.5, meant for the brave and curious who are willing to test the next release. Please report any bugs you find on the Sourceforge bug page. Most important changes in this release: Hierarchical locations Watermarks Many improvements to zophImport.pl Many improvements to the search page SSL support MySQL >4.1 support For full list of changes, see the changelog
The demo site on Sourceforge has been updated to the latest Zoph version. Check it out on http://zoph.sourceforge.net/demo!
A month after the pre2 version, I have posted the the final release of Zoph 0.4 to the Sourceforge site. This version contains all the updates made over the past 2.5 years, since Zoph 0.3.3 was released, a few bugfixes were made compared to Zoph-0.4pre2. At this point there are no known bugs. If you find any bugs in this release, please let me know. (preferably via a bug report on the Sourceforge project page). You do not need to download a language pack, as all language files are already included. The language packs for English, Canadian English, Dutch, German and Swedish have all been updated for v0.4; the others do not yet have a translation for some new features added in v0.4; if you do use one of these languages, please consider updating the language file and submitting it (you can e-mail it, or - preferably - create a patch on the SourceForge page).
Finally, after a long time of silence around this project, here is the second pre-release of Zoph-0.4. This version contains all the updates made over the past 2.5 years, since Zoph 0.3.3 was released. At this point there are no known bugs except for a few very minor layout glitches. If you find any bugs in this release, please let me know a.s.a.p. (preferably via a bug report on the Sourceforge project page). If everything works as expected; a final 0.4 release will be done by the end of this month. You do not need to download a language pack, as all language files are already included. If you find a bug in the language files, please also report!
Despite the fact that it has been silent around Zoph for quite some time, there is still much being done on the project. One example of that is the restyled webpage you're looking at right now. Version 0.4 is very close to release now with many nice features, such as: CSS styled pages Bulk editing Improved rating system
Uploaded a new language pack with a Danish translation by Jesper Skytte.
Uploaded a new language pack with a Portuguese translation by Joaquim Azevedo.
Uploaded a new language pack with a Hebrew translation by Prince01.
Uploaded a new language pack with an Afrikaans translation by Neels Jordaan.
Uploaded a new language pack with a Swedish translation by Mikael Magnusson.
Christian Hoenig has created a #zoph channel at irc.freenode.org. Stop by sometime.
Zoph is now in Debian-unstable! Many thanks to Edelhard Becker for maintaining the package.
I'm back and will start working (admittedly intermittently) on Zoph again. I've moved the demos to sourceforge.
I'm going to be away traveling for a couple months and probably won't be checking email or updating the site very much.
Uploaded a new language pack with German, Dutch and Canadian English.
A sourceforge project is now up. This includes CVS access, forums, bug tracking, etc.
A mirror is up at andormania.com thanks to Alvaro Gonz
Added faq 1.16 about how to delete descriptions of photos.
Added deb and rpm packages of 0.3.3 created by Mark Cooper.
Zoph 0.3.3 is released.
The 0.4 release of Zoph will move from the modified BSD license to the GNU GPL. There will be at least one more 0.3 release before then. If you have concerns about this switch, email me.
Added a couple new faqs (1.14, 1.15).
Uploaded a new language pack with Spanish.
Uploaded a new language pack with Norwegian.