Drupal DKP

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
Indemnity83's picture

I've started working on getting DKP into our site. For now EQDKP is actually managing the DKP, and Drupal is simply querying the database directly but its a start. I'll keep things up to date in this Discussion on the progress as much as I can.

Check it out here: http://www.covenant-guild.us/?q=dkp

And the Wiki Page: http://groups.drupal.org/freelinking/DKP%20Module

As soon as jluster is able to get his toon management module available I'll start the real work of making a DKP system from scratch inside Drupal.

And yes, to get our site off the ground, I borrowed from Downfall heavily.

Comments

Is it just me, or is it not

Bojhan's picture

Is it just me, or is it not working?

Its back up. Been doing some

Indemnity83's picture

Its back up. Been doing some work on the site so you may see it go up and down on occasion.

Impressive

jesepi's picture

This is very similar to what I was looking for. A way to query the EQDKP database and return information. The only difference is that we do not use a DKP system, it is officer assigned loot. Regardless, our officers and members do like to see what items they have recently received and on what dates. Even moreso when new loot is being handed out.

Also, how did you go about doing the itemstats pages?

I can probably package up

Indemnity83's picture

I can probably package up what I've got right now actually if there is interest in it. I started developing the Drupal integrated one independent of eqdkp but its not ready yet.

To get the mouse-over item stats on the loot I'm actually not using itemstats. I'm making a call to a function from the Drupal Warcraft Tooltips module

As far as a fully integrated Drupal module here's where it stands and what remains.

Coded Features & Functions

  • Ability to Alias Drupal users with their in-game name(s)
  • Add/Edit/Delete Events
  • Add/Edit/Delete Adjustments

Still Under Development

  • Add/Edit/Delete Raids
  • Add/Edit/Delete Loot
  • MorgDKP Integration (because thats what our guild uses)

Key Roadmap Items (not likely to show up in initial release, but planned for future)

  • Ability to track DKP in separate 'Pools'
  • Ability to track DKP on non-Drupal uers (PUGS and/or members who haven't signed up on the site yet)
  • Ability to transfer all history from one member (or pug) to a user
  • Integration modules for other In-Game DKP Tracking systems (RaidTracker etc)

I would be really pleased if you release

SQP's picture

I wanted to develop the same module for my guild website. So I would be really pleased if I could start from your work and help you develop it.

I already got a block which list the last raids and loots. It's actually just grabbing the data in the EQDKP db and display them, and was starting to list the raids, when I remembered your thread

5.x-0.1-dev

Indemnity83's picture

Its still a developmental version, lots of hard coded things that should be turned into admin options. But here is the version that pulls data from an existing EQDKP installation.

http://indemnity83.com/projects/#drupal-dkp

Make sure you read the readme, and make comments there if you find any bugs.

Thanks, and here is my modded version

SQP's picture

Indemnity, I really enjoyed your work, and it wasn't too hard to expand it somehow to get some new functions, and links everywhere.
That's why, as I said, I'll give my work back

Added pages (these pages are analog to those in the standard EQDKP install) :

  • Raid view
  • Item view
  • Event view
  • Events list

Since I changed all members, raids, items and events references to links to their pages, I choosed to merge all
data in 8 types, each called by a small function :

  • members, raids, items and events
  • date, value, text, percent_bar

The result is a cleaner code with easier maintenance. All those small functions (1-3 lines) are now called from everywhere in the module to allow a fully browsable database, exactly as with the EQDKP website. If you know a better method to handle those datas, let me know.

Anyway, that code summary already allow me to add some options easyly. Those I made are

  • Change the date format
  • Change the item linking engine
  • Color member name with class color
    They are still hardcoded, but it won't be hard to set admin options for them. You can find them by searching the string 'EDIT :'

I also added an option to display a link to the admin edit page on every query row.

As I needed to test it on my drupal 6 guild site (which will be soon ready for production), I splited the database and output functions in a separate file, to only keep the module management part in the main file. The v6 is working like a charm and I'll be ready to implement admin options. To test the Drupal6 version, just replace the .module and .info files with the .module6 and .info6

I did not found any working link for the warcraft armory module, so I switched to Lootz, but as it has no cache options, It can lead to a slower browsing. If someone can give me a working link to warcraft armory module, I'll be happy to see how it works

so I switched to Lootz, but

professorbikeybike's picture

so I switched to Lootz, but as it has no cache options, It can lead to a slower browsing

Lootz is designed to make extensive use of caching internally (all items are cached by id/name), and also via the normal Drupal filter caching (all matches found in text are cached in the cache table). If it isn't could you provide more details here:

http://drupal.org/project/lootz

Thanks.

Looking for AJAX Help

Indemnity83's picture

My work on the fully Drupal DKP module has been stuck for some time at creating the interface, and I need help from somebody know knows a good deal about AJAX (or similar) and the Drupal forms system to help me implement the following features (we can go over more detail in private).

The idea is to create an entire raid from a single interface. Even if some members don't exist we should be able to add them directly from the "add raid" interface.

I need a form element, similar to the file attachment where the user entering the raid can type a raid members name and then clicks the "add to raid" button. Behind the scenes we need to make sure the name isn't blank (if it is, return some kind of error/notification). If the name matches a Drupal username, great insert it into the raid (add a line with their name, and a hidden form element with their uid). I also have a table of aliases, so we need to check that table next to see if the name matches there, if it does do the same thing (add name to list with hidden form element).

Thats not necessarily the hard part (although I haven't coded that yet either). Here comes the more difficult part.

If the name is not blank, not a Drupal user, and not an alias we need to present another form over-top the rest of the page which gives the user the ability to A) add a new Drupal user with that name or B) alias the name with a drupal user (and in the future option C) create this user as a PUG). Once the user is created we can again, add them as a name in the raid list and put a hidden form element on the "add raid" form.

A similar process needs to be created for adding loot to the raid (again, on the same form).

Again, I need help to create it though. It goes well beyond my experience with server AJAX. You can email me at kklaus * indemnity83.com if your interested in helping. Thank again.

members and non members

jesepi's picture

Even if some members don't exist we should be able to add them directly from the "add raid" interface.>>

Thats a big thing. It is hard enough to get these guys to check the forums on a regular basis. Signing up for yet another part of the website has proven rather difficult.

If the name is not blank, not a Drupal user, and not an alias we need to present another form over-top the rest of the page which gives the user the ability to A) add a new Drupal user with that name or B) alias the name with a drupal user (and in the future option C) create this user as a PUG). Once the user is created we can again, add them as a name in the raid list and put a hidden form element on the "add raid" form.>>

I'm not sure how drupal's data structure works, but it might be better to just look for a raiders name in the drupal user table and if it doesn't show up just treat it as a string of text? Though, I guess if you're using drupal as an entire solution for running a guild site, you're going to have the majority of users registered if they're serious about raiding. We are already using vbulletin, though. Makes things interesting.

Is this project still active?

alpha2211's picture

Hi everyone, I just thought I'd express my interest in this project & ask if Indemnity is still working towards a pure Drupal solution?

I've just started developing a Drupal site for a warcraft guild myself & would love to have a fully immersed Drupal DKP module.

I'm not too proficient with AJAX myself but we all have to learn somewhere right? I'd be happy to jump on board & lend a helping hand wherever I can. I'll throw you an email if I don't hear anything on here.

I have not moved forward

Indemnity83's picture

I have not moved forward with any new development