If a normal user tryes to download a zip archive of an album he gets this error:
`Fatal error: Class 'album' not found in ***/zp-core/functions.php on line 550`
Zenphoto version 1.2.5_RC1 [3982]
Everything works fine for admins with edit rights on the album.
Comments
http://www.antonioranesi.it/temp/
The only real album is Test, Portfolio is a dynamic album
I was trying to require class-load.php in functions.php, shame on me!
If I use that function for an album with subalbums I get a lot of warnings and no output.
If the album is in the roor folder (albums) then the zip file is created but displayed as plain text in browser, after this warnings:
`
Notice: Undefined variable:
zip in /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 31
Notice: Undefined variable:
zip in /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 31
Warning: Cannot modify header information - headers already sent by
(output started at /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php:31) in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 80
Warning: Cannot modify header information - headers already sent by
(output started at /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php:31) in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 81
Warning: Cannot modify header information - headers already sent by
(output started at /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php:31)
in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 82
`
If the album is inside another album then the zip file is not created at all and I get this warnings:
`
Warning: chdir() [function.chdir]: No such file or directory (errno 2)
in /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 25
Warning: opendir(/home/web/www.antonioranesi.it/www/temp/albums/Diocesi_Civitavecchia/S.Agostino_Civitavecchia/Diocesi_Civitavecchia3133OT03/)
[function.opendir]: failed to open dir: No such file or directory in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 26
Warning: chdir() [function.chdir]: No such file or directory (errno 2)
in /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 25
Warning: opendir(/home/web/www.antonioranesi.it/www/temp/albums/Diocesi_Civitavecchia/S.Agostino_Civitavecchia/Diocesi_Civitavecchia3133OT01/)
[function.opendir]: failed to open dir: No such file or directory in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 26
Warning: Cannot modify header information - headers already sent by
(output started at /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php:25) in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 80
Warning: Cannot modify header information - headers already sent by
(output started at /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php:25) in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 81
Warning: Cannot modify header information - headers already sent by
(output started at /home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php:25) in
/home/web/www.antonioranesi.it/www/temp/zp-core/album-zip.php on line 82
PK
`
Actually in the second case the directories are wrong. They sould be like:
Diocesi_Civitavecchia/S.Agostino_Civitavecchia/3133OT01/
not
Diocesi_Civitavecchia/S.Agostino_Civitavecchia/Diocesi_Civitavecchia3133OT01/
edit:
If I add `$zip` to `global` in
`function zipAddSubalbum($base, $offset, $subalbum)`
The first case works as expected!!
In `function zipAddSubalbum($base, $offset, $subalbum)` I replaced line 22:
`$new_offset = $offset.$subalbum.'/';`
with
`
if ($offset != "" AND strpos($base, $offset)) {
$new_offset = $subalbum.'/';
} else {
$new_offset = $offset.$subalbum.'/';
}
`
This seems to work, but I tested it only for my own case, as described above...
So that:
`Diocesi_Civitavecchia/S.Agostino_Civitavecchia/3133OT01/`
becames
`Diocesi_Civitavecchia/S.Agostino_Civitavecchia/Diocesi_Civitavecchia3133OT01/`
printing zip from `S.Agostino_Civitavecchia`
With my code the problem is fixed but I suppose that the real error is somewhere before...