You've already forked joomla_test
first commit
This commit is contained in:
34
templates/as002036free/js/general.js
Normal file
34
templates/as002036free/js/general.js
Normal file
@ -0,0 +1,34 @@
|
||||
|
||||
/***************************************************************************************/
|
||||
/*
|
||||
/* Designed by 'AS Designing'
|
||||
/* Web: http://www.asdesigning.com
|
||||
/* Email: info@asdesigning.com
|
||||
/* License: Creative Commons
|
||||
/*
|
||||
/**************************************************************************************/
|
||||
|
||||
var asjQuery = jQuery.noConflict();
|
||||
|
||||
asjQuery(window).load(function()
|
||||
{
|
||||
asjQuery("#phocagallery-module-ri").css("margin", "0px auto");
|
||||
asjQuery(".menu li").fadeIn(1);
|
||||
});
|
||||
|
||||
|
||||
asjQuery(document).ready(function()
|
||||
{
|
||||
asjQuery('#mainmenu ul li.deeper').hover(
|
||||
function() {
|
||||
asjQuery(this).addClass("actives");
|
||||
asjQuery(this).find('>ul').stop(false, true).fadeIn();
|
||||
asjQuery(this).find('>ul ul').stop(false, true).fadeOut('fast');
|
||||
},
|
||||
function() {
|
||||
asjQuery(this).removeClass("actives");
|
||||
asjQuery(this).find('ul').stop(false, true).fadeOut('fast');
|
||||
}
|
||||
);
|
||||
});
|
||||
|
10
templates/as002036free/js/jquery.isotope.min.js
vendored
Normal file
10
templates/as002036free/js/jquery.isotope.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
templates/as002036free/js/jquery.js
vendored
Normal file
4
templates/as002036free/js/jquery.js
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
templates/as002036free/js/jscolors/arrow.gif
Normal file
BIN
templates/as002036free/js/jscolors/arrow.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 66 B |
BIN
templates/as002036free/js/jscolors/cross.gif
Normal file
BIN
templates/as002036free/js/jscolors/cross.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 83 B |
BIN
templates/as002036free/js/jscolors/hs.png
Normal file
BIN
templates/as002036free/js/jscolors/hs.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.6 KiB |
BIN
templates/as002036free/js/jscolors/hv.png
Normal file
BIN
templates/as002036free/js/jscolors/hv.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.8 KiB |
4
templates/as002036free/js/jscolors/index.html
Normal file
4
templates/as002036free/js/jscolors/index.html
Normal file
@ -0,0 +1,4 @@
|
||||
<html>
|
||||
<body bgcolor="#FFFFFF">
|
||||
</body>
|
||||
</html>
|
830
templates/as002036free/js/jscolors/jscolor.js
Normal file
830
templates/as002036free/js/jscolors/jscolor.js
Normal file
@ -0,0 +1,830 @@
|
||||
/**
|
||||
* jscolor, JavaScript Color Picker
|
||||
*
|
||||
* @version 1.2.3
|
||||
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
|
||||
* @author Honza Odvarko <honza@odvarko.cz>
|
||||
* @created 2008-06-15
|
||||
* @updated 2009-02-25
|
||||
* @link http://jscolor.com
|
||||
*/
|
||||
|
||||
|
||||
var jscolor = {
|
||||
|
||||
|
||||
dir : '', // location of jscolor directory (leave empty to autodetect)
|
||||
bindClass : 'color', // class name
|
||||
binding : true, // automatic binding via <input class="...">
|
||||
preloading : true, // use image preloading?
|
||||
|
||||
|
||||
install : function() {
|
||||
jscolor.addEvent(window, 'load', jscolor.init)
|
||||
},
|
||||
|
||||
|
||||
init : function() {
|
||||
if(jscolor.binding) {
|
||||
jscolor.bind()
|
||||
}
|
||||
if(jscolor.preloading) {
|
||||
jscolor.preload()
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
getDir : function() {
|
||||
if(!jscolor.dir) {
|
||||
var detected = jscolor.detectDir()
|
||||
jscolor.dir = detected!=false ? detected : 'jscolor/'
|
||||
}
|
||||
return jscolor.dir
|
||||
},
|
||||
|
||||
|
||||
detectDir : function() {
|
||||
var base = location.href
|
||||
|
||||
var e = document.getElementsByTagName('base')
|
||||
for(var i=0; i<e.length; i++) {
|
||||
if(e[i].href) base = e[i].href
|
||||
}
|
||||
|
||||
var e = document.getElementsByTagName('script')
|
||||
for(var i=0; i<e.length; i++) {
|
||||
if(e[i].src && /(^|\/)jscolor\.js([?#].*)?$/i.test(e[i].src)) {
|
||||
var src = new jscolor.URI(e[i].src)
|
||||
var srcAbs = src.toAbsolute(base)
|
||||
srcAbs.path = srcAbs.path.replace(/[^\/]+$/, '') // remove filename
|
||||
delete srcAbs.query
|
||||
delete srcAbs.fragment
|
||||
return srcAbs.toString()
|
||||
}
|
||||
}
|
||||
return false
|
||||
},
|
||||
|
||||
|
||||
bind : function() {
|
||||
var matchClass = new RegExp('(^|\\s)('+jscolor.bindClass+')\\s*(\\{[^}]*\\})?', 'i')
|
||||
var e = document.getElementsByTagName('input')
|
||||
for(var i=0; i<e.length; i++) {
|
||||
var m
|
||||
if(!e[i].color && e[i].className && (m = e[i].className.match(matchClass))) {
|
||||
var prop = {}
|
||||
if(m[3]) {
|
||||
try {
|
||||
eval('prop='+m[3])
|
||||
} catch(eInvalidProp) {}
|
||||
}
|
||||
e[i].color = new jscolor.color(e[i], prop)
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
preload : function() {
|
||||
for(var fn in jscolor.imgRequire) {
|
||||
jscolor.loadImage(fn)
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
images : {
|
||||
pad : [ 181, 101 ],
|
||||
sld : [ 16, 101 ],
|
||||
cross : [ 15, 15 ],
|
||||
arrow : [ 7, 11 ]
|
||||
},
|
||||
|
||||
|
||||
imgRequire : {},
|
||||
imgLoaded : {},
|
||||
|
||||
|
||||
requireImage : function(filename) {
|
||||
jscolor.imgRequire[filename] = true
|
||||
},
|
||||
|
||||
|
||||
loadImage : function(filename) {
|
||||
if(!jscolor.imgLoaded[filename]) {
|
||||
jscolor.imgLoaded[filename] = new Image()
|
||||
jscolor.imgLoaded[filename].src = jscolor.getDir()+filename
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
fetchElement : function(mixed) {
|
||||
return typeof(mixed) == 'string' ? document.getElementById(mixed) : mixed
|
||||
},
|
||||
|
||||
|
||||
addEvent : function(el, evnt, func) {
|
||||
if(el.addEventListener) {
|
||||
return el.addEventListener(evnt, func, false)
|
||||
} else if(el.attachEvent) {
|
||||
return el.attachEvent('on'+evnt, func)
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
fireEvent : function(el, evnt) {
|
||||
if(!el) {
|
||||
return false
|
||||
} else if(document.createEventObject) {
|
||||
var ev = document.createEventObject()
|
||||
return el.fireEvent('on'+evnt, ev)
|
||||
} else if(document.createEvent) {
|
||||
var ev = document.createEvent('HTMLEvents')
|
||||
ev.initEvent(evnt, true, true)
|
||||
return el.dispatchEvent(ev)
|
||||
} else if(el['on'+evnt]) { // alternatively use the traditional event model (IE5)
|
||||
return el['on'+evnt]()
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
getElementPos : function(e) {
|
||||
var e1=e, e2=e
|
||||
var x=0, y=0
|
||||
if(e1.offsetParent) {
|
||||
do {
|
||||
x += e1.offsetLeft
|
||||
y += e1.offsetTop
|
||||
} while(e1 = e1.offsetParent)
|
||||
}
|
||||
while((e2 = e2.parentNode) && e2.nodeName != 'BODY') {
|
||||
x -= e2.scrollLeft
|
||||
y -= e2.scrollTop
|
||||
}
|
||||
return [x, y]
|
||||
},
|
||||
|
||||
|
||||
getElementSize : function(e) {
|
||||
return [e.offsetWidth, e.offsetHeight]
|
||||
},
|
||||
|
||||
|
||||
getMousePos : function(e) {
|
||||
if(!e) e = window.event
|
||||
if(typeof e.pageX == 'number') {
|
||||
return [e.pageX, e.pageY]
|
||||
} else if(typeof e.clientX == 'number') {
|
||||
return [
|
||||
e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft,
|
||||
e.clientY + document.body.scrollTop + document.documentElement.scrollTop
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
getViewPos : function() {
|
||||
if(typeof window.pageYOffset == 'number') {
|
||||
return [window.pageXOffset, window.pageYOffset]
|
||||
} else if(document.body && (document.body.scrollLeft || document.body.scrollTop)) {
|
||||
return [document.body.scrollLeft, document.body.scrollTop]
|
||||
} else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) {
|
||||
return [document.documentElement.scrollLeft, document.documentElement.scrollTop]
|
||||
} else {
|
||||
return [0, 0]
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
getViewSize : function() {
|
||||
if(typeof window.innerWidth == 'number') {
|
||||
return [window.innerWidth, window.innerHeight]
|
||||
} else if(document.body && (document.body.clientWidth || document.body.clientHeight)) {
|
||||
return [document.body.clientWidth, document.body.clientHeight]
|
||||
} else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
|
||||
return [document.documentElement.clientWidth, document.documentElement.clientHeight]
|
||||
} else {
|
||||
return [0, 0]
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
URI : function(uri) { // See RFC3986
|
||||
|
||||
this.scheme = null
|
||||
this.authority = null
|
||||
this.path = ''
|
||||
this.query = null
|
||||
this.fragment = null
|
||||
|
||||
this.parse = function(uri) {
|
||||
var m = uri.match(/^(([A-Za-z][0-9A-Za-z+.-]*)(:))?((\/\/)([^\/?#]*))?([^?#]*)((\?)([^#]*))?((#)(.*))?/)
|
||||
this.scheme = m[3] ? m[2] : null
|
||||
this.authority = m[5] ? m[6] : null
|
||||
this.path = m[7]
|
||||
this.query = m[9] ? m[10] : null
|
||||
this.fragment = m[12] ? m[13] : null
|
||||
return this
|
||||
}
|
||||
|
||||
this.toString = function() {
|
||||
var result = ''
|
||||
if(this.scheme != null) result = result + this.scheme + ':'
|
||||
if(this.authority != null) result = result + '//' + this.authority
|
||||
if(this.path != null) result = result + this.path
|
||||
if(this.query != null) result = result + '?' + this.query
|
||||
if(this.fragment != null) result = result + '#' + this.fragment
|
||||
return result
|
||||
}
|
||||
|
||||
this.toAbsolute = function(base) {
|
||||
var base = new jscolor.URI(base)
|
||||
var r = this
|
||||
var t = new jscolor.URI
|
||||
|
||||
if(base.scheme == null) return false
|
||||
|
||||
if(r.scheme != null && r.scheme.toLowerCase() == base.scheme.toLowerCase()) {
|
||||
r.scheme = null
|
||||
}
|
||||
|
||||
if(r.scheme != null) {
|
||||
t.scheme = r.scheme
|
||||
t.authority = r.authority
|
||||
t.path = removeDotSegments(r.path)
|
||||
t.query = r.query
|
||||
} else {
|
||||
if(r.authority != null) {
|
||||
t.authority = r.authority
|
||||
t.path = removeDotSegments(r.path)
|
||||
t.query = r.query
|
||||
} else {
|
||||
if(r.path == '') {
|
||||
t.path = base.path
|
||||
if(r.query != null) {
|
||||
t.query = r.query
|
||||
} else {
|
||||
t.query = base.query
|
||||
}
|
||||
} else {
|
||||
if(r.path.substr(0,1) == '/') {
|
||||
t.path = removeDotSegments(r.path)
|
||||
} else {
|
||||
if(base.authority != null && base.path == '') {
|
||||
t.path = '/'+r.path
|
||||
} else {
|
||||
t.path = base.path.replace(/[^\/]+$/,'')+r.path
|
||||
}
|
||||
t.path = removeDotSegments(t.path)
|
||||
}
|
||||
t.query = r.query
|
||||
}
|
||||
t.authority = base.authority
|
||||
}
|
||||
t.scheme = base.scheme
|
||||
}
|
||||
t.fragment = r.fragment
|
||||
|
||||
return t
|
||||
}
|
||||
|
||||
function removeDotSegments(path) {
|
||||
var out = ''
|
||||
while(path) {
|
||||
if(path.substr(0,3)=='../' || path.substr(0,2)=='./') {
|
||||
path = path.replace(/^\.+/,'').substr(1)
|
||||
} else if(path.substr(0,3)=='/./' || path=='/.') {
|
||||
path = '/'+path.substr(3)
|
||||
} else if(path.substr(0,4)=='/../' || path=='/..') {
|
||||
path = '/'+path.substr(4)
|
||||
out = out.replace(/\/?[^\/]*$/, '')
|
||||
} else if(path=='.' || path=='..') {
|
||||
path = ''
|
||||
} else {
|
||||
var rm = path.match(/^\/?[^\/]*/)[0]
|
||||
path = path.substr(rm.length)
|
||||
out = out + rm
|
||||
}
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
if(uri) {
|
||||
this.parse(uri)
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Usage example:
|
||||
* var myColor = new jscolor.color(myInputElement)
|
||||
*/
|
||||
|
||||
color : function(target, prop) {
|
||||
|
||||
|
||||
this.required = true // refuse empty values?
|
||||
this.adjust = true // adjust value to uniform notation?
|
||||
this.hash = false // prefix color with # symbol?
|
||||
this.caps = true // uppercase?
|
||||
this.valueElement = target // value holder
|
||||
this.styleElement = target // where to reflect current color
|
||||
this.hsv = [0, 0, 1] // read-only 0-6, 0-1, 0-1
|
||||
this.rgb = [1, 1, 1] // read-only 0-1, 0-1, 0-1
|
||||
|
||||
this.pickerOnfocus = true // display picker on focus?
|
||||
this.pickerMode = 'HSV' // HSV | HVS
|
||||
this.pickerPosition = 'bottom' // left | right | top | bottom
|
||||
this.pickerFace = 10 // px
|
||||
this.pickerFaceColor = 'ThreeDFace' // CSS color
|
||||
this.pickerBorder = 1 // px
|
||||
this.pickerBorderColor = 'ThreeDHighlight ThreeDShadow ThreeDShadow ThreeDHighlight' // CSS color
|
||||
this.pickerInset = 1 // px
|
||||
this.pickerInsetColor = 'ThreeDShadow ThreeDHighlight ThreeDHighlight ThreeDShadow' // CSS color
|
||||
this.pickerZIndex = 10000
|
||||
|
||||
|
||||
for(var p in prop) this[p] = prop[p]
|
||||
|
||||
|
||||
this.hidePicker = function() {
|
||||
if(isPickerOwner()) {
|
||||
removePicker()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.showPicker = function() {
|
||||
if(!isPickerOwner()) {
|
||||
var tp = jscolor.getElementPos(target) // target pos
|
||||
var ts = jscolor.getElementSize(target) // target size
|
||||
var vp = jscolor.getViewPos() // view pos
|
||||
var vs = jscolor.getViewSize() // view size
|
||||
var ps = [ // picker size
|
||||
2*this.pickerBorder + 4*this.pickerInset + 2*this.pickerFace + jscolor.images.pad[0] + 2*jscolor.images.arrow[0] + jscolor.images.sld[0],
|
||||
2*this.pickerBorder + 2*this.pickerInset + 2*this.pickerFace + jscolor.images.pad[1]
|
||||
]
|
||||
var a, b, c
|
||||
switch(this.pickerPosition.toLowerCase()) {
|
||||
case 'left': a=1; b=0; c=-1; break
|
||||
case 'right':a=1; b=0; c=1; break
|
||||
case 'top': a=0; b=1; c=-1; break
|
||||
default: a=0; b=1; c=1; break
|
||||
}
|
||||
var l = (ts[b]+ps[b])/2
|
||||
var pp = [ // picker pos
|
||||
-vp[a]+tp[a]+ps[a] > vs[a] ?
|
||||
(-vp[a]+tp[a]+ts[a]/2 > vs[a]/2 && tp[a]+ts[a]-ps[a] >= 0 ? tp[a]+ts[a]-ps[a] : tp[a]) :
|
||||
tp[a],
|
||||
-vp[b]+tp[b]+ts[b]+ps[b]-l+l*c > vs[b] ?
|
||||
(-vp[b]+tp[b]+ts[b]/2 > vs[b]/2 && tp[b]+ts[b]-l-l*c >= 0 ? tp[b]+ts[b]-l-l*c : tp[b]+ts[b]-l+l*c) :
|
||||
(tp[b]+ts[b]-l+l*c >= 0 ? tp[b]+ts[b]-l+l*c : tp[b]+ts[b]-l-l*c)
|
||||
]
|
||||
drawPicker(pp[a], pp[b])
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.importColor = function() {
|
||||
if(!valueElement) {
|
||||
this.exportColor()
|
||||
} else {
|
||||
if(!this.adjust) {
|
||||
if(!this.fromString(valueElement.value, leaveValue)) {
|
||||
styleElement.style.backgroundColor = styleElement.jscStyle.backgroundColor
|
||||
styleElement.style.color = styleElement.jscStyle.color
|
||||
this.exportColor(leaveValue | leaveStyle)
|
||||
}
|
||||
} else if(!this.required && /^\s*$/.test(valueElement.value)) {
|
||||
valueElement.value = ''
|
||||
styleElement.style.backgroundColor = styleElement.jscStyle.backgroundColor
|
||||
styleElement.style.color = styleElement.jscStyle.color
|
||||
this.exportColor(leaveValue | leaveStyle)
|
||||
|
||||
} else if(this.fromString(valueElement.value)) {
|
||||
// OK
|
||||
} else {
|
||||
this.exportColor()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.exportColor = function(flags) {
|
||||
if(!(flags & leaveValue) && valueElement) {
|
||||
var value = this.toString()
|
||||
if(this.caps) value = value.toUpperCase()
|
||||
if(this.hash) value = '#'+value
|
||||
valueElement.value = value
|
||||
}
|
||||
if(!(flags & leaveStyle) && styleElement) {
|
||||
styleElement.style.backgroundColor = '#'+this.toString()
|
||||
styleElement.style.color =
|
||||
0.213 * this.rgb[0] +
|
||||
0.715 * this.rgb[1] +
|
||||
0.072 * this.rgb[2]
|
||||
< 0.5 ? '#FFF' : '#000'
|
||||
}
|
||||
if(!(flags & leavePad) && isPickerOwner()) {
|
||||
redrawPad()
|
||||
}
|
||||
if(!(flags & leaveSld) && isPickerOwner()) {
|
||||
redrawSld()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.fromHSV = function(h, s, v, flags) { // null = don't change
|
||||
h<0 && (h=0) || h>6 && (h=6)
|
||||
s<0 && (s=0) || s>1 && (s=1)
|
||||
v<0 && (v=0) || v>1 && (v=1)
|
||||
this.rgb = HSV_RGB(
|
||||
h==null ? this.hsv[0] : (this.hsv[0]=h),
|
||||
s==null ? this.hsv[1] : (this.hsv[1]=s),
|
||||
v==null ? this.hsv[2] : (this.hsv[2]=v)
|
||||
)
|
||||
this.exportColor(flags)
|
||||
}
|
||||
|
||||
|
||||
this.fromRGB = function(r, g, b, flags) { // null = don't change
|
||||
r<0 && (r=0) || r>1 && (r=1)
|
||||
g<0 && (g=0) || g>1 && (g=1)
|
||||
b<0 && (b=0) || b>1 && (b=1)
|
||||
var hsv = RGB_HSV(
|
||||
r==null ? this.rgb[0] : (this.rgb[0]=r),
|
||||
g==null ? this.rgb[1] : (this.rgb[1]=g),
|
||||
b==null ? this.rgb[2] : (this.rgb[2]=b)
|
||||
)
|
||||
if(hsv[0] != null) {
|
||||
this.hsv[0] = hsv[0]
|
||||
}
|
||||
if(hsv[2] != 0) {
|
||||
this.hsv[1] = hsv[1]
|
||||
}
|
||||
this.hsv[2] = hsv[2]
|
||||
this.exportColor(flags)
|
||||
}
|
||||
|
||||
|
||||
this.fromString = function(hex, flags) {
|
||||
var m = hex.match(/^\W*([0-9A-F]{3}([0-9A-F]{3})?)\W*$/i)
|
||||
if(!m) {
|
||||
return false
|
||||
} else {
|
||||
if(m[1].length == 6) { // 6-char notation
|
||||
this.fromRGB(
|
||||
parseInt(m[1].substr(0,2),16) / 255,
|
||||
parseInt(m[1].substr(2,2),16) / 255,
|
||||
parseInt(m[1].substr(4,2),16) / 255,
|
||||
flags
|
||||
)
|
||||
} else { // 3-char notation
|
||||
this.fromRGB(
|
||||
parseInt(m[1].charAt(0)+m[1].charAt(0),16) / 255,
|
||||
parseInt(m[1].charAt(1)+m[1].charAt(1),16) / 255,
|
||||
parseInt(m[1].charAt(2)+m[1].charAt(2),16) / 255,
|
||||
flags
|
||||
)
|
||||
}
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.toString = function() {
|
||||
return (
|
||||
(0x100 | Math.round(255*this.rgb[0])).toString(16).substr(1) +
|
||||
(0x100 | Math.round(255*this.rgb[1])).toString(16).substr(1) +
|
||||
(0x100 | Math.round(255*this.rgb[2])).toString(16).substr(1)
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
function RGB_HSV(r, g, b) {
|
||||
var n = Math.min(Math.min(r,g),b)
|
||||
var v = Math.max(Math.max(r,g),b)
|
||||
var m = v - n
|
||||
if(m == 0) return [ null, 0, v ]
|
||||
var h = r==n ? 3+(b-g)/m : (g==n ? 5+(r-b)/m : 1+(g-r)/m)
|
||||
return [ h==6?0:h, m/v, v ]
|
||||
}
|
||||
|
||||
|
||||
function HSV_RGB(h, s, v) {
|
||||
if(h == null) return [ v, v, v ]
|
||||
var i = Math.floor(h)
|
||||
var f = i%2 ? h-i : 1-(h-i)
|
||||
var m = v * (1 - s)
|
||||
var n = v * (1 - s*f)
|
||||
switch(i) {
|
||||
case 6:
|
||||
case 0: return [v,n,m]
|
||||
case 1: return [n,v,m]
|
||||
case 2: return [m,v,n]
|
||||
case 3: return [m,n,v]
|
||||
case 4: return [n,m,v]
|
||||
case 5: return [v,m,n]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function removePicker() {
|
||||
delete jscolor.picker.owner
|
||||
document.getElementsByTagName('body')[0].removeChild(jscolor.picker.boxB)
|
||||
}
|
||||
|
||||
|
||||
function drawPicker(x, y) {
|
||||
if(!jscolor.picker) {
|
||||
jscolor.picker = {
|
||||
box : document.createElement('div'),
|
||||
boxB : document.createElement('div'),
|
||||
pad : document.createElement('div'),
|
||||
padB : document.createElement('div'),
|
||||
padM : document.createElement('div'),
|
||||
sld : document.createElement('div'),
|
||||
sldB : document.createElement('div'),
|
||||
sldM : document.createElement('div')
|
||||
}
|
||||
for(var i=0,segSize=4; i<jscolor.images.sld[1]; i+=segSize) {
|
||||
var seg = document.createElement('div')
|
||||
seg.style.height = segSize+'px'
|
||||
seg.style.fontSize = '1px'
|
||||
seg.style.lineHeight = '0'
|
||||
jscolor.picker.sld.appendChild(seg)
|
||||
}
|
||||
jscolor.picker.sldB.appendChild(jscolor.picker.sld)
|
||||
jscolor.picker.box.appendChild(jscolor.picker.sldB)
|
||||
jscolor.picker.box.appendChild(jscolor.picker.sldM)
|
||||
jscolor.picker.padB.appendChild(jscolor.picker.pad)
|
||||
jscolor.picker.box.appendChild(jscolor.picker.padB)
|
||||
jscolor.picker.box.appendChild(jscolor.picker.padM)
|
||||
jscolor.picker.boxB.appendChild(jscolor.picker.box)
|
||||
}
|
||||
|
||||
var p = jscolor.picker
|
||||
|
||||
// recompute controls positions
|
||||
posPad = [
|
||||
x+THIS.pickerBorder+THIS.pickerFace+THIS.pickerInset,
|
||||
y+THIS.pickerBorder+THIS.pickerFace+THIS.pickerInset ]
|
||||
posSld = [
|
||||
null,
|
||||
y+THIS.pickerBorder+THIS.pickerFace+THIS.pickerInset ]
|
||||
|
||||
// controls interaction
|
||||
p.box.onmouseup =
|
||||
p.box.onmouseout = function() { target.focus() }
|
||||
p.box.onmousedown = function() { abortBlur=true }
|
||||
p.box.onmousemove = function(e) { holdPad && setPad(e); holdSld && setSld(e) }
|
||||
p.padM.onmouseup =
|
||||
p.padM.onmouseout = function() { if(holdPad) { holdPad=false; jscolor.fireEvent(valueElement,'change') } }
|
||||
p.padM.onmousedown = function(e) { holdPad=true; setPad(e) }
|
||||
p.sldM.onmouseup =
|
||||
p.sldM.onmouseout = function() { if(holdSld) { holdSld=false; jscolor.fireEvent(valueElement,'change') } }
|
||||
p.sldM.onmousedown = function(e) { holdSld=true; setSld(e) }
|
||||
|
||||
// picker
|
||||
p.box.style.width = 4*THIS.pickerInset + 2*THIS.pickerFace + jscolor.images.pad[0] + 2*jscolor.images.arrow[0] + jscolor.images.sld[0] + 'px'
|
||||
p.box.style.height = 2*THIS.pickerInset + 2*THIS.pickerFace + jscolor.images.pad[1] + 'px'
|
||||
|
||||
// picker border
|
||||
p.boxB.style.position = 'absolute'
|
||||
p.boxB.style.clear = 'both'
|
||||
p.boxB.style.left = x+'px'
|
||||
p.boxB.style.top = y+'px'
|
||||
p.boxB.style.zIndex = THIS.pickerZIndex
|
||||
p.boxB.style.border = THIS.pickerBorder+'px solid'
|
||||
p.boxB.style.borderColor = THIS.pickerBorderColor
|
||||
p.boxB.style.background = THIS.pickerFaceColor
|
||||
|
||||
// pad image
|
||||
p.pad.style.width = jscolor.images.pad[0]+'px'
|
||||
p.pad.style.height = jscolor.images.pad[1]+'px'
|
||||
|
||||
// pad border
|
||||
p.padB.style.position = 'absolute'
|
||||
p.padB.style.left = THIS.pickerFace+'px'
|
||||
p.padB.style.top = THIS.pickerFace+'px'
|
||||
p.padB.style.border = THIS.pickerInset+'px solid'
|
||||
p.padB.style.borderColor = THIS.pickerInsetColor
|
||||
|
||||
// pad mouse area
|
||||
p.padM.style.position = 'absolute'
|
||||
p.padM.style.left = '0'
|
||||
p.padM.style.top = '0'
|
||||
p.padM.style.width = THIS.pickerFace + 2*THIS.pickerInset + jscolor.images.pad[0] + jscolor.images.arrow[0] + 'px'
|
||||
p.padM.style.height = p.box.style.height
|
||||
p.padM.style.cursor = 'crosshair'
|
||||
|
||||
// slider image
|
||||
p.sld.style.overflow = 'hidden'
|
||||
p.sld.style.width = jscolor.images.sld[0]+'px'
|
||||
p.sld.style.height = jscolor.images.sld[1]+'px'
|
||||
|
||||
// slider border
|
||||
p.sldB.style.position = 'absolute'
|
||||
p.sldB.style.right = THIS.pickerFace+'px'
|
||||
p.sldB.style.top = THIS.pickerFace+'px'
|
||||
p.sldB.style.border = THIS.pickerInset+'px solid'
|
||||
p.sldB.style.borderColor = THIS.pickerInsetColor
|
||||
|
||||
// slider mouse area
|
||||
p.sldM.style.position = 'absolute'
|
||||
p.sldM.style.right = '0'
|
||||
p.sldM.style.top = '0'
|
||||
p.sldM.style.width = jscolor.images.sld[0] + jscolor.images.arrow[0] + THIS.pickerFace + 2*THIS.pickerInset + 'px'
|
||||
p.sldM.style.height = p.box.style.height
|
||||
try {
|
||||
p.sldM.style.cursor = 'pointer'
|
||||
} catch(eOldIE) {
|
||||
p.sldM.style.cursor = 'hand'
|
||||
}
|
||||
|
||||
// load images in optimal order
|
||||
switch(modeID) {
|
||||
case 0: var padImg = 'hs.png'; break
|
||||
case 1: var padImg = 'hv.png'; break
|
||||
}
|
||||
p.padM.style.background = "url('"+jscolor.getDir()+"cross.gif') no-repeat"
|
||||
p.sldM.style.background = "url('"+jscolor.getDir()+"arrow.gif') no-repeat"
|
||||
p.pad.style.background = "url('"+jscolor.getDir()+padImg+"') 0 0 no-repeat"
|
||||
|
||||
// place pointers
|
||||
redrawPad()
|
||||
redrawSld()
|
||||
|
||||
jscolor.picker.owner = THIS
|
||||
document.getElementsByTagName('body')[0].appendChild(p.boxB)
|
||||
}
|
||||
|
||||
|
||||
function redrawPad() {
|
||||
// redraw the pad pointer
|
||||
switch(modeID) {
|
||||
case 0: var yComponent = 1; break
|
||||
case 1: var yComponent = 2; break
|
||||
}
|
||||
var x = Math.round((THIS.hsv[0]/6) * (jscolor.images.pad[0]-1))
|
||||
var y = Math.round((1-THIS.hsv[yComponent]) * (jscolor.images.pad[1]-1))
|
||||
jscolor.picker.padM.style.backgroundPosition =
|
||||
(THIS.pickerFace+THIS.pickerInset+x - Math.floor(jscolor.images.cross[0]/2)) + 'px ' +
|
||||
(THIS.pickerFace+THIS.pickerInset+y - Math.floor(jscolor.images.cross[1]/2)) + 'px'
|
||||
|
||||
// redraw the slider image
|
||||
var seg = jscolor.picker.sld.childNodes
|
||||
|
||||
switch(modeID) {
|
||||
case 0:
|
||||
var rgb = HSV_RGB(THIS.hsv[0], THIS.hsv[1], 1)
|
||||
for(var i=0; i<seg.length; i++) {
|
||||
seg[i].style.backgroundColor = 'rgb('+
|
||||
(rgb[0]*(1-i/seg.length)*100)+'%,'+
|
||||
(rgb[1]*(1-i/seg.length)*100)+'%,'+
|
||||
(rgb[2]*(1-i/seg.length)*100)+'%)'
|
||||
}
|
||||
break
|
||||
case 1:
|
||||
var rgb, s, c = [ THIS.hsv[2], 0, 0 ]
|
||||
var i = Math.floor(THIS.hsv[0])
|
||||
var f = i%2 ? THIS.hsv[0]-i : 1-(THIS.hsv[0]-i)
|
||||
switch(i) {
|
||||
case 6:
|
||||
case 0: rgb=[0,1,2]; break
|
||||
case 1: rgb=[1,0,2]; break
|
||||
case 2: rgb=[2,0,1]; break
|
||||
case 3: rgb=[2,1,0]; break
|
||||
case 4: rgb=[1,2,0]; break
|
||||
case 5: rgb=[0,2,1]; break
|
||||
}
|
||||
for(var i=0; i<seg.length; i++) {
|
||||
s = 1 - 1/(seg.length-1)*i
|
||||
c[1] = c[0] * (1 - s*f)
|
||||
c[2] = c[0] * (1 - s)
|
||||
seg[i].style.backgroundColor = 'rgb('+
|
||||
(c[rgb[0]]*100)+'%,'+
|
||||
(c[rgb[1]]*100)+'%,'+
|
||||
(c[rgb[2]]*100)+'%)'
|
||||
}
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function redrawSld() {
|
||||
// redraw the slider pointer
|
||||
switch(modeID) {
|
||||
case 0: var yComponent = 2; break
|
||||
case 1: var yComponent = 1; break
|
||||
}
|
||||
var y = Math.round((1-THIS.hsv[yComponent]) * (jscolor.images.sld[1]-1))
|
||||
jscolor.picker.sldM.style.backgroundPosition =
|
||||
'0 ' + (THIS.pickerFace+THIS.pickerInset+y - Math.floor(jscolor.images.arrow[1]/2)) + 'px'
|
||||
}
|
||||
|
||||
|
||||
function isPickerOwner() {
|
||||
return jscolor.picker && jscolor.picker.owner == THIS
|
||||
}
|
||||
|
||||
|
||||
function blurTarget() {
|
||||
if(valueElement == target) THIS.importColor()
|
||||
if(THIS.pickerOnfocus) THIS.hidePicker()
|
||||
}
|
||||
|
||||
|
||||
function blurValue() {
|
||||
if(valueElement != target) THIS.importColor()
|
||||
}
|
||||
|
||||
|
||||
function setPad(e) {
|
||||
var posM = jscolor.getMousePos(e)
|
||||
var x = posM[0]-posPad[0]
|
||||
var y = posM[1]-posPad[1]
|
||||
switch(modeID) {
|
||||
case 0: THIS.fromHSV(x*(6/(jscolor.images.pad[0]-1)), 1 - y/(jscolor.images.pad[1]-1), null, leaveSld); break
|
||||
case 1: THIS.fromHSV(x*(6/(jscolor.images.pad[0]-1)), null, 1 - y/(jscolor.images.pad[1]-1), leaveSld); break
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function setSld(e) {
|
||||
var posM = jscolor.getMousePos(e)
|
||||
var y = posM[1]-posPad[1]
|
||||
switch(modeID) {
|
||||
case 0: THIS.fromHSV(null, null, 1 - y/(jscolor.images.sld[1]-1), leavePad); break
|
||||
case 1: THIS.fromHSV(null, 1 - y/(jscolor.images.sld[1]-1), null, leavePad); break
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var THIS = this
|
||||
var modeID = this.pickerMode.toLowerCase()=='hvs' ? 1 : 0
|
||||
var abortBlur = false
|
||||
var
|
||||
valueElement = jscolor.fetchElement(this.valueElement),
|
||||
styleElement = jscolor.fetchElement(this.styleElement)
|
||||
var
|
||||
holdPad = false,
|
||||
holdSld = false
|
||||
var
|
||||
posPad,
|
||||
posSld
|
||||
var
|
||||
leaveValue = 1<<0,
|
||||
leaveStyle = 1<<1,
|
||||
leavePad = 1<<2,
|
||||
leaveSld = 1<<3
|
||||
|
||||
// target
|
||||
jscolor.addEvent(target, 'focus', function() {
|
||||
if(THIS.pickerOnfocus) THIS.showPicker()
|
||||
})
|
||||
jscolor.addEvent(target, 'blur', function() {
|
||||
if(!abortBlur) {
|
||||
setTimeout(function(){ abortBlur || blurTarget(); abortBlur=false }, 0)
|
||||
} else {
|
||||
abortBlur = false
|
||||
}
|
||||
})
|
||||
|
||||
// valueElement
|
||||
if(valueElement) {
|
||||
var updateField = function() {
|
||||
THIS.fromString(valueElement.value, leaveValue)
|
||||
}
|
||||
jscolor.addEvent(valueElement, 'keyup', updateField)
|
||||
jscolor.addEvent(valueElement, 'input', updateField)
|
||||
jscolor.addEvent(valueElement, 'blur', blurValue)
|
||||
valueElement.setAttribute('autocomplete', 'off')
|
||||
}
|
||||
|
||||
// styleElement
|
||||
if(styleElement) {
|
||||
styleElement.jscStyle = {
|
||||
backgroundColor : styleElement.style.backgroundColor,
|
||||
color : styleElement.style.color
|
||||
}
|
||||
}
|
||||
|
||||
// require images
|
||||
switch(modeID) {
|
||||
case 0: jscolor.requireImage('hs.png'); break
|
||||
case 1: jscolor.requireImage('hv.png'); break
|
||||
}
|
||||
jscolor.requireImage('cross.gif');
|
||||
jscolor.requireImage('arrow.gif');
|
||||
|
||||
this.importColor()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
jscolor.install()
|
320
templates/as002036free/js/scripts.js
Normal file
320
templates/as002036free/js/scripts.js
Normal file
@ -0,0 +1,320 @@
|
||||
|
||||
/***************************************************************************************/
|
||||
/*
|
||||
/* Designed by 'AS Designing'
|
||||
/* Web: http://www.asdesigning.com
|
||||
/* Email: info@asdesigning.com
|
||||
/* License: Creative Commons
|
||||
/*
|
||||
/**************************************************************************************/
|
||||
|
||||
var asjQuery = jQuery.noConflict();
|
||||
|
||||
/************************************/
|
||||
/* Toggling */
|
||||
|
||||
asjQuery(document).ready(function()
|
||||
{
|
||||
asjQuery(".toggle.1").click(function(){
|
||||
asjQuery(".toggle_content.1").slideToggle();
|
||||
if(asjQuery(".toggle.1").hasClass("opened"))
|
||||
asjQuery(".toggle.1").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.1").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.2").click(function(){
|
||||
asjQuery(".toggle_content.2").slideToggle();
|
||||
if(asjQuery(".toggle.2").hasClass("opened"))
|
||||
asjQuery(".toggle.2").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.2").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.3").click(function(){
|
||||
asjQuery(".toggle_content.3").slideToggle();
|
||||
if(asjQuery(".toggle.3").hasClass("opened"))
|
||||
asjQuery(".toggle.3").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.3").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.4").click(function(){
|
||||
asjQuery(".toggle_content.4").slideToggle();
|
||||
if(asjQuery(".toggle.4").hasClass("opened"))
|
||||
asjQuery(".toggle.4").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.4").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.5").click(function(){
|
||||
asjQuery(".toggle_content.5").slideToggle();
|
||||
if(asjQuery(".toggle.5").hasClass("opened"))
|
||||
asjQuery(".toggle.5").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.5").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.6").click(function(){
|
||||
asjQuery(".toggle_content.6").slideToggle();
|
||||
if(asjQuery(".toggle.6").hasClass("opened"))
|
||||
asjQuery(".toggle.6").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.6").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.7").click(function(){
|
||||
asjQuery(".toggle_content.7").slideToggle();
|
||||
if(asjQuery(".toggle.7").hasClass("opened"))
|
||||
asjQuery(".toggle.7").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.7").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.8").click(function(){
|
||||
asjQuery(".toggle_content.8").slideToggle();
|
||||
if(asjQuery(".toggle.8").hasClass("opened"))
|
||||
asjQuery(".toggle.8").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.8").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.9").click(function(){
|
||||
asjQuery(".toggle_content.9").slideToggle();
|
||||
if(asjQuery(".toggle.9").hasClass("opened"))
|
||||
asjQuery(".toggle.9").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.9").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.10").click(function(){
|
||||
asjQuery(".toggle_content.10").slideToggle();
|
||||
if(asjQuery(".toggle.10").hasClass("opened"))
|
||||
asjQuery(".toggle.10").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.10").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.11").click(function(){
|
||||
asjQuery(".toggle_content.11").slideToggle();
|
||||
if(asjQuery(".toggle.11").hasClass("opened"))
|
||||
asjQuery(".toggle.11").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.11").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.12").click(function(){
|
||||
asjQuery(".toggle_content.12").slideToggle();
|
||||
if(asjQuery(".toggle.12").hasClass("opened"))
|
||||
asjQuery(".toggle.12").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.12").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.13").click(function(){
|
||||
asjQuery(".toggle_content.13").slideToggle();
|
||||
if(asjQuery(".toggle.13").hasClass("opened"))
|
||||
asjQuery(".toggle.13").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.13").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.14").click(function(){
|
||||
asjQuery(".toggle_content.14").slideToggle();
|
||||
if(asjQuery(".toggle.14").hasClass("opened"))
|
||||
asjQuery(".toggle.14").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.14").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.15").click(function(){
|
||||
asjQuery(".toggle_content.15").slideToggle();
|
||||
if(asjQuery(".toggle.15").hasClass("opened"))
|
||||
asjQuery(".toggle.15").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.15").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.16").click(function(){
|
||||
asjQuery(".toggle_content.16").slideToggle();
|
||||
if(asjQuery(".toggle.16").hasClass("opened"))
|
||||
asjQuery(".toggle.16").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.16").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.17").click(function(){
|
||||
asjQuery(".toggle_content.17").slideToggle();
|
||||
if(asjQuery(".toggle.17").hasClass("opened"))
|
||||
asjQuery(".toggle.17").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.17").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.18").click(function(){
|
||||
asjQuery(".toggle_content.18").slideToggle();
|
||||
if(asjQuery(".toggle.18").hasClass("opened"))
|
||||
asjQuery(".toggle.18").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.18").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.19").click(function(){
|
||||
asjQuery(".toggle_content.19").slideToggle();
|
||||
if(asjQuery(".toggle.19").hasClass("opened"))
|
||||
asjQuery(".toggle.19").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.19").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.20").click(function(){
|
||||
asjQuery(".toggle_content.20").slideToggle();
|
||||
if(asjQuery(".toggle.20").hasClass("opened"))
|
||||
asjQuery(".toggle.20").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.20").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.21").click(function(){
|
||||
asjQuery(".toggle_content.21").slideToggle();
|
||||
if(asjQuery(".toggle.21").hasClass("opened"))
|
||||
asjQuery(".toggle.21").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.21").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.22").click(function(){
|
||||
asjQuery(".toggle_content.22").slideToggle();
|
||||
if(asjQuery(".toggle.22").hasClass("opened"))
|
||||
asjQuery(".toggle.22").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.22").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.23").click(function(){
|
||||
asjQuery(".toggle_content.23").slideToggle();
|
||||
if(asjQuery(".toggle.23").hasClass("opened"))
|
||||
asjQuery(".toggle.23").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.23").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.24").click(function(){
|
||||
asjQuery(".toggle_content.24").slideToggle();
|
||||
if(asjQuery(".toggle.24").hasClass("opened"))
|
||||
asjQuery(".toggle.24").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.24").addClass("opened")
|
||||
});
|
||||
asjQuery(".toggle.25").click(function(){
|
||||
asjQuery(".toggle_content.25").slideToggle();
|
||||
if(asjQuery(".toggle.25").hasClass("opened"))
|
||||
asjQuery(".toggle.25").removeClass("opened")
|
||||
else
|
||||
asjQuery(".toggle.25").addClass("opened")
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
asjQuery(document).ready(function()
|
||||
{
|
||||
asjQuery('ul li:last-child').addClass('lastItem');
|
||||
asjQuery('ul li:first-child').addClass('firstItem');
|
||||
|
||||
asjQuery('*[rel=tooltip]').tooltip()
|
||||
asjQuery('*[rel=popover]').popover()
|
||||
asjQuery('.tip-bottom').tooltip(
|
||||
{placement: "bottom"});
|
||||
|
||||
|
||||
//************************************
|
||||
// Modal Window
|
||||
//************************************
|
||||
asjQuery('[href="#modal"]').click(function()
|
||||
{
|
||||
asjQuery('#modal').modal('toggle');
|
||||
});
|
||||
|
||||
asjQuery('#modal button.modalClose').click(function()
|
||||
{
|
||||
asjQuery('#modal').modal('hide');
|
||||
});
|
||||
|
||||
|
||||
//************************************
|
||||
// Initialize the gallery touch
|
||||
//************************************
|
||||
asjQuery('a.touchGalleryLink').touchTouch();
|
||||
|
||||
|
||||
//************************************
|
||||
// Dropdown icons
|
||||
//************************************
|
||||
asjQuery('.dropdown-toggle').dropdown()
|
||||
|
||||
|
||||
//************************************
|
||||
// Gallery Hover Animation
|
||||
//************************************
|
||||
jQuery('a.zoom').hover(function()
|
||||
{
|
||||
asjQuery(this).find('span.zoom-bg').stop(true, true).animate({opacity: 0.7}, 100);
|
||||
asjQuery(this).find('span.zoom-icon').stop(true, true).animate({top:'50%'}, 100);
|
||||
},function(){
|
||||
asjQuery(this).find('span.zoom-bg').stop(true, true).animate({opacity: 0}, 100);
|
||||
asjQuery(this).find('span.zoom-icon').stop(true, true).animate({top:'-50%'}, 100);
|
||||
});
|
||||
|
||||
|
||||
//************************************
|
||||
// Hide #back-top first
|
||||
//************************************
|
||||
asjQuery("#back-top").hide();
|
||||
|
||||
|
||||
//************************************
|
||||
// Fade in #back-top
|
||||
//************************************
|
||||
asjQuery(function ()
|
||||
{
|
||||
asjQuery(window).scroll(function ()
|
||||
{
|
||||
if (jQuery(this).scrollTop() > 100)
|
||||
{
|
||||
asjQuery('#back-top').fadeIn();
|
||||
}
|
||||
else
|
||||
{
|
||||
asjQuery('#back-top').fadeOut();
|
||||
}
|
||||
});
|
||||
|
||||
//************************************
|
||||
// Scroll body to 0px on click
|
||||
//************************************
|
||||
asjQuery('#back-top a').click(function ()
|
||||
{
|
||||
asjQuery('body,html').animate(
|
||||
{
|
||||
scrollTop: 0
|
||||
}, 400);
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
//************************************
|
||||
// Pagination Active Button
|
||||
//************************************
|
||||
asjQuery('div.pagination ul li:not([class])').addClass('num');
|
||||
|
||||
asjQuery(function()
|
||||
{
|
||||
//************************************
|
||||
// IPad/IPhone
|
||||
//************************************
|
||||
var viewportmeta = document.querySelector && document.querySelector('meta[name="viewport"]'),
|
||||
ua = navigator.userAgent,
|
||||
|
||||
gestureStart = function ()
|
||||
{
|
||||
viewportmeta.content = "width=device-width, minimum-scale=0.25, maximum-scale=1.6";
|
||||
},
|
||||
|
||||
scaleFix = function ()
|
||||
{
|
||||
if (viewportmeta && /iPhone|iPad/.test(ua) && !/Opera Mini/.test(ua))
|
||||
{
|
||||
viewportmeta.content = "width=device-width, minimum-scale=1.0, maximum-scale=1.0";
|
||||
document.addEventListener("gesturestart", gestureStart, false);
|
||||
}
|
||||
};
|
||||
scaleFix();
|
||||
});
|
||||
|
||||
asjQuery('a.dropdown-toggle, .dropdown-menu a').on('touchstart', function(e)
|
||||
{
|
||||
e.stopPropagation();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
87
templates/as002036free/js/splash.js
Normal file
87
templates/as002036free/js/splash.js
Normal file
@ -0,0 +1,87 @@
|
||||
|
||||
/***************************************************************************************/
|
||||
/*
|
||||
/* Designed by 'AS Designing'
|
||||
/* Web: http://www.asdesigning.com
|
||||
/* Email: info@asdesigning.com
|
||||
/* License: Creative Commons
|
||||
/*
|
||||
/**************************************************************************************/
|
||||
|
||||
|
||||
jQuery.noConflict();
|
||||
|
||||
(function(jQuery)
|
||||
{
|
||||
jQuery.fn.fullBg = function()
|
||||
{
|
||||
var bgImg = jQuery(this);
|
||||
|
||||
bgImg.addClass('fullbg');
|
||||
|
||||
function resizeImg()
|
||||
{
|
||||
var imgWidth = bgImg.width();
|
||||
var imgHeight = bgImg.height();
|
||||
|
||||
var winWidth = jQuery(window).width();
|
||||
var winHeight = jQuery(window).height();
|
||||
|
||||
var widthRatio = winWidth/imgWidth;
|
||||
var heightRatio = winHeight/imgHeight;
|
||||
|
||||
var widthDiff = heightRatio*imgWidth;
|
||||
var heightDiff = widthRatio*imgHeight;
|
||||
|
||||
if(heightDiff>winHeight)
|
||||
{
|
||||
bgImg.css({
|
||||
width: winWidth+'px',
|
||||
height: heightDiff+'px'
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
bgImg.css({
|
||||
width: widthDiff+'px',
|
||||
height: winHeight+'px'
|
||||
});
|
||||
}
|
||||
}
|
||||
resizeImg();
|
||||
jQuery(window).resize(function() {
|
||||
resizeImg();
|
||||
});
|
||||
};
|
||||
})(jQuery)
|
||||
|
||||
|
||||
jQuery(window).load(function()
|
||||
{
|
||||
jQuery("#splash-page ul.as-menu li:first").addClass("active");
|
||||
|
||||
var winHeight = jQuery(window).height();
|
||||
|
||||
var homeLogo = jQuery("#splash-page #logo").height();
|
||||
var homeMenu = jQuery("#splash-page .navigation").height();
|
||||
|
||||
var homePadding = (winHeight - homeLogo - homeMenu) / 2;
|
||||
jQuery("#splash-page #logo").css('padding-top',homePadding);
|
||||
|
||||
jQuery("img#background").fullBg();
|
||||
|
||||
});
|
||||
|
||||
|
||||
jQuery(window).resize(function()
|
||||
{
|
||||
var winHeight = jQuery(window).height()
|
||||
|
||||
var homeLogo = jQuery("#splash-page #logo").height();
|
||||
var homeMenu = jQuery("#splash-page .navigation").height();
|
||||
|
||||
var homePadding = (winHeight - homeLogo - homeMenu) / 2;
|
||||
jQuery("#splash-page #logo").css('padding-top',homePadding);
|
||||
|
||||
});
|
||||
|
235
templates/as002036free/js/touch.gallery.js
Normal file
235
templates/as002036free/js/touch.gallery.js
Normal file
@ -0,0 +1,235 @@
|
||||
/**
|
||||
* @name jQuery touchTouch plugin
|
||||
* @author Martin Angelov
|
||||
* @version 1.0
|
||||
* @url http://tutorialzine.com/2012/04/mobile-touch-gallery/
|
||||
* @license MIT License
|
||||
*/
|
||||
|
||||
(function($){
|
||||
|
||||
/* Private variables */
|
||||
|
||||
var overlay = $('<div id="galleryOverlay">'),
|
||||
slider = $('<div id="gallerySlider">'),
|
||||
prevArrow = $('<a id="prevArrow"></a>'),
|
||||
nextArrow = $('<a id="nextArrow"></a>'),
|
||||
overlayVisible = false;
|
||||
|
||||
|
||||
/* Creating the plugin */
|
||||
|
||||
$.fn.touchTouch = function(){
|
||||
|
||||
var placeholders = $([]),
|
||||
index = 0,
|
||||
items = this;
|
||||
|
||||
// Appending the markup to the page
|
||||
overlay.hide().appendTo('body');
|
||||
slider.appendTo(overlay);
|
||||
|
||||
// Creating a placeholder for each image
|
||||
items.each(function(){
|
||||
placeholders = placeholders.add($('<div class="placeholder">'));
|
||||
});
|
||||
|
||||
// Hide the gallery if the background is touched / clicked
|
||||
slider.append(placeholders).on('click',function(e){
|
||||
if(!$(e.target).is('img')){
|
||||
hideOverlay();
|
||||
}
|
||||
});
|
||||
|
||||
// Listen for touch events on the body and check if they
|
||||
// originated in #gallerySlider img - the images in the slider.
|
||||
$('body').on('touchstart', '#gallerySlider img', function(e){
|
||||
|
||||
var touch = e.originalEvent,
|
||||
startX = touch.changedTouches[0].pageX;
|
||||
|
||||
slider.on('touchmove',function(e){
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
touch = e.originalEvent.touches[0] ||
|
||||
e.originalEvent.changedTouches[0];
|
||||
|
||||
if(touch.pageX - startX > 10){
|
||||
slider.off('touchmove');
|
||||
showPrevious();
|
||||
}
|
||||
else if (touch.pageX - startX < -10){
|
||||
slider.off('touchmove');
|
||||
showNext();
|
||||
}
|
||||
});
|
||||
|
||||
// Return false to prevent image
|
||||
// highlighting on Android
|
||||
return false;
|
||||
|
||||
}).on('touchend',function(){
|
||||
slider.off('touchmove');
|
||||
});
|
||||
|
||||
// Listening for clicks on the thumbnails
|
||||
|
||||
items.on('click', function(e){
|
||||
e.preventDefault();
|
||||
|
||||
// Find the position of this image
|
||||
// in the collection
|
||||
|
||||
index = items.index(this);
|
||||
showOverlay(index);
|
||||
showImage(index);
|
||||
|
||||
// Preload the next image
|
||||
preload(index+1);
|
||||
|
||||
// Preload the previous
|
||||
preload(index-1);
|
||||
|
||||
});
|
||||
|
||||
// If the browser does not have support
|
||||
// for touch, display the arrows
|
||||
if ( !("ontouchstart" in window) ){
|
||||
overlay.append(prevArrow).append(nextArrow);
|
||||
|
||||
prevArrow.click(function(e){
|
||||
e.preventDefault();
|
||||
showPrevious();
|
||||
});
|
||||
|
||||
nextArrow.click(function(e){
|
||||
e.preventDefault();
|
||||
showNext();
|
||||
});
|
||||
}
|
||||
|
||||
// Listen for arrow keys
|
||||
$(window).bind('keydown', function(e){
|
||||
|
||||
if (e.keyCode == 37){
|
||||
showPrevious();
|
||||
}
|
||||
else if (e.keyCode==39){
|
||||
showNext();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
/* Private functions */
|
||||
|
||||
|
||||
function showOverlay(index){
|
||||
|
||||
// If the overlay is already shown, exit
|
||||
if (overlayVisible){
|
||||
return false;
|
||||
}
|
||||
|
||||
// Show the overlay
|
||||
overlay.show();
|
||||
|
||||
setTimeout(function(){
|
||||
// Trigger the opacity CSS transition
|
||||
overlay.addClass('visible');
|
||||
}, 100);
|
||||
|
||||
// Move the slider to the correct image
|
||||
offsetSlider(index);
|
||||
|
||||
// Raise the visible flag
|
||||
overlayVisible = true;
|
||||
}
|
||||
|
||||
function hideOverlay(){
|
||||
// If the overlay is not shown, exit
|
||||
if(!overlayVisible){
|
||||
return false;
|
||||
}
|
||||
|
||||
// Hide the overlay
|
||||
overlay.hide().removeClass('visible');
|
||||
overlayVisible = false;
|
||||
}
|
||||
|
||||
function offsetSlider(index){
|
||||
// This will trigger a smooth css transition
|
||||
slider.css('left',(-index*100)+'%');
|
||||
}
|
||||
|
||||
// Preload an image by its index in the items array
|
||||
function preload(index){
|
||||
setTimeout(function(){
|
||||
showImage(index);
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
// Show image in the slider
|
||||
function showImage(index){
|
||||
|
||||
// If the index is outside the bonds of the array
|
||||
if(index < 0 || index >= items.length){
|
||||
return false;
|
||||
}
|
||||
|
||||
// Call the load function with the href attribute of the item
|
||||
loadImage(items.eq(index).attr('href'), function(){
|
||||
placeholders.eq(index).html(this);
|
||||
});
|
||||
}
|
||||
|
||||
// Load the image and execute a callback function.
|
||||
// Returns a jQuery object
|
||||
|
||||
function loadImage(src, callback){
|
||||
var img = $('<img>').on('load', function(){
|
||||
callback.call(img);
|
||||
});
|
||||
|
||||
img.attr('src',src);
|
||||
}
|
||||
|
||||
function showNext(){
|
||||
|
||||
// If this is not the last image
|
||||
if(index+1 < items.length){
|
||||
index++;
|
||||
offsetSlider(index);
|
||||
preload(index+1);
|
||||
}
|
||||
else{
|
||||
// Trigger the spring animation
|
||||
|
||||
slider.addClass('rightSpring');
|
||||
setTimeout(function(){
|
||||
slider.removeClass('rightSpring');
|
||||
},500);
|
||||
}
|
||||
}
|
||||
|
||||
function showPrevious(){
|
||||
|
||||
// If this is not the first image
|
||||
if(index>0){
|
||||
index--;
|
||||
offsetSlider(index);
|
||||
preload(index-1);
|
||||
}
|
||||
else{
|
||||
// Trigger the spring animation
|
||||
|
||||
slider.addClass('leftSpring');
|
||||
setTimeout(function(){
|
||||
slider.removeClass('leftSpring');
|
||||
},500);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
})(jQuery);
|
Reference in New Issue
Block a user