When I attempt to minify and obfuscate your persianDatePicker.js file with YUICompressor. I get following error :
WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] The variable jgGOrJ has already been declared in the same scope...
:function (d,jgGOrJ){var jgGOrJ ---> = <--- (jgGOrJ===undefined)?0:jgGOrJ
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] The variable d has already been declared in the same scope...
;var m=m0+0;var d ---> = <--- d0+0;if(m<=2
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: _cw
.options;_fontSize=options.fontSize;_cw ---> = <--- parseInt(options.cellWidth);_ch=
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: _ch
_cw=parseInt(options.cellWidth);_ch ---> = <--- parseInt(options.cellHeight);self.
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: b
f===undefined&&l===undefined){b ---> = <--- self.persianDate.year-7;a
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: a
=self.persianDate.year-7;a ---> = <--- self.persianDate.year+14;}
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: i
}var arr=[];for(i ---> = <--- b;i<a&&b>0
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: c
self.options.selectableYears==undefined){c ---> = <--- $(this).find("li")
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: jd
_days.appendTo(this.calendar);jd ---> = <--- self.persianDate;jd.date=1
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: _dt
.html(" ");}else{_dt ---> = <--- self.getDate(self.persianDate,cellIndex
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: arr
},parse:function (s){arr ---> = <--- s.split("/");y=
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: y
arr=s.split("/");y ---> = <--- arr[0];m=arr[
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: m
);y=arr[0];m ---> = <--- arr[1];d=arr[
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: d
];m=arr[1];d ---> = <--- arr[2];wd=arr[
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: wd
];d=arr[2];wd ---> = <--- arr[3];var r=new
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: jdf
;var r=new persianDate();jdf ---> = <--- new jDateFunctions();r.year=
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: res
"۶","۷","۸","۹"];res ---> = <--- "";for(i=0;i
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: r
y=c-4715;}}}r ---> = <--- new Date();return new Date(
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: y0
},getJulianDayFromPersian:function (pd){y0 ---> = <--- pd.year,m0=pd.month
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: m0
pd){y0=pd.year,m0 ---> = <--- pd.month,d0=pd.date
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: d0
.year,m0=pd.month,d0 ---> = <--- pd.date;var epbase=y0-
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] Found an undeclared symbol: wds
},getWeekday:function (jd){wds ---> = <--- [1,2,3,4,
[WARNING] .../target/modules/datePicker/org/omidbiz/renderkit/html/script/persianDatePicker.js:line -1:column -1:[WARNING] The symbol f is declared but is apparently never used.
This code can probably be written in a more efficient way.