Drupal 8 TrinityCore module

Hi All,

I currently am working on a Drupal 8 TrinityCore module. It supports the following features:

[ul][li]Realmlist manager (add, edit and delete realms)[/li]
[li]Account manager (create or link account, change password)[/li]
[li]Ban manager (create, edit and delete account/IP bans)[/li]
[li]Ticket manager (shows tickets)[/li]
[li]Public status page of realms (http://example.com/wow/realm-list)[/li]
[li]Public status page of specific realm (http://example.com/wow/realm-list/{realmId})[/li]
[/ul]
Please find attached the source code of this module.

Install instructions

[ul][li]Install Drupal 8 (https://www.drupal.org/project/drupal)[/li]
[li]Download the module code and place the folder ‘wow’ in your /modules folder[/li]
[li]Install the WoW module via Drush (drush en wow) or via the UI (http://example.com/admin/modules)[/li]
[li]Configure the auth database settings[/li]
[li]Configure the characters and world database settings per realm[/li]
[li]Done![/li]
[/ul]
Troubleshooting

The module is configured to write DB errors to the Drupal dblog, you can check this log via http://example.com/admin/reports/dblog. Should you experience errors please post back and include the relevant error messages and logs from the dblog.

Features to be implemented

[ul][li]Manage server settings (not sure how yet)[/li]
[li]Option on realm admin page to show/hide the realm on public status page[/li]
[li]Analyze/cleanup database (not sure about the cleanup since I keep reading on the forums that cleanup can take multiple hours)[/li]
[li]Ticket management[/li]
[li]Support other game versions (currently only tested with v3.3.5a)[/li]
[li]Add custom permissions[/li]
[li]More? Please feel free to make suggestions![/li]
[/ul]
I hope you like it.

Cheers!

Screenshots

Realm list

Realm edit

New account

Linked account

Public realm overview

Public realm status

Downloads

[ATTACH]1984._xfImport[/ATTACH]

[ATTACH]2000._xfImport[/ATTACH]

[ATTACH]2015._xfImport[/ATTACH]

Released v1.1

	[U]Changelog[/U]

[ul][li]Create/edit/delete realms[/li]
[li]Ban/unban accounts and IP addresses[/li]
[li]Basic GM ticket viewer[/li]
[/ul]

Released v1.2

Changelog

[ul][li]Improved realm management[/li]
[li]Added a per realm public status page[/li]
[li]Added zone import (needed for displaying zones on realm status pages)[/li]
[li]Added basic World of Warcraft account management (register new account, link existing account, change password)[/li]
[/ul]
Notes

Due to a major rewrite of the account management parts it is no longer possible to register an account on the Drupal registration page. The module now adds a separate tab on the user page after registering on the Drupal site. On this tab users can create a new account or link an existing account and change their password.

Added screenshots in the first post.

Clean work, but why Drupal? :slight_smile:

Thanks!

I chose Drupal because I simple love it and I am a professional PHP/Drupal developer :slight_smile: . It is stable, very safe and has a Symfony engine. I do not feel like writing user login, creating content, etc myself when there are already great alternatives. Writing these kind of core functions yourself is risky and could lead to a lot of potential security vulnerabilities. Just my 2 cents :slight_smile:

Installed on Ubuntu 16.04 using Drupal 8.4 and getting this error after setting up auth database settings and trying to import zones…

[COLOR=rgb(165,27,0)]An error occured while trying to import the zones data.

It looks like it filled in the realmslist correctly with data from auth though…

pls advise sir Id love to try this out. Am fond of Drupal

Hi Shtoink,

Do you have some more error details from the PHP or Drupal dblog? Do you see zone data in the ‘wow_zones’ table in the Drupal database? The module should have imported zone data from the ‘wow_zones.csv’ file located in the /data folder. Also Drupal 8.4 is still in development and not yet considered release worthy, could you try the latest stable release (at the moment of writing: 8.3.2).

I have been inactive for quite a long period due to some personal circumstances but I will put out a new release including a ticket manager via the SOAP api and teleport (configurable per realm).

The exact error is:

[ul][li]An error occured while trying to import the zones data.[/li]
[li]SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘zoneName’ in ‘field list’: INSERT INTO {wow_zones} (zoneId, zoneName, mapId, areaId) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3); Array ( [:db_insert_placeholder_0] => 1 [:db_insert_placeholder_1] => Dun Morogh [:db_insert_placeholder_2] => 0 [:db_insert_placeholder_3] => 0 )[/li]
[/ul]
It seems he does not create “wow_zones”. I will take a look into your module and try to fix that.