Inactive [ADMIN/WEB] MUkkit v0.1b - My User Web-Based Authentication, Promotion and Control Panel (UPDATE!)

Discussion in 'Bukkit Tools' started by xeology, Feb 16, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    xeology

    MUkkit - My User Web-Based Authentication, Promotion and Control Panel:
    Version: v0.1b

    WARNING: There was an issue with vo.1a not hashing passwords. Please download the patch below, put it in your root MUkkit directory then run "conv.php" then delete it. This will hash out all the passwords and the patch will enforce a hash on every password from that point forward. Thank you!

    If you are a Server User and have used MUkkit before with a password that is the same as your minecraft account PLEASE CHANGE IT!

    Patch for v0.1a to v0.1b
    Patch.zip

    Thank you Tyres for the information, didn't occur to me this would be an issue untill it was brought up!


    Here it is! The premiere of MUkkit! This is replacing NUkkit.

    MUkkit, or My User for Bukkit, is a fully functional control panel for your users to see plugin stats (only two right now, more in future releases!) such as iConomy and Dynmap. It allows them to open Help Tickets, read their warnings, enter sweepstakes, request promotions and soon much more!

    (Please note that new members who are on the server already and ranked will not be promoted where as new ones will!)

    Admins can now take hold of promotions (for multiple permission based ranks), help tickets, warnings, bans (rank bans only as of right now), make sweepstakes and soon much more!

    Bear with me here guys, this is my first big PHP project and in truth I know no PHP and I am using this project to learn! It may be rough around the edges but let me know if ANYTHING is wrong and it will be fixed in v0.2!

    There is a live running version of this on my site for my server! (I installed it from a packed file just like downloaders will on purpose to make sure it was working!)

    WAMP AND LAMP USERS: Please change "error_reporting = E_ALL" in php.ini to
    "error_reporting = E_ALL & ~E_NOTICE | E_STRICT" if you get errors! I AM WORKING ON RECTIFYING all THESE ISSUES!

    Requirements:
    • MySql
    • Bukkit
    • PHP 5.3
    • Permissions (UNTESTED BUT SHOULD WORK) Spyc is incompatible with group prefixes/suffixes
    • or GroupManager (TESTED)
    • Default members should have the command /manload or such
    • Tested on IIS7 and Apache-LAMPP (may be issues with other, please tell me if so)
    • Keep a backup of your users file if you dont want to regret it if something goes wrong!
    • MUST be using GroupManager with Multiworld, files need to be split, IE groups.yml, users.yml
    Install:
    1. Use MUkkit.sql to create new database and tables
    2. Modify web\connections\MUkkit.php to reflect your MySql settings
    3. Modify the variables in config.php to your liking!
    4. Register, it will give you admin based on your in-game rank being admin!
    5. YOUR DONE!
    Features:
    • MySql Copy of registered users
    • Blowfish hashed passwords!
    • Logs IPs and Emails of submitting users
    • Auto-promotes to member in-game with optional admin verification
    • Double checks MySql and flatfile for repeated users.
    • Dynmap is integrated
    • iConomy shows money in My User
    • Help Ticket System
    • Promotion Request System
    • Rank Ban System
    • Sweepstakes System
    Screen Shots:

    [​IMG]

    [​IMG]


    Download The Latest Version
    (It's the top post!)
    (NUkkit remains for those who want it!)



    Credits:
    • MUkkit and all PHP coding - Xeology
    • For getting me started - Samkio
    Special thanks to Samkio solving the refreshing problem in NUkkit, he motivated me to do this project!


    Known Issues:
    • Sweepstakes does not have a panel for admins to set them, please do it manually in mysql until v.02 (sorry forgot about it >.<)
    • Deleting a row in MySql, even though this should NEVER need to be done considering MUkkit keeps archives of EVERYTHING, will completely break anything that relies on that table (except one that I buffered, however it decreases site performance and I felt it was not needed, we shall see!)
    Changelog:

    Version 0.1b of MUkkit
    • Blowfish hashed all passwords upon register, change, login and in databases. MAJOR SECURITY UPDATE GUYS!
    Version 0.1a of MUkkit
    • Fixed Spyc calls to config files, no more rigging to get it to load them, all through config file
    • Updated config file for GroupManager
    • NO LONGER SUPPORTS PERMISSIONS, Spyc doesn't like associative arrays with single quoted data not in a list and it breaks any permission file with prefixes or suffixes for permissions!
    • Updated Spyc with a custom patch to stop it from turning lists into associative arrays on second load
    • Fixed the missing promo table.
    • Broke iConomy, designed it for an older version, in v0.02 it will be mysql based ONLY!
    • This promotes to ALL worlds by mimicing the main world. Basicly all worlds will be mirrored from the first one. (will work on an alternative for this in v0.2)
    Version 0.1 of MUkkit
    • Fixed linebreaks with /r/n (THANKS Samkio!)
    • added @ before $_POST to stop WAMP errors
    • Removed redundant if statement
    • writing up draft for version 0.3
    Version 0.2 of NUkkit
    • Fixed linebreaks with /r/n (THANKS Samkio!)
    • added @ before $_POST to stop WAMP errors
    • Removed redundant if statement
    • writing up draft for version 0.3
    Version 0.1 of NUkkit
    • Releasing NUkkit
     
    weasel5i2 likes this.
  2. Offline

    xeology

    in version 0.3 I will include an option to embed.
     
  3. Offline

    cyberbobjr

  4. Offline

    xeology

    Thanks, that will help with a few new things. I was looking into it before but just saw it as to much work for simply APPENDING.
     
  5. Offline

    GmK

    Can't wait for 0.3!

    Great stuff, I hope for you that the switch to persistence and the proper bukkit permissions system wont be too hard to accomplish :)
     
  6. Offline

    mattylight

    This looks great! However, when I download the zip file, there is nothing in the "connections" folder [​IMG]
     
  7. Offline

    xeology

    Well then lol. Winrar for ya I guess, it was there. AND it is there again now, sorry for that guys, better luck with this one!
     
  8. Offline

    mattylight

  9. Offline

    GmK

    Uh would this still work with a 1.3 server? Seeing how permissions got updated itself, this might not work anymore, or?
     
  10. Offline

    Nekpek

    is it possible to convert this to MsSql and Asp.net 4.0???
     
  11. Offline

    xeology

    You can continue to use the modified version, I do not think there is an issue with it, was a good plugin. HOWEVER I do will be looking at getting a independent plugin for refreshing now that Permissions has some more flexibility with other plugins.

    As for mysql, this already works with mysql. And if asp.net can run php I dont believe there would be an issue, just read up on what the wamp users need to do. (I also found this to be needed for LAMPP users as I now test everything on LAMPP)
     
  12. Offline

    GmK

    Hm, we would love to switch to groupmanager for easier /modgrp support things, but then we will break Nukkit.

    I do guess you wont be able to support both? ;)
     
  13. Offline

    xeology

    I WILL be supporting both. I am going to switch libraries. IT might be awhile, been busy in RL
     
  14. Offline

    GEN3RIC

    Looking forward to your port to GroupManager. I'll have to wait until you get it ready. Do you have any demo sites available? I'd like to see how it works on the front end so I can plan how I'll implement it on my site. Thanks.
     
  15. Offline

    xeology

    I am disconinuing this version of NUkkit entirely considering that instead of .3 I will release MUkkit with the following features,

    • GroupManager Support
    • FULL Permissions Support
    • Built in User Help Tickets System
    • Built in Warning System
    • Admin Control of Ranks
    • Admin Control of Bans (hopefully!)
    • Sweepstakes program
    • Self Promotion! JUST LIKE NUKKIT
    • dynmap support
    • Promotion Requests
    • Multiworld Registrations for multiple world-permission based servers
    • Member status page with iconomy money (hopefully!), rank, ip for reference, warnings and open help tickets.
    I have already started working on it as of yesterday, going smoothly, just playing with some new security and YAML techniques so it may take up to a week or more considering I do this by my self!
     
  16. Offline

    GEN3RIC

    That sounds awesome. I never got to use Nukkit (discovered after I started using GroupManager) but I am curious -- does registration on the web form immediately grant them their group access or is there an ability to have an acceptance queue? So an admin must approval their request?
     
  17. Offline

    xeology

    I have 1/4 of MUkkit programmed, it is going smoothly! So you will not be waiting much longer!

    And you will have that option on installation. (I will TRY my BEST to make it so you can change the configuration AFTER installation as well!)
    --- merged: Mar 2, 2011 10:13 AM ---
    enjoy this release :D
     
  18. Offline

    GmK

    Fantastic news this is - love the look and ideas of this :)

    Only problem - cant get it to work. Nukkit worked flawlessly, MUkkit is also set up fine, only that index.php stays blank.

    Now, if I call for any other page, it shows for a splitsecond and then tries to open index.php (as it is planned/coded). When I take out the PHP code from index.php, it also loads the page fine. So somewhere in the code must be a hiccup :/

    My Permissions config.yml is called spawn.yml, so I replaced the config.yml part in index.php with that, but it doesnt change anything. The tables all exist in the db (I only use a different db name, but thats reflected in config.php), I can run any php fine on my server, and well, am at a loss currently.

    Any ideas? :)
    --- merged: Mar 2, 2011 2:11 PM ---
    Solved it - for anyone having the same troubles (on a linux system esp.)

    Edit index.php
    find the two instances of "$data = Spyc::YAMLLoad" and edit the *path* to config.yml to be the full path to your permissions file (in my case "$data = Spyc::YAMLLoad('/home/smp/plugins/Permissions/spawn.yml');")

    Lets test the rest :)
    --- merged: Mar 2, 2011 2:16 PM ---
    Ok, next thing:

    Signed myself up, tried to login:

    "Table 'promo' doesn't exist"

    That also doesnt exist in the .sql you supply.
     
  19. Offline

    xeology

    I fixed it! Read the changes! Thanks!
     
  20. Offline

    GmK

    Thanks for the update - but you took out Permissions, so now I cant use it anymore at all ;)

    Back to Nukkit. Thanks for the great work!
     
  21. Offline

    xeology

    You CAN use it, just make sure your perfixes dont need to be prefix: '&e' and can be either prefix: &e or prefix: \n -&e. Spyc doesnt seem to like associative arrays containing single quotes >.< I'll have to see about fixing it AGAIN lol. BTW I do nightly fixes that I do not normally announce, only BIG fixes, so feel free to compare the size of the zip tot the one you have if there are changes, I will look into a commit tracker here eventually! I will also look into an appending method for permissions the way nukkt was.
     
  22. Offline

    xezesis

    Don't know if this is me but i dont seem to be able to get the index.php if i change the url to register.php it comes up with the register php but login just seems to be blank ... just read your code and noticed to open index.php it needs to run Connections/MUkkit.php my connections is probably setup wrong i will take a look later
    --- merged: Mar 3, 2011 10:06 PM ---
    Just to add to that it seems my config is fine ive got a very odd problem which is neither the index.php or me can connect to the Connection/MUkkit.php odd anyway got some other stuff ive got to do so i will take a look later
     
  23. Offline

    xeology

    Yeah I took a look at the index and it seems to work ok, thought I broke something on my last commit >.< yeah just check your sql settings, that would be the only thing that would stop it from loading.
     
  24. Offline

    xezesis

    Yer How are you meant to do the sql i noticed some odd bits relating server ip at the top of the sql but they were quoted so they should be ignored?
    anyway i just went to the sql section of php my admin and and posted the code and pressed and clicked go
    im on break at school atm but i will have another look later
    EDIT: Oh and if you want to see my site where im getting the problem www.letsmine.info/apply
     
  25. Offline

    xeology

    Took a look and the source is showing nothing meaning it is DEFINITELY your MUkkit.php file. Sounds like your getting errors with your connection, just verify the data you entered. I verified the config file and it is working ok, infact the same version I am using now :D

    Good luck!
     
  26. Offline

    xezesis

    Can you tell me where ive gone wrong?

    Code:
    <?php
    # FileName="Connection_php_mysql.htm"
    # Type="MYSQL"
    # HTTP="true"
    $hostname_MUkkit = "localhost"; //YOUR HOST NAME
    $database_MUkkit = "mukkit";    //YOUR DATABASE
    $username_MUkkit = "root";  //YOUR USERNAME
    $password_MUkkit = "password";  //YOUR PASSWORD
    $MUkkit = mysql_pconnect($hostname_MUkkit, $username_MUkkit, $password_MUkkit) or trigger_error(mysql_error(),E_USER_ERROR);
    ?>
    mukkit is the database name as checked by phpmyadmin localhost i presume is right root is the username used to access the mysql server and password is obviously blanked out :p
     
  27. Offline

    xeology

    Just as a note we got this resolved ;) (last time I checked lol) I did help him via private msgs, turns out it was an issue with the config file, make sure you dont put users.ym in worldn1 or such it has to be just users or else it will crash.

    I will be rewriting this code soley for groupmanager unless permissions take a hold of the caps issue in the yml files and split the groups and users into 2 files so SPYC doesnt chew up prefixes on people (or SPYC gets a fix for the issue).
     
  28. Offline

    silentdojo

    This is amazing. The only thing I would add is an ability to have 3 mod/admin votes for a user to be promoted.
     
  29. Offline

    xezesis

    Yeah you did solve it xeology :) sadly i've installed McMyAdmin and i dont think it supports MUkkit i believe it uses GroupManager to give permissions ingame but ignores the GroupManager config if this it the case im going to right a plugin for it maybe we could team up?
     
  30. Offline

    xeology

    I am working on a multi-mod requirement for voting, this will be in version two along with reinstated iconomy support and support for a few other plugins.
    I dont know java ._. And have not learned an object oriented language yet. I am pretty much stuck with C++, Python, PHP, HTML, Basic (and derivitives), basic linux and a bunch of 3d progs. Buts java is not one of my skills lol. I could definitely write up some code to output files to be used in the plugin though! Just tell me what you need!

    As another note it should not be ignoring the file, you have to use /manload ingame after mukkit is used, it tells users this btw. Remember to give /manload permissions to everyone though, cant harm anything!

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 9, 2016
  31. Offline

    xezesis

    Nah i learnt some more about it and McMyAdmin has two configs all changes have to be made to its config (which is hidden somewhere) or it will reset the GroupManager config to its one i am going to just ditch group support in McMyAdmin MUkkit is much more usefull
     
Thread Status:
Not open for further replies.

Share This Page