[WEB/ADMN] - Webukkit v0.beta9.5-fix3

Discussion in 'Bukkit Tools' started by cyberbobjr, Feb 12, 2011.

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


    Version: v0.9.5-fix3
    Webukkit is a http interface for Bukkit.

    • Stats pages : top 10 builders, killers, travelers, etc. based on the Stats Plugin
    • GUI Plugins (see screenshots) for :
      • Permissions plugin
      • Achievements plugins
    • Show a map of your world (with an url like dynmap or a image file like mcmap)
    • Show/modify/backup your plugins configuration files
    • Access to some commands of TCP Plugin (http://forums.bukkit.org/threads/admin-dev-tcp-interface-for-bukkit-v1-1-297.746/) :
      • Send a message to a connected player
      • Send a message to all players connected
      • Kick a player
      • Display player's inventory
      • Destroy an item in the player's inventory
      • Give item to a player
    • Access to Remote Toolkit Plugin (http://forums.bukkit.org/threads/ad...view-full-remote-console-access-r10-a7-1.674/) :
      • Restart server
      • Restart forced server
      • Stop server
      • Stop Minecraft server
      • Start Minecraft server
      • Send console command and watch the result (ban, kick, op, deop, deban, etc.)
    • Interaction with Permissions plugin : allows users to register and be automatically listed in the Permissions plugin with a choosen world and a choosen group
    • Access to the server log
    • Theme support, you can made your own theme ! (Minecraft theme is provided, see screenshots)
    • Permissions for the website : ability to access map & stats pages for public/registered users
    Planned/Todo :

    - Edit profile for users : add avatar option for stats pages - (not started yet, planned for the 1.0)
    - Signature generator : make signature with player's stats - (not started yet, planned for the 1.0)
    - GUI for GroupManager : i'm waiting for the YAML fix or for the SQLite version of GM...
    - Mini blog engine : add posts and comments in the Public interface (not started yet, maybe for the 1.0 version)
    - Replace TCP Remote Plugin by my own plugin : RemoteTCP (http://forums.bukkit.org/threads/dev-remotetcp-v1-0-crypted-server-query-602.10506/), more secure, more faster.


    You will need :
    • HTTP server with mod_rewrite support
    • MySQL 5
    • PHP 5.2 or greater (or PHP 5 but with json package)
    Download (open)

    You can download the archive here : http://code.google.com/p/bukkit-webadmin/downloads/list

    You can access the source code here : http://code.google.com/p/bukkit-webadmin/source/checkout

    Screenshots (open)

    Webukkit permissions (Theme : minecraft)
    Gui for Achievements (Theme : minecraft)
    Stats page (with Stats plugin) (Theme : minecraft)
    Installation Windows
    Connexion Windows
    Configuration Windows
    Map Windows (with dynmap)
    Map Windows (with integrated viewer - mcmap example)
    Log Windows
    Plugin Editor Windows
    Status Windows : Server command & Player command & Player inventory
    GUI for Permissions plugin

    Installation (open)

    A tutorial was write for installation, look at this : Tutorial step 1

    You must have an HTTP server AND a MySQL base AND PHP Version >5.2 (for json thanks to zajacmp3 ;))
    1. Unzip the archive in your html root folder.
    2. Go to http://yourserver/index.php/installer/ and follow instructions.
    Linux Users, attention :
    • The files unzipped must be owned by the apache group !
    • If you want to modify config file for plugins, the minecraft directory must be writable by the apache group !
    Install these scripts to the same server that host Minecraft if you want to edit config files of plugins.

    If you want to use TCP Bukkit Interface, it's must be configured with this option :

    Upgrade to 0.7 (open)

    From 0.5beta : please don't do an upgrade with the 0.5beta, it's better to do a fresh install.
    From 0.6beta : is not necessary, uncompress the 0.7beta archive and run it's enough.

    Instructions :

    1. Unzip the archive into your Bukkit Webadmin directory (be careful to the rights)
    2. Go to http//yourserver/updater and generate the tables you don't have.

    Interaction with Permissions plugin (open)

    I've tested this functionnality with Permissions Plugin 2.1.
    Be carefull : do a backup of your config file "yml" before.

    This functionnality let your users to register on the site and automaticaly be added to the Permissions Plugin.
    You choose the default group and default world for new users.
    This functionnality is not mandatory, it's an option, you can choose to activate it or not.

    For enabling this functionnality, go in the config menu, check "Use Permissions plugin" and choose the default world and default group. The group list is calculated dynamically on the configuration file of Permissions plugin.

    Each time a user registers on the site, a new entry is added into config "yml" file of Permissions plugins. If you use the Nukkit plugin (http://forums.bukkit.org/threads/ad...-web-based-authentication-and-promotion.4631/) the permissions will be automatically reloaded, if not you must reload manually configuration of Permissions plugin.
    If you want to reload automatically permissions plugins, click on the chekbox "Reload permissions after new register ?" (warning it's experimental). You must have RemoteToolkit Plugin enabled and correctly configured.

    How to made your own theme (open)

    Theme files must be in the directory /theme
    The name of the directory will be the name of your theme, it will be visible in the config menu.
    In your theme directory, make CSS and IMG directory.
    Inside CSS, put your ... CSS files :) You must have 3 CSS :
    • "default.css" - General CSS for the website
    • "jquery-ui-1.8.9.custom.css" - You can generate CSS at this url : http://jqueryui.com/themeroller/
    • "selectmenu.css" - CSS for the dropdown langage selector
    Inside IMG, put all images files necessary for your theme.

    For example, you want to design a theme called "NochtheBest".
    Create a directory named "NochtheBest" in "Theme" directory.
    Create a CSS and IMG in "NochtheBest", copy your CSS and IMG files inside them.
    You will have :
    \ - Theme
    \ - NotchtheBest​
    \ - CSS​
    \ - IMG​

    Done! You can change your theme in the config menu to "NotchtheBest"

    Changelog (open)

    version 0.9.5-fix3 - 2011-04-16
    • Fix a bug with achievement editor
    • Fix a bug for the path of items.txt
    version 0.9.5-fix2 - 2011-04-14
    • Fix for Stats & Achievements v0.9
    version 0.9.5-fix1 - 2011-03-22
    • Remove test menu :p
    version 0.9.5 - 2011-03-21
    • Add SQL support for Stats & Achievements plugin
    • Add support for Stats & Achievements plugin v0.8
    • Fix a bug for a trailing slash in the main root url
    • Add singlequote instead of doublequote for YAML config file
    version 0.beta9 - 2011-03-13
    • Add theme support
    • Add permissions for website (for stats & map)
    • Add stats pages (with Stats plugin)
    • Add group and user management for webukkit
    • Add GUI for Achievements plugin
    • Add an option for reloading Permissions plugin when a user is registered (experimental)
    • Full french translation
    version 0.beta8 - 2011-03-11
    • Add a php version check for the installer
    • Add a langage selector (French is translated "petit à petit") - Thanks to Amrac !
    • Add a GUI for Permissions plugins
    • Modify the registration system for new users into Permissions plugins, add the world option
    • Fix a bug with trailing slash in the minecraft path
    • Fix a bug in core.php for the UTC time zone
    Version 0.beta7 - 2011-03-01
    • The name is now "Webukkit" instead of "Webadmin Bukkit"
    • Subdirectory feature : you can now install Webukkit in a subdirectory instead of a root web directory
    • Add an edit button for editing template plugin
    • Fix a bug images displayed in inventory when you use subdirectory
    • Add a log windows : now you can see the log server.
    • You can send command to the console in the "log" menu (be careful it's experimental, use it at your own risk).
    • Add another map system, you can now use a standard image file for displaying map instead of a url for dynmap (the image file must be stored in /maps/images)
    • Ajax request don't block the windows now, a simple "wait cursor" is now displayed when an Ajax request is made
    Version 0.beta6 - 0211-02-24
    • Fix a bug when the plugin name contain a space, the plugin tab did not display the config file.
    • In the installer, you can now choose if you want to create a database or use a existing one, you can also set the prefix for tables.
    • You don't need anymore to be root of the database for creating tables and inject data, a valid account with privilege is enough.
    • Add licence information
    • Add "hold" and "unhold" command for Remote toolkit
    • Automaticaly add registered users to Permissions Plugin with a default choosen group (it's an option, you can uncheck this feature if you want)
    • Add some verifications check in the register panel
    • Add user management in the config tab
    • Add a button in the 'Edit plugin' menu for deleting old config file
    • Add new items from the Minecraft 1.3 version
    Version 0.beta5 - 2011-02-21
    • Remove the rewriting process, no more .htaccess !
    • Major change in directories structures
    • Add a user registration (for later)
    • Various minors fixes and checks
    Version 0.beta4 - 2011-02-18
    • Add Remote toolkit support (it's now possible to restart the server)
    • Add UTF-8 support for config file (Gastronomic plugin for example)
    • During the update it is now possible to import new templates plugins
    • During the installation, the "tmp" directory AND subdirectories are write-checked
    • CSS cleaning
    • Remove some useless function (the status windows display faster now)
    • Windows in the inventory panel are moveable
    • All always, some minors bugs fixed
    Version 0.beta3 - 2011-02-16
    • Add inventory management
    • Change the status windows
    • Add a check for installation for security (if a file exist, you can't install anymore)
    • Add an updater processus
    Version 0.beta2 - fix 2
    • Add verification of permissions in the installer process and the config process.
    Version 0.beta2 - fix 1
    • Many littles fixes for Linux system
    Version 0.beta2
    • First release to the public

    0.beta9.5 is still free, but you can donate.

    v1.0 will cost 5€ when it will be done.


    PS : sorry for my bad English, i'm a French native ;)

    Thanks to MonsieurApple for his Minelink PHP Class (http://forums.bukkit.org/threads/minelink-0-1.3564/)

    Tested on :
    Windows 7 - Xampp 1.7.3
    Windows XP - Xampp 1.7.3
    Linux ClearOS 5.1 - Apache/PHP 5/MySQL 5.2
    Centos 5.3 - You must upgrade PHP to 5.2 => http://wiki.centos.org/HowTos/PHP_5.1_To_5.2

    Tested with :
    CraftBukkit build 617
    Permissions plugin 2.5.4
    TCP Plugins 1.2
    Remote Toolkit plugin r10 a8.2
    Stats & Achievements v0.9
  2. Offline


    Yeah you're right : the core.php must be modified but the webroot directory will be very important too. I explain :
    We take the case that webroot folder is /var/www/html

    With the rewriting module, all the files + dir must be unzip into this dir, finally you'll have this structure :
    and so on.

    In the future, if you don't want to use rewriting, you will must unzip like this :
    and the content of /app/webroot must be copied into /var/www/html/

    After that a line in core.php must be uncommented and voilà! the website is ready without rewriting.
    It's a little more complicated.

    Fixed in the new version, i've made a bad thing : i have not initialized the variables inv1 & inv2.
    It's not mandatory, but it's bad :)

    Well, actually there are 2 ways of plugins management :
    - The first one is just for editing the config file of plugins
    Each user can add himself there installed plugins. The process is simple : on the config menu => plugins tabs you can add your own plugins. I already put some plugins for sample. If you want to edit config file with a plugin not listed, you must do this :
    Click on the "+" symbol below the table.
    Indicate the name of the plugin (it's case sensitive, it must be the same than the plugin file under /plugins directory, but without the .jar extension)
    Indicate the properties file you want to edit (it's relative to the minecraft directory).
    Example : you have a plugin named "Yaouh.jar", this plugin use a config file named "yaouh.config.properties" in the "/plugins/yaouh/" directory. If you want to add this plugin, you must type this :
    Name : Yaouh
    URL : what you want
    config : "/plugins/yaouh/yaouh.config.properties"
    After that you will see your plugin "yaouh" under the plugins menu.

    - The second way is for manage the output of plugins
    The second way to manage plugin is not already implemented, and i thinking about it. The aim is to have informations/manipulations about installed plugins.
    For example : you have the stats&achievements plugins. And you want to display in a nice design the current stats and the current achievement.
    Another example : you have the bounty plugin, and you want to display on your website the actives bounties.
    I think hard about it, i not have a simple solution, or a unique solution. I think the simpler is better but i don't really know where to begin. In this case, i prefer to do "Quick wins" and let this way mature in my minds.

    When i started this project, i wanted it to be simple. But as time goes by, I guess great new features:) but I would not sacrifice the simplicity to the detriment of functionality.

    Probably due to a rewriting issue, try to edit the view_plugins.ctp at line 21, replace with this :
    echo '<li><a href="'.$html->url(array('controller'=>'plugins','action'=>'showconfig',$plugin['name'])).'" title="panelconfig">'.$plugin['name'].'</a></li>';
    Maybe this can fix it...
  3. Offline


    First I want to thank you for developing this great admin tool, I really love it!

    Do you also think about integrating a stats website into the admin tool. Maybe it would be fit within the Public interface or something?

    Keep up the good work,
  4. Offline


    Hi SiDeFX,
    It's a really good idea but you must be more precise : what sort of stats do you want ?
    The danger is that WEBUKKIT (hey i've just find this name, it's better than Bukkit Webadmin isn't it ?)become a CMS, and for CMS there are better products for this : Joomla or Drupal for example.
    That's why i'm interrested by your idea only if you can give me some examples of stats :p

    Thank you very much, i need that :)
  5. Offline


    Wait, still somewhat confused. When I did "chmod a+w craftbukkit -R" on my folder for minecraft and set the config online to /root/craftbukkit it still says the minecraft path does not exist. But when I create /usr/minecraft and change its permissions, it works. Is that all I need then? Do I need the path to go to my minecraft server or just a folder that it can use?
  6. Offline


    I'm not a Linux Guru, but i think that non-root user can't be browse or go into /root folder.
    Maybe that the reason Webukkit can't go inside it.
    If a Linux Guru read us, can he help us please ? ;)
  7. Offline


    Ok I moved everything to /usr/minecraft but when I go to the plugins tab on the webadmin it shows some plugins but when I click on their tabs nothing happens
  8. Offline


    In the folder are 289 images but I don´t know how to copy the url of the missing one becazse there is no entry on the right click menu.
  9. Offline


    It does, but it make new error append, on Minecraftserver properties :
    Notice (8): Undefined variable: backup [APP/views/plugins/showconfig.ctp, line 3]

    Notice (8): Undefined variable: id [APP/views/plugins/showconfig.ctp, line 5]

    Notice (8): Undefined variable: config [APP/views/plugins/showconfig.ctp, line 6]

    And, no users can see root directory, but can't modifiy anything

    Edit : it's impossible on lighttpd to set specific rewrite for a url, so i moved the projet out of an alias.
    Here are the working rewrite :
    $HTTP["host"] == "HOSTNAME" {
                    dir-listing.activate = "disable"
                    server.document-root = "/var/www/bukkit-admin/"
                    url.rewrite-once = ("^/(css|files|img|js|stats)/(.*)" => "app/webroot/$1/$2",
                                    "^/(.*)$" => "app/webroot/index.php?url=$1"
    If you have dynmap here are for the two of them :
    $HTTP["host"] == "HOSTNAME" {
                    dir-listing.activate = "disable"
                    server.document-root = "/var/www/minecraftadmin/"
                    alias.url += ("/map/" => "/var/www/dynmap/")
                    url.rewrite-once = ("^/map/up/(.*)" => "/up/$1",
                                     "^/map/(.*)" => "/map/$1",
                                    "^/(css|files|img|js|stats)/(.*)" => "app/webroot/$1/$2",
                                    "^/(.*)$" => "app/webroot/index.php?url=$1"
                    $HTTP["url"] =~ "^/up/" {
                            proxy.server = ( "" => (( "host" => "", "port" => 8123 )) )
  10. Offline


    It might be a rewriting error i think. Please can you check that your http server manage rewriting from .htaccess ?
    --- merged: Feb 21, 2011 3:51 PM ---
    I think it's a rewriting issue, if you have teamviewer maybe i can check on your server.
  11. Offline


    is there teamviewer for nogui linux?
    and if there is, how would i get it?
    or i suppose i could trust you with ssh access if thers no other option
  12. Offline


    Or you can wait the next version, i finalize it :)
    Good news : there are no more rewriting in it
    Bad news : old users, you must do a complete fresh install :/
  13. Offline


    I seem to be having a problem setting up the server. When i go to the installation page, I type in the hostname, username and password, then I click check config and then it just does nothing. I think the problem may be coming from a permissions error somewhere in mysql, due to the fact I can't connect to the database using mysql workbench on my computer. I can connect with phpmyadmin though. This is the first time I've set up a server on linux, I'm used to just installing wamp on windows and being done. :p
    Right now, the webadmin is installed on my ubuntu server 10.10 box along with my minecraft server, and I am setting this up from my desktop.

    On second thought, I may have screwed up when installing the server. the installer has no style, unlike the screenshot in the OP. *sigh* I'll try reinstalling everything or something first.
  14. Offline


    If you have no style (no css), this is a rewriting error :)
    --- merged: Feb 21, 2011 5:08 PM ---
    Yeah, i'm testing the non-rewriting version of Webukkit, and it's work well.
    I must finish the use case test, and i'll deploy tonight, keep on eye ! ;)
  15. Offline


    How long until next version?
  16. Offline


    If all uses cases tests are good : one hour
    if not... when it's done :)
  17. Offline


    Can't wait for it to be done, I can't figure out the whole rewrite thing. :p
  18. Offline


    ok all working with Windows, i'm testing on Linux now...
    --- merged: Feb 21, 2011 6:21 PM ---
    ok, deployed on Windows / Linux, minor fixes :)
    the new package is ready on Google code :) No more rewriting ! yeah :)
    Hope that is bugless :p

    BE CAREFUL : the new URL for installer is :
    and not :

    Edit : i've just see an error with items image, i'll reupload done
  19. Offline


    Thanks, the only thing I can't get to work is minecraft server properties it reads all other config files except that.
    --- merged: Feb 21, 2011 8:13 PM ---
    I know this would be hard (I do some web development), but turning this to even a simple cms would be perfect because this and my wordpress installation conflicted. Even if all it has is a form to allow new people to register. Thanks for all of this.
    --- merged: Feb 21, 2011 8:15 PM ---
    Or, if you could tell me where the file that shows the initial page (and does the redirect to login) is, that would be nice :)
  20. Offline


    Thanks I finally got it to work. I was getting a 10061 error when trying to connect to the sql server because /etc/mysql/my.cnf had a second bind to port line that overrode the first one, making it bind to so I just commented it out. Just throwing that out there in case someone else has this problem.
  21. Offline


    Can I put this in a sub directory? I don't want it to be the main page of my site so could I put it at:

    "server.com/BukkitAdmin" ?
  22. Offline


    I tried that but it didn't work for me. Main page is only (or easiest) way to go.
  23. Offline


    Yeah I just tried it myself and it didn't work out to well :/ that kinda sucks. The domain I'm using is my companies domain (hehe shhh :p) so I can't really put it in the main page.
  24. Offline


    Haha nice. Hopefully support for that will be added.
  25. Offline


    Hi everybody,
    Sorry i was behind my TV :)
    I will looking at that. I must go to sleep, i'm answering tomorrow :p
  26. Offline


    I"m having a bit of trouble and looking for help.

    When I click "Check Config" on the Install, it does not do anything. Should it goto the next step?
  27. Offline


    Make sure the files for the server are in the web root. Any subfolders will not work
  28. Offline


    That fixed it. Thanks for the support!

    WOW, I need to learn to read. Answer was right above me :)
    I also agree that it would be nice if i could have this in a sub-dir.
  29. Offline


    Please change the installer so that it do not need to create a database!
    it's not necessary and it is a big security issue!
    to avoid using the same table names you could use a prefix like bukkitadmin_
    Root users should never be used for any scripts.


    Good work so far!
  30. Offline


    Yeah you're right, i'll fix it in the next version.
  31. Offline


Thread Status:
Not open for further replies.

Share This Page