# unrealircd-webpanel
UnrealIRCd Administration WebPanel
- <img src="https://i.ibb.co/7jtddG4/Screenshot-from-2022-12-31-04-53-35.png">
+ <img src="https://i.ibb.co/yP7tk6B/Screenshot-from-2023-01-10-17-54-01.png">
## Prerequisites ##
-- PHP 7 or later
+- PHP 8 or later
- A webserver
-- UnrealIRCd 6.0.5
+- UnrealIRCd 6.0.6-git recommended. Minimal functionality available with UnrealIRCd 6.0.5.
+Note: PHP 8 may require special installation instructions.
+Here are some instructions for:
+- [Ubuntu 20/22](https://linuxhint.com/install-php-8-ubuntu-22-04/)
+- [Debian](https://www.vultr.com/docs/how-to-install-php-8-on-debian-11/)
+- [CentOS](https://www.tecmint.com/install-php-8-on-centos/)
+
+For more installation methods for PHP 8, make a websearch for how to install PHP 8 on your operating system.
## Installation ##
Note: This instructional assumes this is going to be hosted in the webroot directory `/var/www/` (html/) directory.
Please make sure you have [correctly setup UnrealIRCd for use with JSON-RPC](https://www.unrealircd.org/docs/JSON-RPC) before you continue.
-- First, if you have just installed apache2 or something else, remove the `html` directory and navigate to `/var/www/`
+- Go to your webserver root, for example `/var/www/html/`, and clone
+ this repository:
```
-cd /var/www/
-rm -rf html
+cd /var/www/html
+git clone https://github.com/unrealircd/unrealircd-webpanel
```
-- Clone this repository to a new directory called `html`
-```
-git clone https://github.com/ValwareIRC/unrealircd-webpanel html
-```
-
-- Install the required dependencies using composer:
+- Go into the directory and run composer to install the dependencies
+ (If you don't have composer, then [install it](https://getcomposer.org/download/) first):
```
+cd unrealircd-webpanel
composer install
```
-(If you don't have composer, then [install it](https://getcomposer.org/download/) first)
-- Move into the `html` directory and edit the configuration file
+- Edit the configuration file
```
-cd html
cp config.php.sample config.php
nano config.php
```
Edit the configuration file to match your UnrealIRCd's RPC credentials and save
+NOTE: You most likely want to put the webpanel behind a login, using a
+`.htaccess` file or similar.
+
+## Updating for end-users ##
+For end-users, when you want to update to the latest version:
+```bash
+git pull
+composer update
+```
+
+## Developers ##
+Developers of the webpanel will naturally use the same procedure as
+above. However, sometimes you will want to update to a newer version
+of the unrealircd-rpc-php library. You then need to run:
+```bash
+# For devs only!
+composer install
+git commit composer.lock
+```
+Commiting the composer.lock file updates the dependency for all
+other users, that way a `composer update` by end-users will update
+to exactly the version that `composer install` just installed.