Perseus

[1.0.0] topCMS

153 posts in this topic

2736b513f74bba4f0c3100f0c7f8d7a9.pngHello

 

I've been working on a small project to create a better version of our beloved pkoSite. It's still a work in progress but just in case anyone wants to use it and help around with testing or whatever, I'm releasing a minimal version to the public.

 

This version includes

  • Register
  • Login
  • Downloads
  • News
  • Admin panel for both downloads and news

I'll update it to include more things such as:

  • Ranking
  • Item Mall
  • Credit Mall
  • IMP Auction
  • Credit Auction
  • Wheel of Fortune
  • Admin panel 
  • Logging system ( log all actions performed by admins )

If you have any feature you want , you can let me know in the comments, I'll be happy to add that!

I've used the latest database libraries ( SQLSRV ) and laravel as the framework.

You'll be able to run this in the latest version of any webserver you want.

 

You can obtain the site from here.

 

Installation guide:

 

First off, you need SQLSRV drivers. 

Find out what version of PHP you're running and then download those drivers from here.

 

Most of your webservers have thread safety enabled so you're going to want to use the _ts dll files.

Take the sqlsrv pdo DLL and the normal sqlsrv dll and put them into your php( this folder will be in your webserver folder. For xampp users -> xampp/php.) -> ext folder.

 

Now, open your php.ini which you'll find in your php folder. 

Search for "extension=php_" and you should come across something like this.

bb7eabcc77519b045e1854214bb50e09.png

as you can see at the end, I have the sqlsrv dlls added.

Do the same for your php.ini file.

 

Now, go here and scroll down till you see this : 

5d7a4f1e1e8c20efecc41e4532563db0.png

download the ODBC driver that corresponds to the sqlsrv driver versions you download and install them.

 

That's all for the SQLSRV part.

 

Now, depending on whether you just want to mess around with the website or you want to put it up for production, you have two options.

  1. You start a temporary server using artisan (it'll work on the port 8080 and won't interfere with your website)
  2. You can edit your HTTPD.CONF file to direct it to the website's public folder and the website will run directly from your browser by going to localhost or your website name. ( WARNING : No other folders on your webserver will be accessible to you if you use this method, i.e, you won't be able to use another site like http://localhost/site2. It won't work.). 

 

If you want to go the first route, open your command prompt.

Direct yourself to the webserver directory and type in

php artisan serve

This'll start a server on the 8080 port and you can use the website as you wish.

 

If you want to go the second route, go to your apache folder, and open the httpd.conf file. It should be in the conf folder.

Search for the DocumentRoot.

It'll be something like this : 6a6d316cd8a22a795df2b84d5c66cac8.png

 

As you can see I've already changed my document root to the directory that my website is in. 

Do the same.

 

That does it for the webserver/sqlsrv configuration.

 

Now, adding your database configurations to the website.

In the root of the website, there's a file called .env.example.

Open the file.

Most of the configs are self-explanatory. 

Change the SITE_INFO_DB_FILE to wherever you've stored your website. 

Go to google and check their RECAPTCHA page to obtain your RECAPTCHA PUBLIC and PRIVATE keys and just stuff those in the respective fields.

 

IMPORTANT STEP HERE

You have to remove the .example part from the .env file, i.e

open your word editor and click "save as", choose the "all files" option and remove the .example from the end of the name, so the file is just called .env

 

Open your command prompt, direct yourself to the website directory and type in 

php artisan key:generate

This'll generate a key specific to your website. 

 

Go to the database folder(topSite/database/) and just create an empty "SiteInfo.sqlite" file.

Run 

php artisan migrate --database=SiteInfo --path=database/migrations/SiteInfo
php artisan migrate --database=GameDB --path=database/migrations/GameDB

 

 

And you're done!

 

If you want to change the title of the site or whatever, you can find the website's name in the config->app.php file.

 

Let me know if there are any issues, I'll fix them as soon as I can.

 

 

Some screenshots from the website

ad512ba16e7dde9ed97dbe00a2e85f38.png

2736b513f74bba4f0c3100f0c7f8d7a9.png

5658bf7e5bba98abe0b638e56ec88eee.png

ca4094673baea2ac8288ea342017a569.png

 

667eab401d5e4fd4d74981ea55dbbce8.png

2be74b9086b929fa4b9ec390362ffb8a.png

 

aa8bd6729eca87ea213cc90d38b60fbd.png

afd156534e9f11111aabf9987d3af611.png

30ba9805e4a98f1244fe3ba6b8953718.png

eb9e5a47866a00f55fca8ed881c94cf3.png

 

 

Edited by Perseus
24 people like this

Share this post


Link to post
Share on other sites

Woop At last @Perseus looks very neat with a lot of comments  thanks a lot  

@Totoka which one is better to learn first for a beginner (Larval of codeigniter) looking at the popularity of the framework for the next few years

Edited by TheLegend

Share this post


Link to post
Share on other sites
48 minutes ago, TheLegend said:

 

@Totoka which one is better to learn first for a beginner (Larval of codeigniter) looking at the popularity of the framework for the next few years

Isn't about which one is better, is about what you want to do with it, and what you expect from. I would suggest you to read carefully both documents.

For example, using a whole framework on small projects, could be bad, time/progress by structuring, but if your are pointing to do something great (due scalability, maintenance and balh) it is very nice.

 

Note: Laravel for small project can be abstracted, by using just a few modules instead, like Eloquent(Capsule) it is a very nice one, + some other stuff like Twig which is very powerful.

1 person likes this

Share this post


Link to post
Share on other sites
15 minutes ago, Totoka said:

Isn't about which one is better, is about what you want to do with it, and what you expect from. I would suggest you to read carefully both documents.

For example, using a whole framework on small projects, could be bad, time/progress by structuring, but if your are pointing to do something great (due scalability, maintenance and balh) it is very nice.

 

Note: Laravel for small project can be abstracted, by using just a few modules instead, like Eloquent(Capsule) it is a very nice one, + some other stuff like Twig which is very powerful.

thanks for the info, will probably be using Larval with Twig or Smarty 

Share this post


Link to post
Share on other sites

If you want to create a small project using laravel they have a smaller version of their framework called Lumen. You could use that.

1 person likes this

Share this post


Link to post
Share on other sites

I'm completely clueless when it comes down to all this website stuff, but can I just download the latest XAMPP, install, make the necessary edits you said and add your website? I really liked the simple and good looking design!

Share this post


Link to post
Share on other sites
1 hour ago, Angelix said:

I'm completely clueless when it comes down to all this website stuff, but can I just download the latest XAMPP, install, make the necessary edits you said and add your website? I really liked the simple and good looking design!

Yeah! If you run into issues, you can let me know. I'm happy to help!

 

Edit:

I've updated the topic with some features that I'll be adding as time goes by. I intend to make this website the source for all website related needs that the community has. If you've got any feature you'd like me to add, you can put a request up on github or you can post here. 

Edited by Perseus

Share this post


Link to post
Share on other sites
11 hours ago, Perseus said:

I'll update it to include more things such as:

  • Ranking
  • Item Mall
  • Credit Mall
  • IMP Auction
  • Credit Auction
  • Wheel of Fortune
  • Admin panel 
  • Logging system ( log all actions performed by admins )

The ranking thing is already applied? Can you also include these:

  • View member count of guild.
  • Change/Reset guild password.
  • Change/Reset security code.

I'm barely going to install the latest xampp (7.0.9 / PHP 7.0.9), then go looking for the rest of the instructions. :P 
Had a hard time installing and apache not running because of UAC, had to carefully rad not to install on program files folder, haha. Really awesome work and design once again.

Share this post


Link to post
Share on other sites
12 hours ago, Perseus said:

Open your command prompt, direct yourself to the website directory and type in 


php artisan key:generate

This'll generate a key specific to your website. 

I'm having a bit of trouble with this, I just changed the folder "topsite" to "Website", went there by command and it says "php" is not a valid command.

Share this post


Link to post
Share on other sites
38 minutes ago, Angelix said:

I'm having a bit of trouble with this, I just changed the folder "topsite" to "Website", went there by command and it says "php" is not a valid command.

try to add the php.exe into your %PATH%, or execute it directly like:

C:\path\to\php.exe [args ...]

Share this post


Link to post
Share on other sites
42 minutes ago, Totoka said:

try to add the php.exe into your %PATH%, or execute it directly like:

C:\path\to\php.exe [args ...]

I already got it to generate a key, but it shows errors.

Capture.PNG

 

And I did defined them correctly (I think), and when trying to see the home page or login, I get an error pages with many things. :(

 

EDIT: Ok, I was using the x64 DLL (went by my computer, duh), but it seems PHP is x32 (went surfing on Google for this error) and I had to use the ones from x86 instead of the x64. That fixed the issue on screenshot above, now I'm running into this:Capture.PNG

Edited by Angelix

Share this post


Link to post
Share on other sites
1 hour ago, Angelix said:

I already got it to generate a key, but it shows errors.

Capture.PNG

 

And I did defined them correctly (I think), and when trying to see the home page or login, I get an error pages with many things. :(

 

EDIT: Ok, I was using the x64 DLL (went by my computer, duh), but it seems PHP is x32 (went surfing on Google for this error) and I had to use the ones from x86 instead of the x64. That fixed the issue on screenshot above, now I'm running into this:Capture.PNG

Ah crap I forgot to include one of the commands. 

Go to the database folder and just create an empty "SiteInfo.sqlite" file.

Run 

php artisan migrate --database=SiteInfo

and see if that fixes it.

Edited by Perseus

Share this post


Link to post
Share on other sites
6 minutes ago, Perseus said:

Ah crap I forgot to include one of the commands. 

Run 

 


php artisan migrate

 

and see if that fixes it.

Tried running that, error result.

Capture.PNG

 

Sorry for many errors hahah, I'm completely clueless to this.

Share this post


Link to post
Share on other sites
Just now, Angelix said:

Tried running that, error result.

Capture.PNG

 

Sorry for many errors hahah, I'm completely clueless to this.

Hey! No prob. My bad, run


php artisan migrate --database=SiteInfo

 

 

Share this post


Link to post
Share on other sites
1 minute ago, Perseus said:

Hey! No prob. My bad, run

 


php artisan migrate --database=SiteInfo

 

 

Now I get somewhat the same error text from site.

 

Capture.PNG

Share this post


Link to post
Share on other sites
4 minutes ago, Perseus said:

Did you create a SiteInfo.sqlite file in the database folder?

I think I missed that on the guide, did it and got it to show the home page, now something went wrong with the ranking page, login user and registering user pages.

Capture.PNG

And:

Capture.PNG

Share this post


Link to post
Share on other sites

The first error, can you tell me which page you're on? What's the URL?

I'll push an update to github to fix the second one, give me 2 minutes.

Share this post


Link to post
Share on other sites
1 minute ago, Perseus said:

The first error, can you tell me which page you're on? What's the URL?

I'll push an update to github to fix the second one, give me 2 minutes.

On 127.0.0.1/ranking

Capture.PNG

Share this post


Link to post
Share on other sites
1 minute ago, Angelix said:

On 127.0.0.1/ranking

Capture.PNG

 

I haven't pushed ranking to the site yet! It's not functional as of now. I've listed the functions that do work.

Edited by Perseus

Share this post


Link to post
Share on other sites

Pushed an update to the repo, the issue should be fixed now. If you're not using git, just download the config/database.php file and replace it in your folder.

Share this post


Link to post
Share on other sites
2 minutes ago, Perseus said:

I haven't pushed ranking to the site yet! It's not functional as of now. I've listed the functions that do work.

Hahah, sorry about that, I asked though. :P

 

Will add the update, inform on the result then go to sleep since it's 3AM here. :(

Maybe try adding a "home" button in the initial page where it shows "Tales of Pirates" next to the login/register buttons, could be nice. :P

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now