jQuery UI Datepicker 1.8.16 民國年 Extender
Code Snippet
- /*
* jQuery UI Datepicker 1.8.16
* Taiwan's Minguo calendar extender
* This extender modified the year to Taiwan's Minguo calendar
* Extended by Eddie Chen- */
- $.extend($.datepicker,{
- /* Parse existing date and initialise date picker. */
- _setDateFromField: function(inst, noDefault) {
- if (inst.input.val() == inst.lastVal) {
- return;
- }
- var dateFormat = this._get(inst, 'dateFormat');
- var dates = inst.lastVal = inst.input ? inst.input.val() : null;
- var date, defaultDate;
- date = defaultDate = this._getDefaultDate(inst);
- var settings = this._getFormatConfig(inst);
- try {
- //date = this.parseDate(dateFormat, dates, settings) || defaultDate;
- if(dates.couny>0)
- {
- var dateArr = dates.split("/");
- var year = parseInt(dateArr[0], 10) + 1911;
- var month = parseInt(dateArr[1], 10);
- var day = parseInt(dateArr[2], 10);
- date = new Date(year, month, day);
- }
- } catch (event) {
- this.log(event);
- dates = (noDefault ? '' : dates);
- }
- inst.selectedDay = date.getDate();
- inst.drawMonth = inst.selectedMonth = date.getMonth();
- inst.drawYear = date.getFullYear();
- inst.selectedYear = date.getFullYear();
- inst.currentDay = (dates ? date.getDate() : 0);
- inst.currentMonth = (dates ? date.getMonth() : 0);
- inst.currentYear = (dates ? date.getFullYear() : 0);
- this._adjustInstDate(inst);
- },
- _daylightSavingAdjust: function(date) {
- if (!date) return null;
- date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0);
- if (!date) return null;
- if((date.getFullYear()-1911)>0)
- date.getFullYear((date.getFullYear()-1911));
- else
- date.getFullYear((date.getFullYear()));
- return date;
- },
- _taiwanDateAdjust: function(date) {
- if (!date) return null;
- if((date.getFullYear()-1911)>0)
- date.setFullYear((date.getFullYear()-1911),date.getMonth(),date.getDay());
- else
- date.setFullYear((date.getFullYear()),date.getMonth(),date.getDay());
- return date;
- },
- /* Generate the month and year header. */
- _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate,
- secondary, monthNames, monthNamesShort) {
- var changeMonth = this._get(inst, 'changeMonth');
- var changeYear = this._get(inst, 'changeYear');
- var showMonthAfterYear = this._get(inst, 'showMonthAfterYear');
- var html = '<div class="ui-datepicker-title">';
- var monthHtml = '';
- // month selection
- if (secondary || !changeMonth)
- monthHtml += '<span class="ui-datepicker-month">' + monthNames[drawMonth] + '</span>';
- else {
- var inMinYear = (minDate && minDate.getFullYear() == drawYear);
- var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear);
- monthHtml += '<select class="ui-datepicker-month" ' +
- 'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'M\');" ' +
- '>';
- for (var month = 0; month < 12; month++) {
- if ((!inMinYear || month >= minDate.getMonth()) &&
- (!inMaxYear || month <= maxDate.getMonth()))
- monthHtml += '<option value="' + month + '"' +
- (month == drawMonth ? ' selected="selected"' : '') +
- '>' + monthNamesShort[month] + '</option>';
- }
- monthHtml += '</select>';
- }
- if (!showMonthAfterYear)
- html += monthHtml + (secondary || !(changeMonth && changeYear) ? ' ' : '');
- // year selection
- if ( !inst.yearshtml ) {
- inst.yearshtml = '';
- if (secondary || !changeYear)
- if((drawYear-1911) >0)
- html += '<span class="ui-datepicker-year">' + (drawYear-1911) + '</span>';
- else
- html += '<span class="ui-datepicker-year">' + drawYear + '</span>';
- else {
- // determine range of years to display
- var years = this._get(inst, 'yearRange').split(':');
- var thisYear = new Date().getFullYear();
- var determineYear = function(value) {
- var year = (value.match(/c[+-].*/) ? drawYear + parseInt(value.substring(1), 10) :
- (value.match(/[+-].*/) ? thisYear + parseInt(value, 10) :
- parseInt(value, 10)));
- return (isNaN(year) ? thisYear : year);
- };
- var year = determineYear(years[0]);
- var endYear = Math.max(year, determineYear(years[1] || ''));
- year = (minDate ? Math.max(year, minDate.getFullYear()) : year);
- endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear);
- inst.yearshtml += '<select class="ui-datepicker-year" ' +
- 'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' +
- '>';
- if((drawYear-1911) >0)
- {
- for (; year <= endYear; year++) {
- inst.yearshtml += '<option value="' + year + '"' +
- (year == drawYear ? ' selected="selected"' : '') +
- '>' + (year-1911) + '</option>';
- }
- }
- else
- {
- for (; year <= endYear; year++) {
- inst.yearshtml += '<option value="' + year + '"' +
- (year == drawYear ? ' selected="selected"' : '') +
- '>' + (year) + '</option>';
- }
- }
- inst.yearshtml += '</select>';
- html += inst.yearshtml;
- inst.yearshtml = null;
- }
- }
- html += this._get(inst, 'yearSuffix');
- if (showMonthAfterYear)
- html += (secondary || !(changeMonth && changeYear) ? ' ' : '') + monthHtml;
- html += '</div>'; // Close datepicker_header
- return html;
- },
- _formatDate : function(inst, day, month, year)
- {
- if (!day)
- {
- inst.currentDay = inst.selectedDay;
- inst.currentMonth = inst.selectedMonth;
- inst.currentYear = inst.selectedYear;
- }
- var date = (day ? (typeof day == 'object' ? day :
- this._daylightSavingAdjust(new Date(year, month, day))) :
- this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay)));
- return (date.getFullYear() - 1911) + "/" +
- (date.getMonth() < 9 ? "0" + (date.getMonth() + 1) : (date.getMonth() + 1)) + "/" +
- (date.getDate() < 10 ? "0" + date.getDate() : date.getDate());
- }
- });
Sunday, September 04, 2011
jQuery UI Datepicker 1.8.16 民國年 Extender
Saturday, August 27, 2011
How to prevent seeing “\ No newline at end of file” when using Git with Visual Studio
1. In Visual Studio menu, select Tools > Macros > Macros IDE
2. Select the Class View tab. Under My Macros, double click the EnvironmentEvents node.
3. select DocumentEvents from the dropdown list on the left, then select DocumentSaved from the dropdown list on the right. This will generate a blank event handler.
4. Paste the following code into the blank event handler.
Private Sub DocumentEvents_DocumentSaved(ByVal Document As EnvDTE.Document) Handles DocumentEvents.DocumentSaved
'
' This handler will add a newline to end of file if it doesn't already have one.
'
Dim textSelection As EnvDTE.TextSelectiontextSelection = CType(DTE.ActiveDocument.Selection(), EnvDTE.TextSelection)
Dim originalLine As Integer
originalLine = textSelection.AnchorPoint.Line
Dim originalOffset As Integer
originalOffset = textSelection.AnchorPoint.LineCharOffset
Dim viewTop As EnvDTE.TextPoint
viewTop = textSelection.TextPane.StartPointtextSelection.EndOfDocument(False)
Dim pt As VirtualPoint
pt = textSelection.BottomPoint()textSelection.GotoLine(pt.Line, True)
If textSelection.Text.Length <> 0 Then
textSelection.Text = textSelection.Text & vbCrLf
DTE.ActiveDocument.Save()
End If
textSelection.MoveToLineAndOffset(originalLine, originalOffset, False)
textSelection.TextPane.TryToShow(viewTop, vsPaneShowHow.vsPaneShowTop)
End Sub5. Save the macro
From now on all the files saved through Visual Studio will be appended with a new line to avoid the error message in the Git source control.
Sunday, February 20, 2011
Android Development Study Notes 2 - Opiton Menus
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="AllDepartment">List All Depts</string>
<string name="Seach">Search</string>
</resources>
Add the following codes in the activity class
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 0, 0,this.getResources().getString(R.string.AllDepartment));
menu.add(0, 1, 1, this.getResources().getString(R.string.Seach));
return super.onCreateOptionsMenu(menu);
}
When user click on "menu" button, 2 option menus would appear at the bottom of the screen.
Android Study Notes 1 - "Hello World"
"Hello World"
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, DroidActivity!</string>
<string name="app_name">Droid1</string>
<string name="hello1">你好!</string>
</resources>
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<TextView android:id="@+id/textView1"android:layout_width="wrap_content" android:layout_height="wrap_content"android:text="@string/hello1"></TextView>
</LinearLayout>
DroidAvtivity.java
package com.myandroid.droid1;
import android.app.Activity;
import android.os.Bundle;
public class DroidActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
Wednesday, November 10, 2010
Validation of viewstate MAC failed
Cannot convert type ASP.login_aspx to System.Web.UI.WebControls.Login
Cannot convert type ASP.login_aspx to System.Web.UI.WebControls.Login |
public
partial
class
Login : System.Web.UI.Page to
public
partial
class
myLogin : System.Web.UI.Page
2. In login.aspx
Change
<%@ Page Language="C#" ValidateRequest="false" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %>Monday, June 07, 2010
SQL script to get table metadata form a SQL server
Tuesday, December 01, 2009
To disable right click event in JavaScript using jQuery
$(function() {
$(this).bind("contextmenu", function(e) {
e.preventDefault();
});
});
Friday, August 07, 2009
WF Activity to send a plurk message
using System;
using System.ComponentModel;
using System.Workflow.Activities;
using System.Workflow.ComponentModel;
namespace SendPlurkMessageActivity
{
public partial class SendPlurkMessageActivity: SequenceActivity
{
public SendPlurkMessageActivity()
{
InitializeComponent();
}
#region Public workflow members
public static DependencyProperty PlurkUserNameProperty = DependencyProperty.Register("PlurkUserName", typeof(string), typeof(SendPlurkMessageActivity));
[DescriptionAttribute("PlurkUserName")]
[CategoryAttribute("PlurkUserName Category")]
[BrowsableAttribute(true)]
[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)]
public string PlurkUserName
{
get
{
return ((string)(base.GetValue(SendPlurkMessageActivity.PlurkUserNameProperty)));
}
set
{
base.SetValue(SendPlurkMessageActivity.PlurkUserNameProperty, value);
}
}
public static DependencyProperty PlurkPasswordProperty = DependencyProperty.Register("PlurkPassword", typeof(string), typeof(SendPlurkMessageActivity));
[DescriptionAttribute("PlurkPassword")]
[CategoryAttribute("PlurkPassword Category")]
[BrowsableAttribute(true)]
[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)]
public string PlurkPassword
{
get
{
return ((string)(base.GetValue(SendPlurkMessageActivity.PlurkPasswordProperty)));
}
set
{
base.SetValue(SendPlurkMessageActivity.PlurkPasswordProperty, value);
}
}
public static DependencyProperty PlurkMessageBodyProperty = DependencyProperty.Register("PlurkMessageBody", typeof(string), typeof(SendPlurkMessageActivity));
[DescriptionAttribute("PlurkMessageBody")]
[CategoryAttribute("PlurkMessageBody Category")]
[BrowsableAttribute(true)]
[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)]
public string PlurkMessageBody
{
get
{
return ((string)(base.GetValue(SendPlurkMessageActivity.PlurkMessageBodyProperty)));
}
set
{
base.SetValue(SendPlurkMessageActivity.PlurkMessageBodyProperty, value);
}
}
#endregion
protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
{
try
{
PlurkApi.PlurkApi api = new PlurkApi.PlurkApi();
if (api.Login(PlurkUserName, PlurkPassword))
{
api.addMessage("tr_ch", string.Empty, PlurkMessageBody, true, string.Empty);
//api.
//api.addMessage("tr_ch", string.Empty, "Plurking from WWF C# CustomizedAction. Current Taiwan time is " + DateTime.Now.ToLongDateString() + " " + DateTime.Now.ToLongTimeString(), true, string.Empty);
}
}
catch (Exception ex)
{
}
return ActivityExecutionStatus.Closed;
}
}
}