version 3.5
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
Plugin Name: Discordian Date Function
|
||||
Plugin URI: https://is3.soundragon.su/discordian-date-function
|
||||
Plugin URI: https://is3.ussr.win/discordian-date-function
|
||||
Description: Convert dates in Wordpress to customizable Discordian dates and time (decimal). Also, this plugin provides shortcode and widget used to display the current erisian date with notification of 70 holidays. Based on the Discordian Date plugin by Dan Johnson.
|
||||
Version: 2.5555
|
||||
Version: 3.5
|
||||
Author: ivan zlax
|
||||
Author URI: https://is3.soundragon.su/about
|
||||
Author URI: https://is3.ussr.win/about
|
||||
*/
|
||||
|
||||
function get_ddate($content, $format = "", $originalRequest = null) {
|
||||
@@ -45,6 +45,7 @@ function get_ddate($content, $format = "", $originalRequest = null) {
|
||||
if ($originalRequest == "get_the_time") return dtime_convert($standard_date);
|
||||
|
||||
$dyear=$standard_date["year"]+1166;
|
||||
$eyear=$dyear-3000;
|
||||
$gyear=$standard_date["year"];
|
||||
$yday=$standard_date["yday"];
|
||||
// Check Tib's day according to Gregorian calendar
|
||||
@@ -77,8 +78,14 @@ function get_ddate($content, $format = "", $originalRequest = null) {
|
||||
$dweekday=$day_list[($yday%5)];
|
||||
|
||||
if ($originalRequest == "now") {
|
||||
$ddate=$dweekday.", the ".$dday." day of ".$name_season.", in the yold ".$dyear;
|
||||
if (isset($sttib)) $ddate=$sttib." day, in the yold ".$dyear;
|
||||
|
||||
if (get_option('ee_widget')) {
|
||||
$ddate=$dweekday.", the ".$dday." day of ".$name_season.", in the year ".$eyear." of the erisian era";
|
||||
if (isset($sttib)) $ddate=$sttib." day, in the year ".$eyear." of the erisian era";
|
||||
} else {
|
||||
$ddate=$dweekday.", the ".$dday." day of ".$name_season.", in the yold ".$dyear;
|
||||
if (isset($sttib)) $ddate=$sttib." day, in the yold ".$dyear;
|
||||
}
|
||||
} else {
|
||||
$patterns = array();
|
||||
$patterns[0] = '%DY';
|
||||
@@ -94,6 +101,8 @@ function get_ddate($content, $format = "", $originalRequest = null) {
|
||||
$patterns[10] = '%DT';
|
||||
$patterns[11] = '%CT';
|
||||
$patterns[12] = '%UT';
|
||||
$patterns[13] = '%EY';
|
||||
$patterns[14] = '%ES';
|
||||
$replacements = array();
|
||||
$replacements[0] = $dyear;
|
||||
$replacements[1] = $name_season;
|
||||
@@ -112,6 +121,8 @@ function get_ddate($content, $format = "", $originalRequest = null) {
|
||||
$replacements[10] = dtime_convert($standard_date);
|
||||
$replacements[11] = $standard_date["hours"] . ":" . str_pad($standard_date["minutes"], 2, '0', STR_PAD_LEFT);
|
||||
$replacements[12] = $standard_date[0];
|
||||
$replacements[13] = $eyear;
|
||||
$replacements[14] = $dseason + 1;
|
||||
$ddate = str_replace($patterns, $replacements, get_option('ddatefunc_string'));
|
||||
}
|
||||
return $ddate;
|
||||
@@ -144,11 +155,10 @@ function utcm5_convert($standard_date) {
|
||||
}
|
||||
|
||||
class Discordian_Date_Widget extends WP_Widget {
|
||||
|
||||
function Discordian_Date_Widget() {
|
||||
$widget_ops = array('classname' => 'discordian_date_func', 'description' => 'Display the current date according to the Discordian Calendar.');
|
||||
function __construct() {
|
||||
$widget_ops = array('classname' => 'discordian_date_func', 'name' => 'Discordian Date Widget', 'description' => 'Display the current date according to the Discordian Calendar.');
|
||||
$control_ops = array('width' => 200, 'height' => 120);
|
||||
$this->WP_Widget('discordian_date_func', 'Discordian Date Widget', $widget_ops, $control_ops);
|
||||
parent::__construct( 'Discordian_Date_Widget', 'Discordian Date Widget', $widget_ops );
|
||||
}
|
||||
|
||||
function widget($args, $instance) {
|
||||
@@ -280,7 +290,7 @@ class Discordian_Date_Widget extends WP_Widget {
|
||||
|
||||
extract($args);
|
||||
$title = $instance['title'];
|
||||
$body = apply_filters('widget_text', $instance['body']);
|
||||
$body = apply_filters('widget_text', isset($instance['body']));
|
||||
|
||||
ob_start();
|
||||
echo "<div class=\"discordian_date_func\" style=\"width:100%;text-align:center;font-size:18px;line-height:36px;padding-top:40px;padding-bottom:40px;\">";
|
||||
@@ -292,7 +302,7 @@ class Discordian_Date_Widget extends WP_Widget {
|
||||
echo "<h1 style=\"font-size: 255%\" id=\"dtime\"></h1>";
|
||||
}
|
||||
echo "Today is ";
|
||||
echo get_ddate($content, $format, "now").".";
|
||||
echo get_ddate(isset($content), isset($format), "now").".";
|
||||
if ($holiday) echo "<br><b>".$holiday."</b>";
|
||||
echo "</div>";
|
||||
$body2 = ob_get_contents();
|
||||
@@ -309,7 +319,7 @@ class Discordian_Date_Widget extends WP_Widget {
|
||||
}
|
||||
|
||||
function form($instance) {
|
||||
$title = $instance['title'];
|
||||
$title = isset($instance['title']);
|
||||
$title_id = $this->get_field_id('title');
|
||||
$title_name = $this->get_field_name('title');
|
||||
?>
|
||||
@@ -382,6 +392,10 @@ function ddatefunc_admin() {
|
||||
update_option('dtime_widgetsec', "1");
|
||||
else
|
||||
update_option('dtime_widgetsec', "0");
|
||||
if (isset($_POST['ee_widget_checkbox']))
|
||||
update_option('ee_widget', "1");
|
||||
else
|
||||
update_option('ee_widget', "0");
|
||||
echo '<div id="setting-error-settings_updated" class="updated settings-error"><p><b>'.__('Settings saved.').'</b></p></div>';
|
||||
}
|
||||
?>
|
||||
@@ -396,8 +410,10 @@ function ddatefunc_admin() {
|
||||
<tr valign="top">
|
||||
<th scope="row">Legend:</th>
|
||||
<td>
|
||||
<b>%EY</b> - Erisian era year (example: 180)<br>
|
||||
<b>%DY</b> - Discordian yold (example: 3180)<br>
|
||||
<b>%DS</b> - Erisian season name (example: Chaos)<br>
|
||||
<b>%DS</b> - Discordian season name (example: Chaos)<br>
|
||||
<b>%ES</b> - Erisian season number (example: 1)<br>
|
||||
<b>%DD</b> - Discordian season day (example: 5th)<br>
|
||||
<b>%DC</b> - Clear erisian day number (example: 5)<br>
|
||||
<b>%DW</b> - Discordian week day (example: Setting Orange)<br>
|
||||
@@ -406,15 +422,17 @@ function ddatefunc_admin() {
|
||||
<b>%GN</b> - Gregorian month number (example: 1)<br>
|
||||
<b>%GD</b> - Gregorian month day (example: 5)<br>
|
||||
<b>%GW</b> - Gregorian weekday (example: Friday)<br>
|
||||
<b>%DT</b> - Discordian (decimal) time (example: 5:67)<br>
|
||||
<b>%CT</b> - Christian time (example: 23:00)<br>
|
||||
<b>%UT</b> - Unix time (example: 1555222555)<br>
|
||||
<b>%DT</b> - Erisian (decimal) time (example: 5:67)<br>
|
||||
<b>%CT</b> - Christian time (example: 18:37)<br>
|
||||
<b>%UT</b> - Unix time (example: 1388947033)<br>
|
||||
<br>
|
||||
Examples<br>
|
||||
<br>
|
||||
<b>%DW, the %DD day of %DS, in the yold %DY</b><br> returns:<br><b>Setting Orange, the 5th day of Chaos, in the yold 3180</b><br>
|
||||
<b>%EY.%ES.%DC %DT ee (unittime: %UT)</b> <i>(returns: 180.1.5 5:67 ee (unixtime: 1388947033))</i></br>
|
||||
<br>
|
||||
<b>%DC %DS, %DY (%GN.%GN.%GY)</b><br> returns:<br><b>5 Chaos, 3180 (5.1.2014)</br>
|
||||
<b>%DW, the %DD day of %DS, in the yold %DY</b> <i>(returns: Setting Orange, the 5th day of Chaos, in the yold 3180)</i><br>
|
||||
<br>
|
||||
<b>%DC %DS, %DY (%GN.%GN.%GY)</b> <i>(returns: 5 Chaos, 3180 (5.1.2014))</i></br>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
@@ -482,6 +500,19 @@ Examples<br>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<th scope="row">Use the erisian era in the widget:</th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<legend class="screen-reader-text">
|
||||
<span>Erisian era</span>
|
||||
</legend>
|
||||
<label for="users_can_register">
|
||||
<input name="ee_widget_checkbox" id="users_can_register" type="checkbox" value="1" <?php if(get_option('ee_widget')==1) { echo 'checked="checked"'; } ?>>
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="submit">
|
||||
<input name="save" type="submit" class="button-primary" value="<?php echo __('Save Cganges'); ?>" />
|
||||
@@ -507,6 +538,7 @@ function ddatefunc_deinstall() {
|
||||
delete_option('dtime_convert');
|
||||
delete_option('dtime_widget');
|
||||
delete_option('dtime_widgetsec');
|
||||
delete_option('ee_widget');
|
||||
}
|
||||
|
||||
function ddatefunc_init() {
|
||||
@@ -521,7 +553,7 @@ add_option('dtimefunc_change', '1');
|
||||
add_option('dtime_convert', '1');
|
||||
add_option('dtime_widget', '1');
|
||||
add_option('dtime_widgetsec', '1');
|
||||
|
||||
add_option('ee_widget', '1');
|
||||
add_filter('plugin_action_links', 'ddatefunc_settings', 10, 2);
|
||||
add_action('admin_menu', 'ddatefunc_add_admin');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user