UPDATE: Website will be live soon. Initial testing will commence soon and once satisfied will be launched for free.
I wanted to create an application that would handle voting callbacks and that could be used by many different servers, there are a few released that must be installed, which is great as it's open source and allows for great customisation.
However, sometimes they are overcomplicated, so I wanted to create a solution that would be incredibly easy to install (a matter of seconds). There are a few tools like this I believe one being everythingrs, however, I don't believe you can embed their page into your current website, of course you could use an iframe though the styling may not match your current websites design.
The route I took was an API style application, meaning the user (server owner) would register and customise their voting setup within their account area such as enabling which voting toplists they wish to display.
The simplistic installation process is as simple as creating an iframe within your website, which would look like this;
Spoiler for Installation Process:
Code:
<iframe class="voting-iframe" src="[DOMAIN]/vote?server_id=3" title="Vote for your server!"></iframe>
The default styling for the voting page can be viewed below, however you may pass an additional parameter through the iframe to pass an external stylesheet, one that may be hosted on your own webserver which is able to override each HTML elements styling so you can match it with your current websites design, for example:
Code:
<iframe class="voting-iframe" src="[DOMAIN]/vote?server_id=3&css=[DOMAIN]/styles.css" title="Vote for your server!"></iframe>
The only required parameter being the "server_id" which is acquired within the user dashboard which can be viewed below
Different voting toplists can be toggled within the server detail page, seen below:
An API request can be made in order to view if a specific user has voted or alternatively to claim the rewards, I wanted this to be as simple as possible, so right now this is done via two simple API requests:
/**
* Claims the votes of specific username
*/
public static void claimVotes(String username) {
int votes = Integer.parseInt(makeRequest("http://home.local/rspsvoting/public/vote/api/claim?username=" + username + "&auth=" + PRIVATE_AUTH_CODE));
if (votes < 1)
return;
Player player = World.getPlayer(username);
if (player == null)
return;
player.setVotes(player.getVotes() + votes);
player.out("You have claimed " + votes + " vote points.");
}
Spoiler for Media:
Homepage Design
Documentation Page
Added Account dashboard featuring basic statistics for each of that users servers.
Dashboard Votes Page now displays tables containing basic data of all the people who have voted such as username, toplist, whether they have claimed it.
This is also a valuable learning project so I would greatly appreciate any feedback, whether its security, design or functionality.
I would also be very interested to know if anyone would actually use a system like this?
It’s too early too give you constructive feedback, good luck with the project
Originally Posted by DownGrade
Don't let these no life creeps get to you, its always the same on here. They'd rather spend hours upon hours in the rune-server spam section then getting laid! ha ha!Its honestly pathetic i haven't seen so many lowlifes in my life its actually insane i wish that this section would just vanish its probably the only way to get these people out of the community...
PLEASE BE AWARE OF IMPOSTERS MY DISCORD ID: 362240000760348683
Added documenation page, will proceed to add to it in the future. Note: RuneVote name was a random name, will most likely change at some point.
Need to build the homepage for the main site, updated the callback controller to handle all toplist callbacks.
Shouldn't be too much longer until the product can be launched, will be free to use also but may incorporate a 'premium' version at some point.
Update: Progress on homepage..
Added Account dashboard featuring basic statistics for each of that users servers.
Dashboard Votes Page now displays tables containing basic data of all the people who have voted such as username, toplist, whether they have claimed it.