Layout Upgrade

I didn’t want to go too Web 2.0 trendy, but went ahead and did the stripes anyways. After I spent hours working on making the image, I wanted to make a script that would do it automatically given some specifications. Then I thought of searching to see if someone else had done it. http://www.stripegenerator.com/ ended up having just what I needed and I am using that image now instead.

So the navigation was moved to the top and the other crap was pushed to the right out of the way.

I’m not sure if I want to do shiny buttons for the navigation or not since it seems to look fine now.

To Follow CyTE’s Authorization

The page class has a variable called current_user which is an object of (user) which extends visitor which extends data_access. Visitor has a variable called authorizer which is an object of (defauth) which extends authorizer.

() = developer designed and the name is in the configuration file or passed to page.

Page
Has variable current_user which is an instance of (user) and passes to the constructor the routine, level, and parameters for the authorization.

(user) extends visitor
Has authorize, deauthorize, and meets_credentials functions. Authorize uses the authorizer and returns true or false based on the results. Deauthorize sets authorized to false. Meets_credentials will check a set of credentials against the values of the current user to see if they can perform some task without changing their login status.

Visitor (abstract) extends data_access
Has variable authorizer which is an instance of (defauth).

data_access (abstract)

(defauth) extends authorizer and is an auth routine
Has a function check_auth which will check if the user is authorized.

authorizer (abstract)
Has a reference to the current user. Contains some heavily modified PEAR Auth code. May be rewritten completely soon when implementing LDAP control.

Server ATTACK

I got an e-mail saying that a server I administrate was attacked. There weren’t any details in the message, so later I find out that there was porn posted on the forums. Sounds like spam bots found the phpBB installation and had some fun.

OMG take the server offline immediately!!

MySQL Fun

Trying to find a way to update a bunch of records in the request table by changing request_taken_time to a value in another table. The problem is, there are multiple records in the history table so there will be duplicate queries and it may not get the most recent time which is what is wanted. I can’t use group by on an update and if I can’t use group by then I can’t use the MAX function. So it will basically update the records multiple times and won’t get the highest value like I need it to.