DiigIT | IT Community
No Profile Image
Welcome Guest
New User? Register | Login

PHP/MySQL Photo Gallery Manager

By: | 13 Feb 2009 3:21 am

Hi,

I have been involved in PHP/MySQL for many years, from custom coding
dynamic sites to leading teams in Web analysis and design, programming
(various languages, Quality Control/Qualit Assurance, IT, and Tech Support
departments for some large corporations. Unfortunately, I became disabled
a fears back (due to my back) and have not been as active as I want. I am
involved in my homeschool son`s group, teaching a class when I can,
providing technical help and resources, and helping when able.

I am looking for an app, set of scripts, that can do the following:

1. Utilize PHP 4/5, MySQL 4/5, run under *.nix/Windows, Apache 2.0 (pref).
WAMP or LAMP type system
2. Be security driven thru roles/users
3. Allow creation of gallery: OWN/Create one per login. Upon Validation of
the email or through an admin console.
4. Become a ROLE in another gallery: GUEST, FRIEND, SHARE, SUPER, OWNER,
ADMIN (all access to all)
Ideally set up and manage ROLES. if not, initial access
GUEST-Only allowed to view, if gallery allows guests
FRIEND-Invited/allowed in to the gallery (view only). This invite can
be through gallery admin on Owner side, or through a shared password
SHARE-Allows Friend level to view, may upload to an incoming dir only,
size restriction set by owner.(log all, admin has abil to
move/keep/del
SUPER-Same as SHARE but may move/del files from the incoming to any
gallery they have the password to use.
OWNER-Creates structure of gallery. Subfolders, descriptions, layout
(choices), Approve users to their gallery (making a friend), inc/dec
access levels 0-not allowed in (BAN NOTICE)-sent alert to admin of site,
1-friend ..6-owner.9-admin
ADMIN-has full access to all dir, login accounts, secruty, logs, etc:
override all

Galleries:
1. Create sub-gallery (Folder) all parent permissions apply, but may
password protect gallery,
once n the user has all features of their role. (need
add/change/rem password)
2. upload mass files/zip to a gallery (sub-gallery)
3. User gallery admin page, finds new files in gallery, table form update
(shows pic and filename)
user add description, Date-of-Picture, Names (text blob) in photo,
search words
4. admin page ability to add new files to listing, modify listing entry
(date-of-pic, description, names, etc)
5. remove pic, empties it from db, delete from gallery, log event
gallery-log
6. move pic, moves from one sub-gallery (or gallery) to another
sub-gallery, mod db entry, log to gallery log, move pic
Users:
1. Add new user: via admin console or self create/validate
Auto create folder-top_level_gallery
set permissions to him being owner
create a userllog for the gallery
create a gallery_list log for user

2. Add user to a category
User found gallery listing, request to OWNER allow access
If access-password is provided user is auto enrolled in gallery
OWNER can manually add them to the gallery userlog, as friend
first. They can view any unprotected dirs
once accepted: add gallery_id to friends->gallery_list
add friend->ID and level to
gallery_owner->userlist

3. Owners can create sub-galleries (folders) and password protect them.
Knowing a password will allow a user to access the folder with whatever
rights they have to the gallery. Users can request access to a folder.

4. Guests can only access unprotected galleries, they do not increase to a
friend just by entering, need req/approval or password to another folder
underneath.

5. Users may report other users to the admin. They man ban the user (throw
them out of their gallery, with a notice). The user and admin will receive
the notice. Admin need ability to block IP`s, users. also lookup (keep in
log of logins with ip and all info)
If blocked they can still access other galleries.
If BANNED they may not enter the site at all, BANNED SCREEN and ability to
petition for unbanning (enable/disable depending on abuse by ADMIN).
Normally wont be blocked unless 3 or more complaints about a user,
inappropriate (against my posted rules), failure to follow requirements,
anything in Terms of Use. Need ability to block by user, ip, domain name,
others

5 Removed users will have their gallery archived (in case of problem),
files and galleries removed, then remove all Users from his galleries
list, using note system on login, user will be notified they were removed
from his gallery. User is removed from all galleries in his gallries list,
again notification to gallery_owner, user was removed. All to be logged in
his account log. account log and zip to be moved to a securefolder,
pending backup and removal (within 30 days for appeal).
Account log -> who he visits or mod accounts to his gallery, login tod/ip
stamp
Gallery log -> who visits, tod stamp, ip stamp, new/del galleries, changes
to passwords, stores all

ability to access admin function that archives logs into userlog, daily.
new start.

These are the basic features I would like. I have found some that do a few
of the things. 1and1 uses flash but allows only one gallery, you can
password protect it but not more than that. Initially I may just use a
password system to grant access, but would likteto move to a finished
product.

I realize this is an incomplete RFI or needs req, but wanted to start with
something. If I cannot find one, I may have to create it and depending on
my back, I am not sure how long that will take. It would be great if there
was a set of PHP scripts/app that can do what I need.

Is anyone familiar with any album apps that do this (preferably open
license/freeware). I am doing this mainly as a family/friend site and
homeschool access. It is similar to facebook/myspace in general ways but
neither these nor the other php apps I looked at specs on, has the
features/price we want as a whole. In this instance I cannot spend money
(esp that which I do not have :) but do have sporadic time blocks to work
on the project.

e.g. if this sounds interesting to you and want to collaborate on a
project, I can fill out the specs form and go from there. However,
honestly I hope this already exists somwhere and somewhat close to the
needs

Comments

Hi ,

I haven`t seen any freeware package that conforms to your
requirements.

I doubt one exists at a reasonable price due to your extended permission
specs. I hope someone can correct me on this.

I to am stuck in a similar position. I have a site with nine subdomains that
are supposed to work into a central forum system. One unique requirement is
giving me a hard time. That is the ability for guests to post without
registering. I installed phpBB and attempted to mod it but I am now
considering a rewrite do to excessive SPAM (more later).

You mentioned php4/5 and *nix and cough cough windoze.

I wouldn`t bother with php4 compatibility as it is history now. I work with
*nix and I am not such a sadist to use windoze on an online server. I do run
a WAMP on XP for development. I am using the latest version of WAMPSERVER.
The previous version was a bit of a pain so I used UniServer but I now feel
the latest version of WAMPSERVER is better.

As for mysql versions, the more recent the version the more extended
features it has that I will probably never use.

I think you just about spelt out the full sql table structure in you
original post. There is some tricky querie logic but it is otherwise run of
the mill sql.

I wonder if you need a literal folder structure or just a virtual system for
the browser. Creating literal folders can introduce many security and
permission problems especially on a windoze platform. Most of these problem
show up en mass when you shift the site to a new server. You could just give
the files unique names and have them in one folder (preferably outside the
HTTP tree) and have the sql/frontend simulate a folder structure. This would
work but don`t ever loose your backup or it will all be toast.

If you are going to run the final site on a WAMP server then you can get
away with putting the images in the sql. This would work ok on a fast PC
with lots of ram but it is not something that hosting providers would
appreciate or even allow in many cases.

This sounds like a reasonably sized project so I think it would be best to
presume that the site is going to end up on another server on the net some
where. Perhaps to prepare for this in the planing stages.

Back to my current issues.

It looks like I will never get phpBB to be useful for guest posting so I may
need to write my own BB system.

CAPTCHA can deal quite well with the bots but it doesn`t stop the human
spammers. And there are many promoting pornography MEDS etc.

I have been struggling along with IP ban lists but I am ready give up on
them altogether.

I need a system where posts that contain links or images are set to need
approval before being displayed on the site. Perhaps a banned word filter as
well, to flag them as needing approval.

I could probably mod phpBB for this but the table structure is unsuited to
my needs anyway. It is really not set up for independent forums that have
some common elements. It will also always be a magnet for spammers.

My problem is that I have very little experience in mysql. This will be my
first site that has custom sql. In the past it has been too easy to plug in
some premade package that is close enough to what I need.

I am relatively new to php as well (about 3 years) I can script well as I
have extensive experience in other languages but I am not fully ware of
compatibility issues that arise in different server setups. My server has
php running as a CGI so my script run with my privileges and this makes
things easy. I am however aware of many of the issues form past site
maintenance. Nine out of ten issues arise from folder/file permission`s.

So to sum it up, we may be of assistance to each other if you are able to
fill the gaps in skills.

I am also some what restricted, I am unemployed due to a permanent back
injury along with some other ailments. I also have two distractions. One
aged 12 and the other aged 13. Unfortunately there is no other adult
distraction to keep the child distractions distracted. ie - I am a singe
parent.

I was working from home for a hosting provider but when it got to 12-14
hours a day, I had to give it in - it was wrecking our family life.

If you are interest then you have one skill that would enable us to work
together. That is your history as a team leader. I am not good at project
management. I am more comfortable just following instructions for a series
of tasks rather than trying to manage the overall picture.

Perhaps some mutual assistance should you decide to go with custom scripts?

Thanks.

By: | 13 Feb 2009

Leave a comment

Enter the text in the image
img
Can't read?
Type the characters you see in the picture below.


Close Move