Coder Social home page Coder Social logo

zenphoto / zenphoto Goto Github PK

View Code? Open in Web Editor NEW
299.0 44.0 128.0 138.28 MB

The Zenphoto open-source gallery and CMS project

Home Page: https://www.zenphoto.org

License: Other

PHP 63.40% CSS 4.71% HTML 0.36% JavaScript 31.53%
cms web-gallery photo-gallery

zenphoto's Introduction

Zenphoto

The simpler media website CMS

http://www.zenphoto.org

Welcome to the Zenphoto git repository!

About

Zenphoto is a standalone CMS for multimedia focused websites. Our focus lies on being easy to use and having all the features there when you need them (but out of the way if you do not.)

Zenphoto features support for images, video and audio formats, and the Zenpage CMS plugin provides a fully integrated news section (blog) and custom pages to run entire websites.

This makes Zenphoto the ideal CMS for personal websites of illustrators, artists, designers, photographers, film makers and musicians.

Read more about the features.

Installation, upgrading & requirements

Please see the Installation and upgrading page.

Support

Contributing

For general info about contributing please see the "Get involved" page

zenphoto's People

Contributors

acrylian avatar alexach avatar apadmin avatar bic-ed avatar fretzl avatar gjr-osweb avatar henrysting avatar iliyangochev avatar jaanusnurmoja avatar jagerman avatar jammon avatar jesdnissen avatar julienvdg avatar kochs-online avatar kuz-z-zma avatar michgagnon avatar momo-i2 avatar paulbuhtab avatar reine-k avatar rlerdorf avatar rolandti avatar sbillard avatar simounet avatar sphoto avatar subjunk avatar swiffer avatar tangornsvk avatar trisweb avatar vincent3569 avatar wongm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zenphoto's Issues

Bug or no bug? No display on Internet Explorer 9

I know at least one of the developer works on a Mac. Tonight, I had the horrible idea to try the new DEV version on Internet Explorer 9. Short answer, it doesn't work.

Info : Even though IE 9 is supposed to be more standard-compliant, I have had more issues to clear with IE9 than with all previous issues of IE! It's a nightmare! Unfortunately, many people use it. To make things "simpler", IE also has this "compatibility mode" which is supposed to make it behave like IE7 and would therefore work on older designs; however, it's NOT compatible with IE7. And a preview of IE10 goes around on Windows 8 and will come to Windows 7 soon.

Problem description :

Version 1.4.4-DEV [54cda5b](Debug build, taken on Github)
installed on XAMPP – Apache 2.4.2 – PHP 5.4.4 – MySQL 5.5.25

– When I display a basic gallery (10 photos) in Firefox, GoogleChrome or Opera : works perfectly
– When I display in IE 9, I get the following message: "A problem with the display of mg.localhost forces Internet Explorer to refresh the page using compatibility mode" (my translation from French).
–> with theme Zenpage, compatibility mode gives me the page outlines, but no photos (see file http://stjamestheapostle.ca/files/mglocalhost-Zenpage.png ).
–> with Effervescence+ and Default, compatibility mode gives me a tiny empty rectangle at the top of the page.

I'll check tomorrow on another computer that has IE8 and will report. If you need it, I may upload that installation to see if the same problem happens with an online server, but I think it will.

I also noticed that the Zenphoto website also displays only in Compatibility mode and isn't good (see file http://stjamestheapostle.ca/files/ZenphotoWebsite.png ).

On the other hand, my own live installation on http://stjamestheapostle.ca/photos uses
version1.4.4-DEV [10766]
Apache 2.2.x – PHP 5.3.16 – MySQL 5.1.62 and works correctly in both Compatibility mode and official mode (i.e. using all IE9 functions).
The theme is fairly a customization of Zenpage and I had to remove rounded corners on INPUT and #search fields because otherwise, IE9 popped error messages aplenty.

My Questions

  1. Is Zenphoto using a newer DEV version with the same incompatibilities as I have with the current nightly?
  2. Am I the only one seeing that problem or are there any other folks that have access to IE 9 or IE 10 ?

Imagick: Remove option for memory limit

The option for an Imagick memory limit is redundant and probably not useful for most users. It should be removed in an effort to declutter the options.

(In response to #67)

PHP Notice Flowplayer3

I get this notice when I play a video/mp3 using Flowplayer3:

Backtrace:

NOTICE: Undefined variable: _zp_current_image in .../zp-core/zp-extensions/flowplayer3.php on line 211
Flowplayer3->getPlayerConfig called from Video->getBody (class-video.php [344])
from printCustomSizedImage (template-functions.php [2833])
from printCustomSizedImageMaxSpace (template-functions.php [2897])
from include (image.php [84])
from index.php [92]

security options tab bug

hi,

i checked out the latest master branch and i get an error when visiting the security tab on the options page:

Fatal error: Call to undefined method zpFunctions::getOptionsSupported() in /var/www/zenphoto/zp-core/admin-functions.php on line 552

regards,
lukas

printBarePageTitle() error in Zenpage pages

This only happens on the Zenpage theme !

Clicking on a Zenpage-page link in the sidebar throws a fatal error:

Fatal error: Call to undefined function printBarePageTitle() in .../themes/zenpage/pages.php on line 11

No entry in the debug log.

Album keywords taken from image keywords inside that album

I activated the metatag plugin. When I view image.php, the html source shows the keywords and description of that image. But when I view the thumbs page, those keywords are not there. I know they depend on the keywords added for the album, but would it not be easier and more efficient if the keywords were taken from the images inside that album? To prevent too many keywords, the album keyword list could be limited to a specific number of most frequently present keywords inside that album.

This issue relocated from TRAC: http://www.zenphoto.org/trac/ticket/2214

Imagick: Font use differs from GD font use

In updating some graphics library items I have noticed that there is an option in Imagick for the "CAPCTHA" font size default. First, fonts get used for more than Captcha, so I will re-labeled this option "Imagick font size".

But there is a bigger problem in general. Fonts may be defined as follows:

In typography, a font is traditionally defined as a quantity of sorts composing a complete character >set of a single size and style of a particular typeface. For example, the complete set of all the >characters for "9-point Bulmer" is called a font, and the "10-point Bulmer" would be another separate >font, but part of the same font family, whereas "9-point Bulmer boldface" would be another font in a >different font family of the same typeface. One individual font character might be referred to as >a "sort," "piece of font," or "piece of type".

So you see, a font by definition includes the point size. This is the way (in effect) that GD handles fonts. But unfortunately, Imagemagick does not seem to follow this tradition. For consistency in Zenphoto Imagick should provide a pool of font files that define the character set and the point size so that use of fonts will work the same for both graphic libraries.

This is needed since there is no other way of controling the point size of text that is used by both the captcha font selector and such things as third party text watermarking plugins.

MySQL lock option

Include a MySQL lock option. It doesn't depend on filesytem. Many reports that NFS flocks don't work, it's not clear if that's only true on mult-host use or also single host. Fat flocks certainly don't work

See pull request #48 for inspiration.

Lock destructor can destroy wrong lock.(update: not really)

I get one or two of these errors sometimes:
Mutex i_1 was left locked.

This is I think a race in the lock destructor. All my images cached so no process died and if it did would the destructor be called?

See update In next post, my original idea was flawed.

zpMobile and iOS Safari Navigator / IE Windows Mobile 8

Hi,

I noticed a problem with the navigator Safari on my iPhone and IE on my Windows Phone 8. zpMobile theme works fine on android platforms but on Safari mobile and IE mobile, there is a problem which comes from JQuery.
Indeed, when I click on a link on my gallery, a message "Error Loading Page" on my iPhone and on my WinPhone is shown.

I tried to use the latest JQuery downloaded in your git repositery but it doesn't work, and now I have a message "Not Found" from my server.... If somebody has an idea to help me, I will be very grateful. :-)

Thank you.

Revert serialization/Mutexes/concurrency-control

sbillard's implementation of my serialization idea is broken.

If the user requests 10x concurrency and starts 4 jobs (page asks for 4 uncached images), half time (on average) he'll get three or less running at once and will take twice as long to finish, because the jobs are assigned to slots randomly. That's how random numbers work. That's the birthday problem. That's not what the user expects.. to use 3 slots when he made 10 available and needs 4.

The probabilty to NOT hit the same slot twice is very simply 9/10 * 8/10 * 7/10 = 504/1000. because there are 9 of 10 slots empty and then 8 and then 7, for that to happen. (there were first 10/10, but that's 1).
So that's 496/1000 that at leat two of the 4 jobs land in the same queue, pretty high chance.
Even with far more requests the difference doesn't "average out" very quickly, although with enough requests at once it does get better. (It gets worse first though, at 9 or 10 requests it's nearly 100% chance of doubling the time)

I provided two slot selector routines that are not random, but whatever.

Sbillard said point-blank that if I could not agree on this point then the whole thing should be pulled out.
This request is a direct response to that clear statement I cannot agree on mathematically flawed ideas.

So pull it out.

Serialization allows zp to run comfortably with far higher usage demands (bigger images) on far inferior hardware. It's also been a popular request to reduce memory usage and serve bigger images and previous advice has been use smaller images or get better hardware. I was told it couldn't be done an sbillard wouldn't touch it. Then my efforts were duplicated concurrently behind my back using my criticized ideas and my roadmap while knowing I was also working on it.

If you want to pull something from your own project that provides a significant hardware threshold improvement because you don't like disagreement from the person who invented it, then I think that's what you should do. Pull it out. It will be easier for me to patch in my changes, and your other users just won't have the feature but we'll be done.

I serve full size DSLR images at many times most people's bandwidth off a single core cpu built in 2003 in a VM with 700 MB of ram(no host-side caching cheat either and much ram is in use for other purposes), where the host and guest are busy with other things on the same core, now possible because of my concurrency control. Revert that (or something similar anyway).

Truce, Research: "or" and "||" behave differently near "=" , manual linked.

No hate here, I promise, this is funny actually.

For sbillard and all, because this is not obvious at all.

http://php.net/manual/en/language.operators.precedence.php

|| has precedence over =
, but
= has precedence over or

so I (now) think of || as more evaluative
like $a= $b || $c;

a should equal the or of b with c
whereas or is more procedural
$a=$b or $c();

if (! $a=b) then do something else $c()
which I guess is why one looks mathematical and one looks linguistic,
but that's not the right way to think either, the right way is to lookup the precedence.

So I did use it correctly, but the interpretation made was wrong or it broke after fixing the "style".
You can find many examples of php code that say
$a=$b or die();

(I had seen some when I correctly wrote and tested more or less that, not thinking much about it)
You don't find many with ||. They wouldn't last long.

This caused a big fight it seems on another issue, and it's not surprising, because while this difference is arguably useful, it seems a bit nuts, so much that nobody sane would suspect it. Some php author should suffer for thinking this was a clever idea.

But that's why I test my code, line by line as much as possible, before arguing about it.

Manuals are good too, but tests are better and form can't make up for that.

Given this difference one can argue either way whether a "style" choice to only use one version is good or bad or even really about style. I'd rather people know than just stick to a style not realizing why.

I'm glad we had this tangle.

I didn't know this either, but I think we all got schooled a little and don't need to be upset about it.

The fact that I had tested it and was darn sure I was right, probably amplified my frustration and impatience with sbillard and the fact that he was rightfully (but incorrectly) certain I was crazy made him think I was a stubborn moron. Of course there was already a powder keg between us. I think it's funny now :) And for a few hours maybe, I know something about php that sbillard doesn't :) haha. (all in fun really).

Sorry if this abuses the "issue" board. I don't know another good place to post it and little pitfalls like this are I think worth spamming about sometimes independently of the closed discussion they came up in.

Warning in options auto_backup plugin

Let's see if this works :-)

Go to options => plugins => auto_backup and just hit Apply.

I get this warning:
Warning: date() expects parameter 2 to be long, string given in .../zp-core/zp-extensions/auto_backup.php on line 63

Backtrace:
WARNING: date() expects parameter 2 to be long, string given in
.../zp-core/zp-extensions/auto_backup.php on line 63
date called from auto_backup->handleOption (auto_backup.php [63])
from customOptions (admin-functions.php [669])
from admin-options.php [2905]

Options for user rights on Managed Albums don't appear on time

The check boxes for edit or view unpublished for a specific managed album do not show up until after you select the album, click update, and reopen the managed albums box.

I didn't even realize the options existed for a long time and assumed talk of the view unpublished option was just refferring to the global one. this of course caused some confusion about what rights schemes are possible.

Move locking inside cacheImage

Just a reminder.
We already both (sbillard and I) agree and also both agree it's not a huge issue, for the same reasons, but still, it's better that way.

Include my get_multi_que_lock in iMutex class

To avoid random queue length assignment and speed up processing.

See pull request 48 for the code.

There is still a little randomness in that one process might be faster than another if you've got thumb requests coming at the same time as full image requests, but that variation is quite a bit smaller.

Error in contact_form with CAPTCHA checked but zpCaptcha plugin is not enabled

When the CAPTCHA checkbox in the contact_form options is checked but the zpCaptcha plugin is not enabled you get this error:

Fatal error: Call to a member function getCaptcha() on a non-object in .../zp-core/zp-extensions/contact_form/form.php on line 95

Instead it would be nice to see message with a short hint/explanation.

Does Image Magick memory limit actually help anyone?

It seems to limit memory use of individual processes. From the docs the memory then spills into memory mapped disk and then just disk. This only slows down all the processes equally and REALLY slows them down.. when I tried it just didn't work, or I wasn't patient enough to find out. The right solution is to run fewer processes and that's now in progress.

It's not clear this option should still exist. Does anyone have good experience with it?

themeSwitcher issues

In the themeSwitcher plugin options all themes are selected but the Default theme will not show in the dropdown.
Also the checkbox next to the dropdown shows Zenpage selected.
I think this is to show what theme is set as default gallery theme?
Anyway, no matter what I do it always shows Zenpage selected.

Wrong path in robots.txt

The robots.txt file, created by setup, looks like this:

robots.txtUser-agent: *
Disallow: /ZpDevelopment/zp-core/albums/
Allow: /ZpDevelopment//zp-core/cache/
Allow: /ZpDevelopment//zp-core/cache_html/
Disallow: /ZpDevelopment//zp-core/themes/
...etc

I believe the "zp-core" part should not be there.

By request: MySQLi_ vs mysql_ with newlink

I had missed this before :

php manual on mysql_connect():
new_link
If a second call is made to mysql_connect() with the same arguments, no new link will be established, but instead, the link identifier of the already opened link will be returned. The new_link parameter modifies this behavior and makes mysql_connect() always open a new link, even if mysql_connect() was called before with the same parameters. In SQL safe mode, this parameter is ignored.

I don't know about safe mode, and a little googling says that might be a show stopper.

but if that's not a concern we can change the mysqli calla to mysql calls with a newlink parameter.

I can't tell if it's still considered such a pain that a few actual lines of code even get read even when a conditional is not followed or if the bigger issue was just using a particular library that's standard in all versions of the required software. If it's just the latter, then I think this might solve it. Otherwise we need include statements after every single conditional expression.

With a little reworking it's even possible to fall back to the function-db-MySQL functions although they do some unecessary steps and need modifcation to take the newlink request.

However, maybe safe mode is a killer, so I dug up the following.
Why is it such a big deal anyway:

requirements and suggestions
http://www.zenphoto.org/news/installation-and-upgrading#3
http://www.zenphoto.org/news/zenphoto-requirements

especially given this:

http://kr1.php.net/manual/en/intro.mysql.php
"This extension is not recommended for writing new code. Instead, either the mysqli or"
and this:
http://kr1.php.net/manual/en/function.mysql-connect.php
in red letters:
"Use of this extension is discouraged. Instead, the MySQLi or PDO_MySQL extension should be used. "

Are there any "serious" servers running without this compiled in?

I mock (in reference to FAT, inside history) ;).. but ok, yes I think people use systems all kinds of funny ways. If the code actually won't run when it "includes" these lines then that's a problem. But I tested that theory and unknown functions called from functions in included code don't cause errors until the function they are called from is called.

So making this optional isn't much worse for the few people without MySQLi than optional flock is for the few people with fat (and I bet there's one at least and he probably needs a performance boost).

Moreover even if we remove mysql locks from my code entirely.. and it's easy to do. It still runs far faster than the present version because of the statistical problem with the random number approach.

So lets stop trying to fix an implementation of my multi-flock ideas that's broken... yes the random numbers are a broken concept, and instead start cleaning up one that works. Maybe we can even get it to work with mysql interfaces that are appreciated here, maybe not.

It will be easier for me to help develop implementation of my ideas if my discussions about them are not ignored though and if efforts are not duplicated sans communication of the fact. I don't mean that as a jab, just a logistical fact required for effective and satisfying work: most specifically referring to my thread about how to do this on zenphoto forum.

user rights part 2 ;-)

Hello sbillard,
Many, many thanks for your plugin that is exactly what I need.
could you please look at the upload?
when the user creates a new Subalbum, then he has a control box called publish the album for everyone . Can you please still hide the box in the next issue?

happy greetings
kalli

user rights

Would it be possible to rewrite the plug-in for the user administration?
The user get her own album, (there already)
the user can be divided into user groups, (there already)
the permissions of the user can be classified individually for each user or group.
It makes sense that a user can his album and his pictures add a description. But the admin should be able to decide which albums and photos will be published and which are not.
That is certainly interesting for a gallery for example for clubs or something where there are many members who are allowed to upload their photos in the gallery ..
After all, who wants public images in his gallery, which have nothing to do with the club?

greetings
kalli

Setup warning for non apache server

The htaccess in zp-data is to deny access from web. On nginx, I have to setup my deny public access rule, if I forget to do this, the public can read my zenphoto.cfg if they know where it is (/zp-data/zenphoto.cfg)

So, a reminder in setup is better.

Contact form reply-to

I think it would be good to have the contact form send a "reply-to" address with its emails.
Currently, if I receive an email from someone who used the contact form, I have to change the email address of my reply otherwise I'm sending it to the address that sent it (myself) so it would be better to put the person's email address in the reply-to field if we have it.

The concurrency slider does not work.

The concurrency slider does not work.
I cannot find anywhere the value actually gets stored. It was probably missed in the unmerge.

Anyway for me, the value is not retained.

More specific breadcrumb from "Archive view"

I suppose this is a request.

As an example, the breadcrumb from a search works fine.
It prints something like Gallery title -> Search -> image title

However, when you come from "Archive view" it prints exactly the same.

It would be nice if the breadcrumb then looks something like this:
Gallery title -> Archive -> archive date -> image title

Translation (Gettext) issues in Master branch

Hello,

I did an installation on the current Master file and proofread the current translation. In doing so, I came with the following minor issues, all related to the Administrative interface.

Menu: Extensions

– Widen it slightly. The work "Développement" pushes the boundaries and fits on Windows, but not on Linux.
– Is there a way to list "All" (all extensions) either at the beginning or at the end of the listing? It's odd to see it listed in second place (or in 4th last place in French).

Incidentally, I don't know if it is possible to have more than one "all" entry. The string "all" is listed for 10 strings, and ideally, the translation would be different in various situations (tout, tous, toute, toutes, complet).

Submenu Options –> Plugin

Suggestion (if it can be done easily)
beside the name of each plugin, write the short description (same that appears on the Plugin menu).

–  Contact_form Options
"Title Field" to "Message Field". Right now, the word "field" is part of the variable used to describe the field; the net result is that the word "field" appears twice in a row (once in blue, once in black) in the description.

– Comment_form Options
Comment Editor Configuration. The first option is called "disabled". Therefore, if I understand correctly, the detailed description should say:
Set to disabled to disable visual editing.

– FavoritesHandler Options
For all 6 strings, the fields that represent the options to be configured are displayed in English, even though the translation is done (it seems a Gettext variable is not called)
Ex.: Favorites page (page des favoris): archive|contact|favorites|register
Link text (texte descriptif du lien): My favorites...
Although I wonder if the Favorites page lists an actual series of pages from the theme rather than standard pages

– Image_Effects Options
Description: should the italicized headers be separated with a bolder separator?

– RegisterUser Options
User registration page –> script –> the same series of options as in FavoritesHandler, with the same non-translation.

  • Zenpage Options
    CombiNews: Gallery page link : user text stays in English even though I have a French string (Visit gallery page)

Menu: Themes

For each installed theme :
The descriptive placed after each theme has :
Name
Author
Version 1.4.4-DEV, Y-m-d H:i:s
Description

The version line looks like an unparsed date information (at least when installed on XAMPP; maybe it's OK on a real Apache server)

Thanks.

mysql_connect newlink option makes mysqli_connect not needed

I missed it before but it's a valid issue that opens possibilities.

as for the response by trisweb to the first close of this issue:

"You make the grave mistake that we only intend Zenphoto to run on "serious" servers. Indeed, the situation is far more complicated than that."

No .. I mock sbillards own comment about flock locks where he said no serious server use FAT. I am not running a "serious" server and that's why I especially need this fix.

I CAME UP WITH THE FLOCK LOCKS IN THE FIRST PLACE AND I MADE THIS as an ALTERNATIVE OPTION too.. to give more choices. He wouldn't even discuss it or the flock locks so don't tell me about more discussion.

You say I take it personally but you haven't followed the original discussion or all the times he said no improvement was needed and he didn't believe it was possible and wouldn't put in any of his time on it and made several different excuses AND personally condescending remarks.

Then I find the start of a solution and post on the main page and he tries to shoot at that. He doesn't say hey, great reopen the issue. He doesn't say "hey I'll work on it." He reads that I'm working on it and goes off his own way (but doing almost exactly what I suggested) leaving it with is string of negativity as the last word while KNOWING I'm putting time into it.

HE KNOWINGLY WASTED MY TIME. That IS PERSONAL.

I entirely agree about too much emotion and not enough discussion. I provide a bunch of code though and it works better than his. You think I should provide more to fix his broken one after all this?

File Uploader first touches the target PHP, and Uploads then

Dear Zenphoto-Team,
Your Uploaders, is it flash, jquery or http, first touches the uploader.php, and then begins to upload. And then, the php file waits until the upload is done.
But if i have a little upload rate, the maximum execution time of most common servers of 30 seconds is reached. I think its better to wait until the files are uploaded, and then start the upload managing.
I tried to find out where you touch the upload managing php, but the code is fucking unreadable.
If you could send me an email with the file and number of key code lines, i will try to fix it myself.
If not, i hope you'll fix it if you have time.

Thanks a lot for your work.

Lucius Bachmann

[email protected]

Let concurrency go to one or unlimited

Why leave out 1? The user can decide for himself if that's a bad idea.

Also I think there's no option to disable concurrency control altogether as I recall. That would save precious lines of code traversal that are so valued.

New plugin paging is annoying, please revert

A minor point, just my opinion.

In the old plugin tab arrow key down was all I needed.
Now I have to switch between arrow keys and the much slower operation of first panning to the top or bottom and then finding the next page button.

Also it's impossible to do a cntrl-f (find) on the term "user" for instance now that it's on multiple pages.

Just my $0.02

Development workflow suggestion

I noticed you guys currently only have a master branch where you do all your development.

I highly recommend following a different development workflow, where at a minimum your development would happen on a develop branch, and your master branch is your latest production release.

I wrote an article about a development workflow which can be easily implemented and has the support of a set of new git commands, written in shell, called git-flow (AVH Edition)

Install GitHub zip crashes MAMP server

I downloaded the repository zip file and tried to install on my Mac (MAMP)
Whatever I do, the server crashes with this message:

httpd stopped unexpectedly

My Apache server log shows a number of these entries:

[Tue Nov 13 18:34:06 2012] [notice] child pid 497 exit signal Segmentation fault (11)

I'm afraid this may only be me but maybe someone can reproduce this.

Btw: The Zenphoto trunk works normal.

printAlbumMenu context sensitive in image pages of dynamic albums

When the top album is dynamic, $css_class_topactive can't be added to the album name in the menu if in image page.
it is possible to add the class by adding a few code to printAlbumMenu plugin:

line 200:
global $_zp_gallery, $_zp_current_album,$_zp_current_search;
line 254:
if((in_context(ZP_ALBUM) && !in_context(ZP_SEARCH_LINKED) && (@$_zp_current_album->getID() == $topalbum->getID() || $topalbum->name == $currenturalbumname)) || (in_context(ZP_SEARCH_LINKED)) && $_zp_current_search->dynalbumname == $topalbum->name) {

In zenphoto-1.4.3.5 they are:

line 200:
global $_zp_gallery, $_zp_current_album;
line 254:
if(in_context(ZP_ALBUM) && !in_context(ZP_SEARCH_LINKED) && (@$_zp_current_album->getID() == $topalbum->getID() || $topalbum->name == $currenturalbumname)) {

Make items/links embedded with tinyZenpage dynamic

If you insert images or links they will currently break if you change the domain or move the Zenphoto install to a folder for example. Reason is the links are absolute and static so they work on back and front end the same way.

We need to replace the webpath part with some kind of take like [ZPWEBPATH] we can update by parsing and replacing dynamically.

Fatal error in class-image.php

Admin => albums => choose an album => images tab => click 'expand all fields' => I see that the 'Location' field shows this error:

Fatal error: Allowed memory size of 100663296 bytes exhausted (tried to allocate 523800 bytes) in .../zp-core/class-image.php on line 600

As a result the page breaks after 1 image.

Never had problems before with memory.

No entry in the debug log.

Optional threshold parameter for printTopRatedImages

It would be cool to have an extra optional parameter in printTopRatedImages() that defines the number of ratings an image needs in order to appear in the list.

So for example if you set the parameter to 1 it would prevent images that have only been rated once from being included in the list.

The reason for this is if an image has an average rating of 4.9 from 100 users, that can be considered a higher rating than a 5.0 from 1 user.

This issue moved from TRAC: http://www.zenphoto.org/trac/ticket/2238

Requirements are incompatble with OPTIONAL mysqli use?(update:myql_connect solution found)

See update below that makes this humorous issue far less important:

requirements and suggestions
http://www.zenphoto.org/news/installation-and-upgrading#3
http://www.zenphoto.org/news/zenphoto-requirements

especially given this:

http://kr1.php.net/manual/en/intro.mysql.php
"This extension is not recommended for writing new code. Instead, either the mysqli or"
and this:
http://kr1.php.net/manual/en/function.mysql-connect.php
in red letters:
"Use of this extension is discouraged. Instead, the MySQLi or PDO_MySQL extension should be used. "

Are there any "serious" servers running without this compiled in?

UPDATE:

I had missed this before (and I don't know why I bother since the complaints will shift direction anyway):

php manual on mysql_connect():
new_link
If a second call is made to mysql_connect() with the same arguments, no new link will be established, but instead, the link identifier of the already opened link will be returned. The new_link parameter modifies this behavior and makes mysql_connect() always open a new link, even if mysql_connect() was called before with the same parameters. In SQL safe mode, this parameter is ignored.

I don't know about safe mode, but if that's not a concern we can change the mysqli calla to mysql calls with a newlink parameter and maybe sbillard will have to find something else to be negative about? about a 7 character fix.

I can't tell if it's still considered such a pain that a few actual lines of code even get read even when a conditional is not followed or if the bigger issue was just using a particular library that's standard in all versions of the required software. If it's just the latter, then I think this solves it. Otherwise we need include statements after every single conditional expression.

With a little reworking it's even possible to fall back to the function-db-MySQL functions although they do some unecessary steps and need modifcation to take the newlink request.

So now my solution (they're all my solutions actually aside from the random numbers and slider, I even had to defend flock) is far faster and just needs some "i"'s removed to satisfy negativity of the same voice that said this all wouldn't work in the first place wasn't needed, wasn't useful, post a ticket, did, wouldn't do it, close, doit yourself (I did) recolse, submit elsewhere, basically pick a reason but go away. If this was still in HEAD it would be simple enough to fix. Instead a much slower solution is still in head, because that's better than hammering out some details like this apparently.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.