customisable seconds in the widget
This commit is contained in:
parent
ea64a55218
commit
235b11259a
|
@ -3,7 +3,7 @@
|
|||
Plugin Name: Discordian Date Function
|
||||
Plugin URI: https://is3.soundragon.su/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.555
|
||||
Version: 2.5555
|
||||
Author: ivan zlax
|
||||
Author URI: https://is3.soundragon.su/about
|
||||
*/
|
||||
|
@ -284,7 +284,13 @@ class Discordian_Date_Widget extends WP_Widget {
|
|||
|
||||
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;\">";
|
||||
if (get_option('dtime_widget')) echo "<h1 style=\"font-size: 255%\" id=\"dtime\"></h1>";
|
||||
if (get_option('dtime_widget')) {
|
||||
if (get_option('dtime_convert'))
|
||||
echo "<script type=\"text/javascript\">var eastertime = true;</script>";
|
||||
if (get_option('dtime_widgetsec'))
|
||||
echo "<script type=\"text/javascript\">var widgetsec = true;</script>";
|
||||
echo "<h1 style=\"font-size: 255%\" id=\"dtime\"></h1>";
|
||||
}
|
||||
echo "Today is ";
|
||||
echo get_ddate($content, $format, "now").".";
|
||||
if ($holiday) echo "<br><b>".$holiday."</b>";
|
||||
|
@ -372,6 +378,10 @@ function ddatefunc_admin() {
|
|||
update_option('dtime_widget', "1");
|
||||
else
|
||||
update_option('dtime_widget', "0");
|
||||
if (isset($_POST['dtime_widgetsec_checkbox']))
|
||||
update_option('dtime_widgetsec', "1");
|
||||
else
|
||||
update_option('dtime_widgetsec', "0");
|
||||
echo '<div id="setting-error-settings_updated" class="updated settings-error"><p><b>'.__('Settings saved.').'</b></p></div>';
|
||||
}
|
||||
?>
|
||||
|
@ -459,6 +469,19 @@ Examples<br>
|
|||
</fieldset>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<th scope="row">Display seconds in erisian time clock in the widget:</th>
|
||||
<td>
|
||||
<fieldset>
|
||||
<legend class="screen-reader-text">
|
||||
<span>Seconds in the widget</span>
|
||||
</legend>
|
||||
<label for="users_can_register">
|
||||
<input name="dtime_widgetsec_checkbox" id="users_can_register" type="checkbox" value="1" <?php if(get_option('dtime_widgetsec')==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'); ?>" />
|
||||
|
@ -483,6 +506,7 @@ function ddatefunc_deinstall() {
|
|||
delete_option('dtimefunc_change');
|
||||
delete_option('dtime_convert');
|
||||
delete_option('dtime_widget');
|
||||
delete_option('dtime_widgetsec');
|
||||
}
|
||||
|
||||
function ddatefunc_init() {
|
||||
|
@ -496,6 +520,7 @@ add_option('ddatefunc_change', '1');
|
|||
add_option('dtimefunc_change', '1');
|
||||
add_option('dtime_convert', '1');
|
||||
add_option('dtime_widget', '1');
|
||||
add_option('dtime_widgetsec', '1');
|
||||
|
||||
add_filter('plugin_action_links', 'ddatefunc_settings', 10, 2);
|
||||
add_action('admin_menu', 'ddatefunc_add_admin');
|
||||
|
|
37
dtime.js
37
dtime.js
|
@ -3,35 +3,48 @@
|
|||
* https://gitlab.com/zlax/dtime-js
|
||||
*/
|
||||
|
||||
function az(x) {
|
||||
if (x < 10)
|
||||
return "0"+x;
|
||||
return x;
|
||||
function addZero(numeral) {
|
||||
if (numeral < 10)
|
||||
return "0"+numeral;
|
||||
return numeral;
|
||||
}
|
||||
|
||||
function dtime(gregorianDate,resultar="default") {
|
||||
if (typeof eastertime != "undefined") {
|
||||
// Easter Island Winter Time Zone offset (-5*60*60*1000)
|
||||
var date = new Date(gregorianDate.getTime()-18000000);
|
||||
var christianMSDay = date.valueOf() % 86400000;
|
||||
var ds = (1 / (864 / christianMSDay));
|
||||
var h = Math.floor(ds/10000);
|
||||
ds%= 10000;
|
||||
var m = Math.floor(ds/100);
|
||||
ds%= 100;
|
||||
var s = Math.floor(ds);
|
||||
} else {
|
||||
// Christian Time Zone calculation
|
||||
var date = new Date(gregorianDate.getTime());
|
||||
var h = date.getHours();
|
||||
var m = date.getMinutes();
|
||||
var s = date.getSeconds();
|
||||
var ms = date.getMilliseconds();
|
||||
var christianMSDay = h*3600000+m*60000+s*1000+ms;
|
||||
}
|
||||
var erisianSecondsDay = (christianMSDay/864);
|
||||
var hour = Math.floor(erisianSecondsDay/10000);
|
||||
erisianSecondsDay %= 10000;
|
||||
var minute = Math.floor(erisianSecondsDay/100);
|
||||
erisianSecondsDay %= 100;
|
||||
var second = Math.floor(erisianSecondsDay);
|
||||
|
||||
switch (resultar) {
|
||||
case "seconds":
|
||||
return h+":"+az(m)+":"+az(s);
|
||||
return hour+":"+addZero(minute)+":"+addZero(second);
|
||||
break;
|
||||
default:
|
||||
return h+":"+az(m);
|
||||
return hour+":"+addZero(minute);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function go() {
|
||||
if (typeof widgetsec != "undefined")
|
||||
document.getElementById("dtime").innerHTML = dtime(new Date(), "seconds");
|
||||
else
|
||||
document.getElementById("dtime").innerHTML = dtime(new Date());
|
||||
}
|
||||
|
||||
window.onload = function() {
|
||||
|
|
Loading…
Reference in New Issue