This commit is contained in:
flash 2016-04-09 13:22:15 +02:00
parent f72e1fd284
commit 391ecbda59
34 changed files with 265 additions and 192 deletions

244
database/data.sql Normal file
View file

@ -0,0 +1,244 @@
-- --------------------------------------------------------
-- Host: 127.0.0.1
-- Server version: 5.7.10-log - MySQL Community Server (GPL)
-- Server OS: Win64
-- HeidiSQL Version: 9.3.0.4984
-- --------------------------------------------------------
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8mb4 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
-- Dumping data for table sakura-development.sakura_config: ~79 rows (approximately)
/*!40000 ALTER TABLE `sakura_config` DISABLE KEYS */;
INSERT INTO `sakura_config` (`config_name`, `config_value`) VALUES
('admin_email', 'sakura@localhost'),
('alumni_rank_id', '9'),
('avatar_max_fsize', '2097152'),
('avatar_max_height', '512'),
('avatar_max_width', '512'),
('avatar_min_height', '20'),
('avatar_min_width', '20'),
('background_max_fsize', '5242880'),
('background_max_height', '1440'),
('background_max_width', '2560'),
('background_min_height', '16'),
('background_min_width', '16'),
('banned_avatar_img', 'public/content/data/{{ TPL }}/images/banned-av.png'),
('charset', 'utf-8'),
('comment_max_length', '500'),
('comment_min_length', '1'),
('content_path', '/content'),
('cookie_domain', 'localhost'),
('cookie_path', '/'),
('cookie_prefix', 'fii_'),
('date_format', 'D Y-m-d H:i:s T'),
('deactivated_avatar_img', 'public/content/data/{{ TPL }}/images/deactivated-av.png'),
('deactive_rank_id', '1'),
('default_rank_id', '2'),
('disable_registration', '0'),
('enable_tpl_cache', '0'),
('forum_text_max', '60000'),
('forum_text_min', '1'),
('forum_title_max', '128'),
('forum_title_min', '4'),
('forum_trash_id', '19'),
('front_page_news_posts', '3'),
('header_announcement_image', ''),
('header_announcement_link', ''),
('header_max_fsize', '2097152'),
('header_max_height', '500'),
('header_max_width', '2048'),
('header_min_height', '125'),
('header_min_width', '512'),
('lock_authentication', '0'),
('mail_signature', 'Sakura | http://localhost/'),
('max_online_time', '120'),
('max_reg_keys', '5'),
('members_per_page', '30'),
('min_entropy', '1'),
('news_posts_per_page', '3'),
('no_avatar_img', 'public/content/data/{{ TPL }}/images/no-av.png'),
('no_background_img', 'public/content/pixel.png'),
('no_cron_interval', '30'),
('no_cron_last', '1460167058'),
('no_cron_service', '1'),
('no_header_img', 'public/content/pixel.png'),
('old_username_reserve', '90'),
('paypal_client_id', ''),
('paypal_mode', 'sandbox'),
('paypal_secret', ''),
('pixel_img', 'public/content/pixel.png'),
('premium_amount_max', '24'),
('premium_price_per_month', '1.49'),
('premium_rank_id', '8'),
('recaptcha', '0'),
('recaptcha_private', ''),
('recaptcha_public', ''),
('require_activation', '1'),
('restricted_rank_id', '10'),
('session_check', '4'),
('site_closed', '0'),
('site_closed_reason', 'meow'),
('site_news_category', 'site-news'),
('site_style', 'yuuno'),
('sitedesc', 'Live development environment for the script that powers Flashii.net called Sakura.'),
('sitelogo', ''),
('sitename', 'Sakura'),
('sitetags', '["Flashii","Media","Flashwave","Circle","Zeniea","MalwareUp","Cybernetics","Saibateku","Community","osu!","osu"]'),
('smtp_auth', ''),
('smtp_from_email', ''),
('smtp_from_name', ''),
('smtp_password', '[ base 64 encoded ]'),
('smtp_port', ''),
('smtp_replyto_mail', ''),
('smtp_replyto_name', ''),
('smtp_secure', ''),
('smtp_server', ''),
('smtp_username', ''),
('url_main', 'locahost'),
('url_rewrite', '1'),
('use_gzip', '0'),
('user_uploads', 'uploads'),
('username_max_length', '16'),
('username_min_length', '3');
/*!40000 ALTER TABLE `sakura_config` ENABLE KEYS */;
-- Dumping data for table sakura-development.sakura_emoticons: ~38 rows (approximately)
/*!40000 ALTER TABLE `sakura_emoticons` DISABLE KEYS */;
INSERT INTO `sakura_emoticons` (`emote_string`, `emote_path`) VALUES
(':amu:', '/content/images/emoticons/amu.png'),
(':angrier:', '/content/images/emoticons/angrier.png'),
(':angriest:', '/content/images/emoticons/angriest.png'),
(':angry:', '/content/images/emoticons/angry.gif'),
(':blank:', '/content/images/emoticons/blank.png'),
(':childish:', '/content/images/emoticons/childish.png'),
(':congrats:', '/content/images/emoticons/congrats.png'),
(':crying:', '/content/images/emoticons/crying.gif'),
(':dizzy:', '/content/images/emoticons/dizzy.gif'),
(':eat:', '/content/images/emoticons/eat.gif'),
(':evil:', '/content/images/emoticons/evil.png'),
(':extreme:', '/content/images/emoticons/extreme.png'),
(':glare:', '/content/images/emoticons/glare.gif'),
(':happy:', '/content/images/emoticons/happy.gif'),
(':horror:', '/content/images/emoticons/horror.gif'),
(':huh:', '/content/images/emoticons/huh.png'),
(':idea:', '/content/images/emoticons/idea.png'),
(':jew:', '/content/images/emoticons/jew.png'),
(':kiss:', '/content/images/emoticons/kiss.gif'),
(':lmao:', '/content/images/emoticons/lmao.gif'),
(':lol:', '/content/images/emoticons/lol.gif'),
(':love:', '/content/images/emoticons/love.png'),
(':meow:', '/content/images/emoticons/meow.png'),
(':omg:', '/content/images/emoticons/omg.gif'),
(':ouch:', '/content/images/emoticons/ouch.gif'),
(':puke:', '/content/images/emoticons/puke.gif'),
(':ruse:', '/content/images/emoticons/ruse.png'),
(':sad:', '/content/images/emoticons/sad.png'),
(':sigh:', '/content/images/emoticons/sigh.gif'),
(':suspicious:', '/content/images/emoticons/suspicious.gif'),
(':sweat:', '/content/images/emoticons/sweat.gif'),
(':tired:', '/content/images/emoticons/tired.gif'),
(':yay:', '/content/images/emoticons/vhappy.gif'),
(':winxp:', '/content/images/emoticons/winxp.png'),
(':wtf:', '/content/images/emoticons/wtf.gif'),
(':sleep:', '/content/images/emoticons/zzz.gif'),
(':what:', '/content/images/emoticons/what.png'),
(':smug:', '/content/images/emoticons/smug.png');
/*!40000 ALTER TABLE `sakura_emoticons` ENABLE KEYS */;
-- Dumping data for table sakura-development.sakura_forums: ~18 rows (approximately)
/*!40000 ALTER TABLE `sakura_forums` DISABLE KEYS */;
INSERT INTO `sakura_forums` (`forum_id`, `forum_order`, `forum_name`, `forum_desc`, `forum_link`, `forum_category`, `forum_type`, `forum_icon`) VALUES
(1, 1, 'General', 'General category', '', 0, 1, ''),
(3, 2, 'General Discussion', 'Civilised discussions about things that don\'t have their own subforum.', '', 1, 0, 'fa-comments'),
(15, 3, 'Staff', 'Staff discussion', '', 0, 1, ''),
(18, 4, 'General', 'Discuss Staff Stuff.', '', 15, 0, 'fa-user-secret'),
(19, 5, 'Purgatorii', 'This is where deleted threads rot.', '', 15, 0, 'fa-trash');
/*!40000 ALTER TABLE `sakura_forums` ENABLE KEYS */;
-- Dumping data for table sakura-development.sakura_forum_permissions: ~55 rows (approximately)
/*!40000 ALTER TABLE `sakura_forum_permissions` DISABLE KEYS */;
INSERT INTO `sakura_forum_permissions` (`forum_id`, `rank_id`, `user_id`, `forum_perms`) VALUES
(1, 1, 0, '00000000001'),
(1, 2, 0, '00000011111'),
(1, 3, 0, '11111111111'),
(1, 4, 0, '11111111111'),
(1, 5, 0, '11111111111'),
(1, 6, 0, '00000011111'),
(1, 7, 0, '00000111111'),
(1, 8, 0, '00000011111'),
(1, 9, 0, '00000011111'),
(1, 10, 0, '00000000001'),
(1, 11, 0, '00000011111'),
(15, 1, 0, '00000000000'),
(15, 2, 0, '00000000000'),
(15, 3, 0, '00000111111'),
(15, 4, 0, '11111111111'),
(15, 5, 0, '00000111111'),
(15, 6, 0, '00000000000'),
(15, 7, 0, '00000111111'),
(15, 8, 0, '00000000000'),
(15, 9, 0, '00000000000'),
(15, 10, 0, '00000000000'),
(15, 11, 0, '00000000000');
/*!40000 ALTER TABLE `sakura_forum_permissions` ENABLE KEYS */;
-- Dumping data for table sakura-development.sakura_optionfields: ~3 rows (approximately)
/*!40000 ALTER TABLE `sakura_optionfields` DISABLE KEYS */;
INSERT INTO `sakura_optionfields` (`option_id`, `option_name`, `option_description`, `option_type`, `option_permission`) VALUES
('profileBackgroundSiteWide', 'Display profile background site wide', 'This will make the profile background you set on your profile appear on the entire site (except on other profiles).', 'checkbox', 'CHANGE_BACKGROUND'),
('useMisaki', 'Use the testing style', 'This will make the site use the new Misaki style instead of Yuuno.', 'checkbox', 'ALTER_PROFILE');
/*!40000 ALTER TABLE `sakura_optionfields` ENABLE KEYS */;
-- Dumping data for table sakura-development.sakura_permissions: ~11 rows (approximately)
/*!40000 ALTER TABLE `sakura_permissions` DISABLE KEYS */;
INSERT INTO `sakura_permissions` (`rank_id`, `user_id`, `permissions_site`, `permissions_manage`) VALUES
(1, 0, '00000000000000000000000000000001', '00'),
(2, 0, '11110000111111111100111101101100', '00'),
(3, 0, '11110001111111111111111111111100', '11'),
(4, 0, '11110111111111111111111111111100', '11'),
(5, 0, '11110001111111111111111111111100', '11'),
(6, 0, '11110000111111111100111101101100', '00'),
(7, 0, '11110001111111111111111111111100', '01'),
(8, 0, '11110001111111111111111111111100', '00'),
(9, 0, '11110001111111111111111111111100', '00'),
(10, 0, '11110000000011010100101000100010', '00'),
(11, 0, '11110000111111111100111101101100', '00');
/*!40000 ALTER TABLE `sakura_permissions` ENABLE KEYS */;
-- Dumping data for table sakura-development.sakura_profilefields: ~12 rows (approximately)
/*!40000 ALTER TABLE `sakura_profilefields` DISABLE KEYS */;
INSERT INTO `sakura_profilefields` (`field_id`, `field_name`, `field_type`, `field_link`, `field_linkformat`, `field_description`, `field_additional`) VALUES
(1, 'Website', 'url', 1, '{{ VAL }}', 'URL to your website', ''),
(2, 'Twitter', 'text', 1, 'https://twitter.com/{{ VAL }}', 'Your @twitter Username', ''),
(3, 'BitBucket', 'text', 1, 'https://bitbucket.org/{{ VAL }}', 'Your BitBucket Username', ''),
(4, 'Skype', 'text', 1, 'skype:{{ VAL }}?userinfo', 'Your Skype Username', ''),
(5, 'YouTube', 'text', 0, '', 'ID or Username excluding http://youtube.com/*/', '{"youtubetype": ["checkbox", "I <b>do not</b> have a Channel Username (url looks like https://www.youtube.com/channel/UCXZcw5hw5C7Neto-T_nRXBQ)."]}'),
(6, 'SoundCloud', 'text', 1, 'https://soundcloud.com/{{ VAL }}', 'Your SoundCloud username', ''),
(7, 'Steam', 'text', 1, 'https://steamcommunity.com/id/{{ VAL }}', 'Your Steam Community Username (may differ from login username)', ''),
(8, 'osu!', 'text', 1, 'https://osu.ppy.sh/u/{{ VAL }}', 'Your osu! Username', ''),
(9, 'Origin', 'text', 0, '', 'Your Origin User ID', ''),
(10, 'Xbox Live', 'text', 1, 'https://account.xbox.com/en-GB/Profile?Gamertag={{ VAL }}', 'Your Xbox User ID', ''),
(11, 'PSN', 'text', 1, 'http://psnprofiles.com/{{ VAL }}', 'Your PSN User ID', ''),
(12, 'Last.fm', 'text', 1, 'http://last.fm/user/{{ VAL }}', 'Your Last.fm username', '');
/*!40000 ALTER TABLE `sakura_profilefields` ENABLE KEYS */;
-- Dumping data for table sakura-development.sakura_ranks: ~11 rows (approximately)
/*!40000 ALTER TABLE `sakura_ranks` DISABLE KEYS */;
INSERT INTO `sakura_ranks` (`rank_id`, `rank_hierarchy`, `rank_name`, `rank_multiple`, `rank_hidden`, `rank_colour`, `rank_description`, `rank_title`) VALUES
(1, 0, 'Deactivated', '', 1, '#555', 'Users that are yet to be activated or that deactivated their own account.', 'Deactivated'),
(2, 1, 'Regular user', 's', 0, 'inherit', 'Regular users with regular permissions.', 'Regular user'),
(3, 3, 'Site moderator', 's', 0, '#FA3703', 'Users with special permissions like being able to ban and modify users if needed.', 'Moderator'),
(4, 4, 'Administrator', 's', 0, '#824CA0', 'Users that manage the server and everything around that.', 'Administrator'),
(5, 3, 'Developer', 's', 0, '#6EAC0A', 'Users that either create or test new features of the site.', 'Developer'),
(6, 1, 'Bot', 's', 1, '#9E8DA7', 'Reserved user accounts for services.', 'Bot'),
(7, 2, 'Chat moderator', 's', 0, '#09F', 'Moderators of the chat room.', 'Moderator'),
(8, 1, 'Tenshi', '', 0, '#EE9400', 'Users that bought premium to help us keep the site and its services alive!', 'Tenshi'),
(9, 1, 'Alumnii', '', 0, '#FF69B4', 'People who have made big contributions to the community but have moved on.', 'Alumni'),
(10, 0, 'Restricted', '', 1, '#666', 'Users that are restricted.', 'Restricted'),
(11, 1, 'Early Supporter', 's', 0, '#0049EE', 'User that donated before the premium system.', 'Early Supporter');
/*!40000 ALTER TABLE `sakura_ranks` ENABLE KEYS */;
/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

View file

@ -10,11 +10,6 @@
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
-- Dumping database structure for sakura-development
CREATE DATABASE IF NOT EXISTS `sakura-development` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */;
USE `sakura-development`;
-- Dumping structure for table sakura-development.sakura_actioncodes
CREATE TABLE IF NOT EXISTS `sakura_actioncodes` (
`code_action` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'Action identifier so the backend knows what to do.',
@ -25,36 +20,6 @@ CREATE TABLE IF NOT EXISTS `sakura_actioncodes` (
-- Data exporting was unselected.
-- Dumping structure for table sakura-development.sakura_bans
CREATE TABLE IF NOT EXISTS `sakura_bans` (
`ban_id` bigint(255) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Automatically generated ID by MySQL for management.',
`user_id` bigint(255) unsigned NOT NULL COMMENT 'ID of user that was banned, 0 for just an IP ban.',
`ban_begin` int(11) unsigned NOT NULL COMMENT 'Timestamp when the user was banned.',
`ban_end` int(11) unsigned NOT NULL COMMENT 'Timestamp when the user should regain access to the site.',
`ban_reason` varchar(512) COLLATE utf8_bin DEFAULT NULL COMMENT 'Reason given for the ban.',
`ban_moderator` bigint(255) unsigned NOT NULL COMMENT 'ID of moderator that banned this user,',
PRIMARY KEY (`ban_id`),
KEY `uid` (`user_id`),
KEY `mod_id` (`ban_moderator`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
-- Data exporting was unselected.
-- Dumping structure for table sakura-development.sakura_bbcodes
CREATE TABLE IF NOT EXISTS `sakura_bbcodes` (
`bbcode_id` int(64) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Automatically generated ID by MySQL for management.',
`bbcode_regex` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'Regular expression string for the BBCode.',
`bbcode_replace` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'What to replace it with.',
`bbcode_title` varchar(128) COLLATE utf8_bin NOT NULL COMMENT 'Button title for this bbcode.',
`bbcode_description` varchar(512) COLLATE utf8_bin NOT NULL COMMENT 'Description of what this does.',
`bbcode_display` tinyint(1) unsigned NOT NULL COMMENT 'Set if this bbcode is displayed on the posting page.',
PRIMARY KEY (`bbcode_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
-- Data exporting was unselected.
-- Dumping structure for table sakura-development.sakura_comments
CREATE TABLE IF NOT EXISTS `sakura_comments` (
`comment_id` bigint(255) unsigned NOT NULL AUTO_INCREMENT COMMENT 'MySQL Generated ID used for sorting.',
@ -179,7 +144,7 @@ CREATE TABLE IF NOT EXISTS `sakura_login_attempts` (
`attempt_id` bigint(255) unsigned NOT NULL AUTO_INCREMENT COMMENT 'MySQL Generated ID used for sorting.',
`attempt_success` tinyint(1) unsigned NOT NULL COMMENT 'Success boolean.',
`attempt_timestamp` int(11) unsigned NOT NULL COMMENT 'Unix timestamp of the event.',
`attempt_ip` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'IP that made this attempt.',
`attempt_ip` varbinary(50) NOT NULL COMMENT 'IP that made this attempt.',
`user_id` bigint(255) unsigned NOT NULL COMMENT 'ID of the user that was attempted to log in to.',
PRIMARY KEY (`attempt_id`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
@ -187,22 +152,6 @@ CREATE TABLE IF NOT EXISTS `sakura_login_attempts` (
-- Data exporting was unselected.
-- Dumping structure for table sakura-development.sakura_messages
CREATE TABLE IF NOT EXISTS `sakura_messages` (
`id` bigint(128) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Automatically generated ID by MySQL for management.',
`from_user` bigint(255) unsigned NOT NULL COMMENT 'ID of the user that sent this message.',
`to_user` bigint(255) unsigned NOT NULL COMMENT 'ID of user that should receive this message.',
`read` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'IDs of users who read this message.',
`deleted` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'Indicator if one of the parties deleted the message, if it is already 1 the script will remove this row.',
`timestamp` int(11) unsigned NOT NULL COMMENT 'Timestamp of the time this message was sent',
`subject` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'Title of the message',
`content` text COLLATE utf8_bin NOT NULL COMMENT 'Contents of the message.',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
-- Data exporting was unselected.
-- Dumping structure for table sakura-development.sakura_news
CREATE TABLE IF NOT EXISTS `sakura_news` (
`news_id` bigint(255) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Automatically generated ID by MySQL for management.',
@ -337,20 +286,6 @@ CREATE TABLE IF NOT EXISTS `sakura_ranks` (
-- Data exporting was unselected.
-- Dumping structure for table sakura-development.sakura_regcodes
CREATE TABLE IF NOT EXISTS `sakura_regcodes` (
`id` bigint(255) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Automatically generated ID by MySQL for management.',
`code` varchar(32) COLLATE utf8_bin NOT NULL COMMENT 'Randomly generated registration key.',
`created_by` bigint(255) unsigned NOT NULL COMMENT 'ID of user who generated this code.',
`used_by` bigint(255) unsigned NOT NULL COMMENT 'ID of user who used this code.',
`key_used` tinyint(1) unsigned NOT NULL COMMENT 'Boolean for setting this key as used.',
PRIMARY KEY (`id`),
KEY `created_by` (`created_by`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
-- Data exporting was unselected.
-- Dumping structure for table sakura-development.sakura_reports
CREATE TABLE IF NOT EXISTS `sakura_reports` (
`id` bigint(255) unsigned NOT NULL AUTO_INCREMENT COMMENT 'MySQL Generated ID used for sorting.',
@ -370,7 +305,7 @@ CREATE TABLE IF NOT EXISTS `sakura_reports` (
CREATE TABLE IF NOT EXISTS `sakura_sessions` (
`session_id` bigint(255) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Automatically generated ID by MySQL for management. ',
`user_id` bigint(255) unsigned NOT NULL COMMENT 'ID of the user this session is spawned for. ',
`user_ip` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'IP of the user this session is spawned for.',
`user_ip` varbinary(50) NOT NULL COMMENT 'IP of the user this session is spawned for.',
`user_agent` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT 'User agent of the user this session is spawned for.',
`session_key` varchar(255) COLLATE utf8_bin NOT NULL COMMENT 'Session key, allow direct access to the user''s account. ',
`session_start` int(16) unsigned NOT NULL COMMENT 'The timestamp for when the session was started. ',

View file

@ -8,8 +8,8 @@
namespace Sakura\Controllers\Settings;
use Sakura\ActiveUser;
use Sakura\Router;
use Sakura\Perms\Site;
use Sakura\Router;
use Sakura\Template;
/**

View file

@ -149,7 +149,7 @@ class Site
* Can this user change the colour of their username?
*/
const CHANGE_NAMECOLOUR = 67108864;
/**
* Does this user have infinite premium?
*/

View file

@ -154,5 +154,5 @@ fieldset .replylink {
overflow: hidden;
}
.header .logo {
background: url('//cdn.flashii.net/img/feedback-logo.png') no-repeat
}
background: url('//cdn.flashii.net/img/feedback-logo.png') no-repeat
}

View file

@ -832,4 +832,4 @@ div#recaptcha_image {
}
.news-comments-container {
margin: 5px auto 0;
}
}

View file

@ -4,55 +4,55 @@
<svg version="1.1" id="Layer_2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="1024px" height="1024px" viewBox="0 0 1024 1024" enable-background="new 0 0 1024 1024" xml:space="preserve">
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="368.6167" y1="307.6597" x2="1393.6826" y2="307.6597" gradientTransform="matrix(0.9686 -0.2487 0.2487 0.9686 -110.877 143.6445)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_1_)" points="539.247,444.171 484.89,444.123 485.139,158.44 539.495,158.488 "/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="190.1802" y1="449.8481" x2="1212.8848" y2="449.8481" gradientTransform="matrix(0.5821 -0.8131 0.8131 0.5821 -249.8516 448.1367)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_2_)" points="485.139,443.553 443.469,478.458 260.026,259.452 301.697,224.549 "/>
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-8.8989" y1="487.3521" x2="1017.359" y2="487.3521" gradientTransform="matrix(-0.0767 -0.9971 0.9971 -0.0767 -162.9487 835.7334)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_3_)" points="443.859,478.094 434.373,531.617 153.074,481.763 162.561,428.24 "/>
<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="19.4063" y1="415.5278" x2="1042.7773" y2="415.5278" gradientTransform="matrix(-0.6997 -0.7145 0.7145 -0.6997 327.4824 1223.6914)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_4_)" points="434.713,531.902 461.852,579.002 214.318,721.628 187.181,674.528 "/>
<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="57.9751" y1="337.5098" x2="1079.688" y2="337.5098" gradientTransform="matrix(-0.9952 -0.0976 0.0976 -0.9952 964.8691 1112.8604)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_5_)" points="461.299,578.557 512.362,597.191 414.42,865.561 363.356,846.924 "/>
<linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="142.6909" y1="341.7607" x2="1166.2224" y2="341.7607" gradientTransform="matrix(-0.8251 0.565 -0.565 -0.8251 1396.1484 581.625)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_6_)" points="512.132,596.864 563.228,578.317 660.703,846.856 609.606,865.403 "/>
<linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="126.5542" y1="501.042" x2="1150.0634" y2="501.042" gradientTransform="matrix(-0.2689 0.9632 -0.9632 -0.2689 1403.0156 -27.5205)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_7_)" points="562.971,578.427 590.19,531.375 837.475,674.432 810.255,721.484 "/>
<linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="-84.0576" y1="639.9004" x2="940.2671" y2="639.9004" gradientTransform="matrix(0.4131 0.9107 -0.9107 0.4131 1025.9099 -406.9004)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>
</linearGradient>
<polygon fill="url(#SVGID_8_)" points="589.539,531.381 580.147,477.84 861.533,428.476 870.927,482.018 "/>
<linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="-333.6509" y1="564.4238" x2="691.8616" y2="564.4238" gradientTransform="matrix(0.9028 0.43 -0.43 0.9028 446.634 -371.2861)">
<stop offset="0" style="stop-color:#662D91"/>
<stop offset="1" style="stop-color:#9B8579"/>

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View file

@ -20,7 +20,7 @@ class DynLoad {
if (e.target['href']) {
// Prevent the default action
e.preventDefault();
// Create a new ajax object
var loader: AJAX = new AJAX();

View file

@ -126,7 +126,7 @@ var Sakura = (function () {
60: ['minute', 'a'],
1: ['second', 'a']
};
//
//
var timeKeys = Object.keys(times).reverse();
// Iterate over the times
for (var i in timeKeys) {

View file

@ -6,7 +6,7 @@
class Sakura {
public static cookiePrefix: string = ""; // Cookie prefix, gets prepended to cookie names
public static cookiePath: string = "/"; // Cookie path, can in most cases be left untouched
// Get or set a cookie value
public static cookie(name: string, value: string = null): string {
// If value is null only get the cookie's value
@ -74,7 +74,7 @@ class Sakura {
public static unique(string: string): number {
// Store the already found character
var used: string[] = [];
// The amount of characters we've already found
var count: number = 0;
@ -150,7 +150,7 @@ class Sakura {
1: ['second', 'a']
};
//
//
var timeKeys: string[] = Object.keys(times).reverse();
// Iterate over the times

View file

@ -1,14 +0,0 @@
; Sakura Template Configuration
[meta]
; Display name of the style, only used in the admin section of the management panel.
name = Mio
; Author of this template.
author = Flashwave
; If you set a URL below your name becomes a clickable link in the management panel.
author_url = https://flash.moe
[manage]
; This defines whether the template is intended for the management panel.
; When it's incorrect Sakura will halt execution of the script.
mode = 0

View file

@ -1,14 +0,0 @@
; Sakura Template Configuration
[meta]
; Display name of the style, only used in the admin section of the management panel.
name = Misaki
; Author of this template.
author = Flashwave
; If you set a URL below your name becomes a clickable link in the management panel.
author_url = https://flash.moe
[manage]
; This defines whether the template is intended for the management panel.
; When it's incorrect Sakura will halt execution of the script.
mode = 0

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1,57 +0,0 @@
<h1 class="stylised">Statistics</h1>
<table class="settings-table">
<thead>
<tr><th>Statistic</th><th>Value</th><th>Statistic</th><th>Value</th></tr>
</thead>
<tbody>
<tr>
<td>Number of posts</td>
<td>{{ stats.postcount }}</td>
<td>Number of users</td>
<td>{{ stats.userscount }}</td>
</tr>
<tr>
<td>Posts per day</td>
<td>x</td>
<td>Users per day</td>
<td>x</td>
</tr>
<tr>
<td>Number of threads</td>
<td>{{ stats.threadcount }}</td>
<td>Number of bans</td>
<td>{{ stats.bancount }}</td>
</tr>
<tr>
<td>Threads per day</td>
<td>x</td>
<td>Bans per day</td>
<td>x</td>
</tr>
<tr>
<td>Number of comments</td>
<td>{{ stats.commentcount }}</td>
<td>Number of uploads</td>
<td>{{ stats.uploadcount }}</td>
</tr>
<tr>
<td>Comments per day</td>
<td>x</td>
<td>Size of uploads</td>
<td>x</td>
</tr>
</tbody>
</table><br />
<h1 class="stylised">Most recent reports</h1>
<table class="settings-table">
<thead>
<tr><th>Reporter</th><th>Action</th><th>When</th><th></th></tr>
</thead>
<tbody>
<tr><td>Nippon Nick</td><td>User: Japan Joe</td><td>2000 years ago on cybernetics</td><td style="width: 70px;"><a href="#" class="default">View</a></td></tr>
<tr><td>Sam Hyde</td><td>Post: bug sports a shit</td><td>4000 years ago on knuckleste.co.uk</td><td style="width: 70px;"><a href="#" class="default">View</a></td></tr>
</tbody>
</table><br />
<h1 class="stylised">Most recent actions</h1>
<br />
<h1 class="stylised">Most recent moderation actions</h1>

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />

View file

@ -1 +0,0 @@
<br />