Sign Up! Login: Password: New User? Forgot? Support
Top Mods!
Wowhead Search
by sonofsamedi
Digital Clock
by Wolfar15
Admin Forums
Welcome to the GuildPortal Help Community! These forums are for admin-to-admin help.
Available Forums
Forums : Pimp My Site! > Mortis Gladius (EQ)
536885761_Inactive (New Admin) 5/10/2004 6:23 PM EST : RE: Mortis Gladius (EQ)
536885761_Inactive
Posts: 3977
Zomgawsh Poster

name="2539572">

Someone here not too long ago shared the idea of a “Needs List” forum so everyone knows what everyone else in the guild is working on. We tried that out for a while and it worked pretty well, but being the overachiever that I am (or maybe it's just because of the never-satisfied guild officers that we have in MG ) I took it to the next level.

Using an externally-hosted mySQL database and a combination of PHP and XML/XSL (displayed in an XML transformation content box), I set up an interactive system for tracking ongoing needs, including a way to “sign up” to meet a need. For example, Guild_Member_06 needs Saltwater Seaweed for blacksmithing, and Guild_Member_42 needs Fresh Fish for baking. I pledged to supply a certain amount of each, since I can get them both at the same time fishing in Ocean of Tears.

I guess it's more easily explained by viewing it, so go to http://www.guildportal.com/Guild.asp?GuildID=2002&TabID=9801 and click the “Needs” button to see what I'm talking about.

Incidentally, this system is a “proof of concept” for Aaron - hopefully he'll implement something like it (but with actual authentication and other goodies) for all of us some day

TopBottom

536885761_Inactive (New Admin) 5/10/2004 6:23 PM EST : RE: Mortis Gladius (EQ)
536885761_Inactive
Posts: 3977
Zomgawsh Poster

name="2539573">

Bah, double-post. I swear I only clicked “submit” once!

TopBottom

Sadia (Guild Admin) 5/10/2004 7:15 PM EST : RE: Mortis Gladius (EQ)

Sadia
Posts: 1484
Zomgawsh Poster

That is AWESOME!
TopBottom

Rhomany (New Admin) 5/10/2004 9:53 PM EST : RE: Mortis Gladius (EQ)
Rhomany
Posts: 2181
Zomgawsh Poster

OMG! /me wants one!
That is SO cool!
TopBottom

Arathel (Guild Admin) 5/12/2004 8:41 AM EST : RE: Mortis Gladius (EQ)
Arathel
Posts: 1084
Zomgawsh Poster

*stands in line with hand raised*
I want one too please!

Arathel Thornoak
Legendary Bloodlines
FIPPY DARKPAW:
Freiya 52 Barbarian Shaman - Liathano 46 High Elf Cleric - Mistical 19 High Elf Enchanter - Grianne 20 Wood Elf Druid - Izeult 20 Dark Elf Magician - Jihana 12 Human Ranger

DRINAL/MAELIN:
 Arathel Eideann 83 High Elf Cleric - Jihana Mytherian 75 Human Ranger - Katreena 55 Vah Shir Beastlord - Lysandre Lhoirran 52 High Elf Paladin
 Mysticol Illuzion 43 Dark Elf Enchanter - Raewyn 40 Half Elf Bard - Izeult 38 Dark Elf Shadowknight - Grianne 46 Human Druid
TopBottom

Hatsepsut (New Admin) 5/13/2004 1:53 AM EST : RE: Mortis Gladius (EQ)
Hatsepsut
Posts: 326
Fingers of Fury!

Impressive.

Do you use an external hosting service for the db connectivity or how is it set up?
TopBottom

536885761_Inactive (New Admin) 5/13/2004 6:37 AM EST : RE: Mortis Gladius (EQ)
536885761_Inactive
Posts: 3977
Zomgawsh Poster

name="2559697">

The data is stored in an external mySQL database and is served up in XML via PHP from my personal website. All of the supporting pages (edit task, add task, volunteer, etc.) are PHP on my website as well.

My kludgey authentication involves a modified version of the same Javascript functions Cicalla provided in the DAoC forum for determining the current GP user. The Javascript is loaded right from the XSL page (that was a biatch, let me tell you) and determines whether the user is a member of my guild. If not, it changes all the links (add task, edit, etc.) to point to a page that says something like “The Needs List is available to MG members only.” Otherwise, it slaps the user name onto the relevant URL's so that when they add a task or volunteer for one, their user name is automatically filled in (READONLY), and when they go to edit or mark a task complete, they can only do so for their own tasks. (The validation happens after the user tries to submit the edit/mark complete page.) On the PHP end, there's a list of valid officer usernames that allows MG officers to edit any task (not just their own) and mark them complete, for those members that still need to be hand-fed once in a while.

Overall, I'd say that this was about 40 hours of coding; maybe slightly more. (The bulk of it was on the XSL side.) My girlfriend hates me and I haven't slept in a week, but I'm pretty happy with the end result.

TopBottom

Sadia (Guild Admin) 5/13/2004 8:59 AM EST : RE: Mortis Gladius (EQ)

Sadia
Posts: 1484
Zomgawsh Poster

name="2560685">

ACK I have mySQL, php, and XML capabilities on my personal webspace, but sadly I have no clue how to do all that coding. I added a phpbb forum once and that was step by step explained. Then I moved the site and I don't even know how to remember the forum db. Some days... I just feel so blonde.

Great work Witlan and if you ever feel like sharing, I will be one of the first in line trying to figure out how to make it work.

~ Sadia

TopBottom

536885761_Inactive (New Admin) 5/13/2004 10:59 AM EST : RE: Mortis Gladius (EQ)
536885761_Inactive
Posts: 3977
Zomgawsh Poster

Well, for starters, there are two mySQL tables:

tblMG_Needs has the following fields:

nTaskID (int, auto_increment, primary index)
sMemberName (text)
sNeededItem (text)
nQuantity (int)
sDetails (text)
bCompleted (int)


tblMG_Volunteers has the following fields:

nVolunteerRecordID (int, auto_increment, primary index)
sMemberName (text)
nTaskID (int)
nQuantity (int)
sComments (text)


The files named addtask.php, edittask.php, volunteer.php, and markcompleted.php handle all the input to the database.

The files needsxml.php and printerfriendly.php handle the output of the data. The file needsxsl.xsl handles the transformation. The file nonmember.php gives the message that someone isn't a member of the guild and therefore can't use the system.

A zipped copy of my sloppy, poorly commented, not-so-neatly-formatted code (the above files) is located here if you want to look at it. I'll help out a little if someone who knows what they're doing wants to take a shot at porting it over to their own site, but due to the number of times my head a sploded during the course of this coding project, I really can't “teach” someone how to build the whole thing.

You'll need to know at least the basics of setting up your tables in mySQL, getting the PHP files online, and making minor edits to both PHP and XSL. (You'll also need external web space that supports both mySQL and PHP.) The code above is provided “as is” without any implied or expressed warranty, etc. (insert standard disclaimer here).

If you DO use this system, please credit me somewhere so I can recover some of the self-esteem I lost by watching a project originally estimated at about eight hours turn into forty.
TopBottom

Deleted User (New Admin) 5/14/2004 3:55 AM EST : RE: Mortis Gladius (EQ)

Deleted User
Posts: 0

You Da Man!
TopBottom

Admins Online
There are   members online.
So-and-so has logged on!
%title%
%message%