Version update
This commit is contained in:
parent
76d39c002c
commit
e817a39bd0
145
ddatefunc.php
145
ddatefunc.php
|
@ -2,8 +2,8 @@
|
|||
/*
|
||||
Plugin Name: Discordian Date Function
|
||||
Plugin URI: https://is3.soundragon.su/discordian-date-function
|
||||
Description: Convert dates in Wordpress to Discordian dates. Also, this plugin provides shortcode and widget used to display the current erisian date with notification of 70 holydays. Based on the Discordian Date plugin by Dan Johnson.
|
||||
Version: 0.5
|
||||
Description: Convert dates in Wordpress to customizable Discordian dates. Also, this plugin provides shortcode and widget used to display the current erisian date with notification of 70 holydays. Based on the Discordian Date plugin by Dan Johnson.
|
||||
Version: 0.55
|
||||
Author: ivan zlax
|
||||
Author URI: https://is3.soundragon.su/about
|
||||
*/
|
||||
|
@ -37,6 +37,7 @@ function get_ddate($content, $format = "", $originalRequest = null) {
|
|||
$dseason=(int)($yday/73);
|
||||
$name_season=$season_list[$dseason];
|
||||
$dday=($yday-(73*$dseason))+1;
|
||||
$clear_dday=$dday;
|
||||
$suff=$dday%10;
|
||||
|
||||
switch ($suff) {
|
||||
|
@ -54,8 +55,34 @@ function get_ddate($content, $format = "", $originalRequest = null) {
|
|||
}
|
||||
|
||||
$dweekday=$day_list[($yday%5)];
|
||||
$ddate=$dweekday.", the ".$dday." day of ".$name_season.", in the yold ".$dyear;
|
||||
|
||||
if ($originalRequest == "now") {
|
||||
$ddate=$dweekday.", the ".$dday." day of ".$name_season.", in the yold ".$dyear;
|
||||
} else {
|
||||
$patterns = array();
|
||||
$patterns[0] = '%DY';
|
||||
$patterns[1] = '%DS';
|
||||
$patterns[2] = '%DD';
|
||||
$patterns[3] = '%DC';
|
||||
$patterns[4] = '%DW';
|
||||
$patterns[5] = '%GY';
|
||||
$patterns[6] = '%GM';
|
||||
$patterns[7] = '%GN';
|
||||
$patterns[8] = '%GD';
|
||||
$patterns[9] = '%GW';
|
||||
$replacements = array();
|
||||
$replacements[0] = $dyear;
|
||||
$replacements[1] = $name_season;
|
||||
$replacements[2] = $dday;
|
||||
$replacements[3] = $clear_dday;
|
||||
$replacements[4] = $dweekday;
|
||||
$replacements[5] = $standard_date["year"];
|
||||
$replacements[6] = $standard_date["month"];
|
||||
$replacements[7] = $standard_date["mon"];
|
||||
$replacements[8] = $standard_date["mday"];
|
||||
$replacements[9] = $standard_date["weekday"];
|
||||
$ddate = str_replace($patterns, $replacements, get_option('ddatefunc_string'));
|
||||
}
|
||||
return $ddate;
|
||||
}
|
||||
|
||||
|
@ -77,12 +104,15 @@ class Discordian_Date_Widget extends WP_Widget {
|
|||
$dday=($yday-(73*$dseason))+1;
|
||||
$a_holiday=array("Mungday", "Mojoday", "Syaday", "Zaraday", "Maladay");
|
||||
$s_holiday=array("Chaoflux", "Discoflux", "Confuflux", "Bureflux", "Afflux");
|
||||
$m_holyday=array("Chaomas", "Discomas", "Confumas", "Buremas", "Afmas");
|
||||
$t_holyday=array("Chaosloth", "Discosloth", "Confusloth", "Buresloth", "Afsloth");
|
||||
$e_holyday=array("Mungeye", "Mojeye", "Syadeye", "Zareye", "Maleye");
|
||||
$holyday="";
|
||||
|
||||
if ($dday==5) {
|
||||
$holyday = " Celebrate ".$a_holiday[$dseason].".";
|
||||
$holyday = " Celebrate Apostle Day, ".$a_holiday[$dseason].".";
|
||||
} elseif ($dday==50) {
|
||||
$holyday = " Celebrate ".$s_holiday[$dseason].".";
|
||||
$holyday = " Celebrate Flux Day, ".$s_holiday[$dseason].".";
|
||||
} elseif ($mon==2 && $mday==29) {
|
||||
$holyday = " Celebrate St. Tib's Day.";
|
||||
} elseif ($dseason==2 && $dday==28) {
|
||||
|
@ -92,11 +122,11 @@ class Discordian_Date_Widget extends WP_Widget {
|
|||
} elseif ($dseason==4 && $dday==65) {
|
||||
$holyday = " Celebrate Circlemas.";
|
||||
} elseif ($dday==23) {
|
||||
$holyday = " Celebrate Synaptyclypse Day.";
|
||||
$holyday = " Celebrate Synaptyclypse Day, ".$m_holiday[$dseason].".";
|
||||
} elseif ($dday==27) {
|
||||
$holyday = " Celebrate Sloth Day.";
|
||||
$holyday = " Celebrate Sloth Day, ".$t_holiday[$dseason].".";
|
||||
} elseif ($dday==73) {
|
||||
$holyday = " Celebrate Eye Day.";
|
||||
$holyday = " Celebrate Eye Day, ".$e_holiday[$dseason].".";
|
||||
} elseif ($dseason==0 && $dday==8) {
|
||||
$holyday = " Celebrate Death of Emperor Norton.";
|
||||
} elseif ($dseason==0 && $dday==10) {
|
||||
|
@ -244,7 +274,106 @@ function return_today_ddate() {
|
|||
return get_ddate($content, $format, "now");
|
||||
}
|
||||
|
||||
$settings_name = "Discordian Date Function Settings";
|
||||
|
||||
function ddatefunc_add_admin() {
|
||||
global $settings_name;
|
||||
add_options_page(__('Settings').': '.$settings_name, $settings_name, 'edit_themes', basename(__FILE__), 'ddatefunc_admin');
|
||||
}
|
||||
|
||||
function ddatefunc_admin() {
|
||||
global $settings_name;
|
||||
?>
|
||||
<div class="wrap">
|
||||
<?php
|
||||
screen_icon();
|
||||
echo '<h2>'.$settings_name.'</h2>';
|
||||
if (isset($_POST['save'])) {
|
||||
update_option('ddatefunc_string', stripslashes($_POST['textfield']));
|
||||
if (isset($_POST['checkbox']))
|
||||
update_option('ddatefunc_change', "1");
|
||||
else
|
||||
update_option('ddatefunc_change', "0");
|
||||
echo '<div id="setting-error-settings_updated" class="updated settings-error"><p><b>'.__('Settings saved.').'</b></p></div>';
|
||||
}
|
||||
?>
|
||||
<form method="post">
|
||||
<table class="form-table">
|
||||
<tr valign="top">
|
||||
<th scope="row">Date string:</th>
|
||||
<td>
|
||||
<input name="textfield" class="regular-text" type="text" value="<?php echo get_option('ddatefunc_string'); ?>" >
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<th scope="row">Legend:</th>
|
||||
<td>
|
||||
<b>%DY</b> - Discordian yold (example: 3180)<br>
|
||||
<b>%DS</b> - Erisian season name (example: Chaos)<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>
|
||||
<b>%GY</b> - Gregorian year (example: 2014)<br>
|
||||
<b>%GM</b> - Gregorian month (example: January)<br>
|
||||
<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>
|
||||
<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>
|
||||
<br>
|
||||
<b>%DC %DS, %DY (%GN.%GN.%GY)</b><br> returns:<br><b>5 Chaos, 3180 (5.1.2014)</br>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<th scope="row">Convert all post and comments dates:</th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<legend class="screen-reader-text">
|
||||
<span>Convert to Discordian dates</span>
|
||||
</legend>
|
||||
<label for="users_can_register">
|
||||
<input name="checkbox" id="users_can_register" type="checkbox" value="1" <?php if(get_option('ddatefunc_change')==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'); ?>" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
function ddatefunc_settings( $actions, $plugin_file ) {
|
||||
if( false === strpos( $plugin_file, basename(__FILE__) ) )
|
||||
return $actions;
|
||||
|
||||
$settings_link = '<a href="options-general.php?page=ddatefunc.php' .'">Settings</a>';
|
||||
array_unshift( $actions, $settings_link );
|
||||
return $actions;
|
||||
}
|
||||
|
||||
function ddatefunc_deinstall() {
|
||||
delete_option('ddatefunc_string');
|
||||
delete_option('ddatefunc_change');
|
||||
}
|
||||
|
||||
add_shortcode( 'today_ddate', 'return_today_ddate' );
|
||||
add_action( 'widgets_init', 'register_ddatefunc_widget' );
|
||||
add_option( 'ddatefunc_string', '%DD day of %DS, in the yold %DY');
|
||||
add_option( 'ddatefunc_change', '1');
|
||||
|
||||
add_filter( 'plugin_action_links', 'ddatefunc_settings', 10, 2 );
|
||||
add_action( 'admin_menu', 'ddatefunc_add_admin' );
|
||||
|
||||
if ( get_option('ddatefunc_change') == '1' ) {
|
||||
add_filter( 'get_the_date','get_the_ddate_post' );
|
||||
add_filter( 'get_comment_date','get_the_ddate_comment' );
|
||||
}
|
||||
|
||||
if (function_exists('register_uninstall_hook'))
|
||||
register_uninstall_hook(__FILE__, 'ddatefunc_deinstall');
|
18
readme.txt
18
readme.txt
|
@ -13,9 +13,9 @@ Also provides shortcode and widget which displays the current date according to
|
|||
|
||||
== Description ==
|
||||
|
||||
This plugin allows WordPress to easily show Erisian dates instead of the standard Gregorian dates. No theme changes are required.
|
||||
This plugin allows WordPress to easily show customizable Erisian dates instead of the standard Gregorian dates. No theme changes are required.
|
||||
|
||||
The Discordian Date plugin provides a widget which will display the current date according to the [Discordian calendar](http://en.wikipedia.org/wiki/Discordian_calendar). This functional based on the Discordian Date plugin by Dan Johnson.
|
||||
The Discordian Date Function plugin provides a widget which will display the current date according to the [Discordian calendar](http://en.wikipedia.org/wiki/Discordian_calendar). This functional based on the Discordian Date plugin by Dan Johnson.
|
||||
|
||||
And you can add the shortcode [today_ddate] in posts or pages for show the Discordian date of today.
|
||||
|
||||
|
@ -24,6 +24,7 @@ And you can add the shortcode [today_ddate] in posts or pages for show the Disco
|
|||
1. Extract the files from archive.
|
||||
1. Upload the folder ddatefunc and its contents to the /wp-content/plugins/ directory.
|
||||
1. Activate the plugin through the 'Plugins' menu in WordPress.
|
||||
1. Press 'Settings' for customize date string.
|
||||
1. If you want to add widget: position the widget in an available area on your pages using the Widgets section of your WordPress administration control panel.
|
||||
1. Use the widget options to give the widget any title you'd like.
|
||||
1. (Optional) if you want to add the erisian date of today than you need to add <?php today_ddate() ?> where you want.
|
||||
|
@ -40,10 +41,19 @@ Feel free to ask any questions about this plugin at the [Discordian Date Functio
|
|||
|
||||
== Changelog ==
|
||||
|
||||
= 0.55 =
|
||||
*Release Date - 5th day of Discord, 3183*
|
||||
|
||||
* Fixed names of some Whollydays.
|
||||
* Add settings page.
|
||||
* Add customizable date string.
|
||||
|
||||
= 0.5 =
|
||||
*Release Date - 2nd day of Discord, 3183*
|
||||
|
||||
* First public release.
|
||||
|
||||
== Upgrade Notice ==
|
||||
|
||||
= 0.5 =
|
||||
This version is the first public release.
|
||||
= 0.55 =
|
||||
This version is actual.
|
||||
|
|
Loading…
Reference in New Issue