Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
fusiondirectory
fusiondirectory
Commits
fec4f885
Commit
fec4f885
authored
Oct 16, 2013
by
Benoit Mortier
Browse files
Fixes: #2819 remove scriptaculous from the source
parent
1a31324a
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
html/include/builder.js
deleted
100644 → 0
View file @
1a31324a
// script.aculo.us builder.js v1.8.3, Thu Oct 08 11:23:33 +0200 2009
// Copyright (c) 2005-2009 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
//
// script.aculo.us is freely distributable under the terms of an MIT-style license.
// For details, see the script.aculo.us web site: http://script.aculo.us/
var
Builder
=
{
NODEMAP
:
{
AREA
:
'
map
'
,
CAPTION
:
'
table
'
,
COL
:
'
table
'
,
COLGROUP
:
'
table
'
,
LEGEND
:
'
fieldset
'
,
OPTGROUP
:
'
select
'
,
OPTION
:
'
select
'
,
PARAM
:
'
object
'
,
TBODY
:
'
table
'
,
TD
:
'
table
'
,
TFOOT
:
'
table
'
,
TH
:
'
table
'
,
THEAD
:
'
table
'
,
TR
:
'
table
'
},
// note: For Firefox < 1.5, OPTION and OPTGROUP tags are currently broken,
// due to a Firefox bug
node
:
function
(
elementName
)
{
elementName
=
elementName
.
toUpperCase
();
// try innerHTML approach
var
parentTag
=
this
.
NODEMAP
[
elementName
]
||
'
div
'
;
var
parentElement
=
document
.
createElement
(
parentTag
);
try
{
// prevent IE "feature": http://dev.rubyonrails.org/ticket/2707
parentElement
.
innerHTML
=
"
<
"
+
elementName
+
"
></
"
+
elementName
+
"
>
"
;
}
catch
(
e
)
{}
var
element
=
parentElement
.
firstChild
||
null
;
// see if browser added wrapping tags
if
(
element
&&
(
element
.
tagName
.
toUpperCase
()
!=
elementName
))
element
=
element
.
getElementsByTagName
(
elementName
)[
0
];
// fallback to createElement approach
if
(
!
element
)
element
=
document
.
createElement
(
elementName
);
// abort if nothing could be created
if
(
!
element
)
return
;
// attributes (or text)
if
(
arguments
[
1
])
if
(
this
.
_isStringOrNumber
(
arguments
[
1
])
||
(
arguments
[
1
]
instanceof
Array
)
||
arguments
[
1
].
tagName
)
{
this
.
_children
(
element
,
arguments
[
1
]);
}
else
{
var
attrs
=
this
.
_attributes
(
arguments
[
1
]);
if
(
attrs
.
length
)
{
try
{
// prevent IE "feature": http://dev.rubyonrails.org/ticket/2707
parentElement
.
innerHTML
=
"
<
"
+
elementName
+
"
"
+
attrs
+
"
></
"
+
elementName
+
"
>
"
;
}
catch
(
e
)
{}
element
=
parentElement
.
firstChild
||
null
;
// workaround firefox 1.0.X bug
if
(
!
element
)
{
element
=
document
.
createElement
(
elementName
);
for
(
attr
in
arguments
[
1
])
element
[
attr
==
'
class
'
?
'
className
'
:
attr
]
=
arguments
[
1
][
attr
];
}
if
(
element
.
tagName
.
toUpperCase
()
!=
elementName
)
element
=
parentElement
.
getElementsByTagName
(
elementName
)[
0
];
}
}
// text, or array of children
if
(
arguments
[
2
])
this
.
_children
(
element
,
arguments
[
2
]);
return
$
(
element
);
},
_text
:
function
(
text
)
{
return
document
.
createTextNode
(
text
);
},
ATTR_MAP
:
{
'
className
'
:
'
class
'
,
'
htmlFor
'
:
'
for
'
},
_attributes
:
function
(
attributes
)
{
var
attrs
=
[];
for
(
attribute
in
attributes
)
attrs
.
push
((
attribute
in
this
.
ATTR_MAP
?
this
.
ATTR_MAP
[
attribute
]
:
attribute
)
+
'
="
'
+
attributes
[
attribute
].
toString
().
escapeHTML
().
gsub
(
/"/
,
'
"
'
)
+
'
"
'
);
return
attrs
.
join
(
"
"
);
},
_children
:
function
(
element
,
children
)
{
if
(
children
.
tagName
)
{
element
.
appendChild
(
children
);
return
;
}
if
(
typeof
children
==
'
object
'
)
{
// array can hold nodes and text
children
.
flatten
().
each
(
function
(
e
)
{
if
(
typeof
e
==
'
object
'
)
element
.
appendChild
(
e
);
else
if
(
Builder
.
_isStringOrNumber
(
e
))
element
.
appendChild
(
Builder
.
_text
(
e
));
});
}
else
if
(
Builder
.
_isStringOrNumber
(
children
))
element
.
appendChild
(
Builder
.
_text
(
children
));
},
_isStringOrNumber
:
function
(
param
)
{
return
(
typeof
param
==
'
string
'
||
typeof
param
==
'
number
'
);
},
build
:
function
(
html
)
{
var
element
=
this
.
node
(
'
div
'
);
$
(
element
).
update
(
html
.
strip
());
return
element
.
down
();
},
dump
:
function
(
scope
)
{
if
(
typeof
scope
!=
'
object
'
&&
typeof
scope
!=
'
function
'
)
scope
=
window
;
//global scope
var
tags
=
(
"
A ABBR ACRONYM ADDRESS APPLET AREA B BASE BASEFONT BDO BIG BLOCKQUOTE BODY
"
+
"
BR BUTTON CAPTION CENTER CITE CODE COL COLGROUP DD DEL DFN DIR DIV DL DT EM FIELDSET
"
+
"
FONT FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HR HTML I IFRAME IMG INPUT INS ISINDEX
"
+
"
KBD LABEL LEGEND LI LINK MAP MENU META NOFRAMES NOSCRIPT OBJECT OL OPTGROUP OPTION P
"
+
"
PARAM PRE Q S SAMP SCRIPT SELECT SMALL SPAN STRIKE STRONG STYLE SUB SUP TABLE TBODY TD
"
+
"
TEXTAREA TFOOT TH THEAD TITLE TR TT U UL VAR
"
).
split
(
/
\s
+/
);
tags
.
each
(
function
(
tag
){
scope
[
tag
]
=
function
()
{
return
Builder
.
node
.
apply
(
Builder
,
[
tag
].
concat
(
$A
(
arguments
)));
};
});
}
};
\ No newline at end of file
html/include/controls.js
deleted
100644 → 0
View file @
1a31324a
This diff is collapsed.
Click to expand it.
html/include/dragdrop.js
deleted
100644 → 0
View file @
1a31324a
This diff is collapsed.
Click to expand it.
html/include/effects.js
deleted
100644 → 0
View file @
1a31324a
This diff is collapsed.
Click to expand it.
html/include/prototype.js
deleted
100644 → 0
View file @
1a31324a
This diff is collapsed.
Click to expand it.
html/include/scriptaculous.js
deleted
100644 → 0
View file @
1a31324a
// script.aculo.us scriptaculous.js v1.8.3, Thu Oct 08 11:23:33 +0200 2009
// Copyright (c) 2005-2009 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
// For details, see the script.aculo.us web site: http://script.aculo.us/
var
Scriptaculous
=
{
Version
:
'
1.8.3
'
,
require
:
function
(
libraryName
)
{
try
{
// inserting via DOM fails in Safari 2.0, so brute force approach
document
.
write
(
'
<script type="text/javascript" src="
'
+
libraryName
+
'
"><
\
/script>
'
);
}
catch
(
e
)
{
// for xhtml+xml served content, fall back to DOM methods
var
script
=
document
.
createElement
(
'
script
'
);
script
.
type
=
'
text/javascript
'
;
script
.
src
=
libraryName
;
document
.
getElementsByTagName
(
'
head
'
)[
0
].
appendChild
(
script
);
}
},
REQUIRED_PROTOTYPE
:
'
1.6.0.3
'
,
load
:
function
()
{
function
convertVersionString
(
versionString
)
{
var
v
=
versionString
.
replace
(
/_.*|
\.
/g
,
''
);
v
=
parseInt
(
v
+
'
0
'
.
times
(
4
-
v
.
length
));
return
versionString
.
indexOf
(
'
_
'
)
>
-
1
?
v
-
1
:
v
;
}
if
((
typeof
Prototype
==
'
undefined
'
)
||
(
typeof
Element
==
'
undefined
'
)
||
(
typeof
Element
.
Methods
==
'
undefined
'
)
||
(
convertVersionString
(
Prototype
.
Version
)
<
convertVersionString
(
Scriptaculous
.
REQUIRED_PROTOTYPE
)))
throw
(
"
script.aculo.us requires the Prototype JavaScript framework >=
"
+
Scriptaculous
.
REQUIRED_PROTOTYPE
);
var
js
=
/scriptaculous
\.
js
(\?
.*
)?
$/
;
$$
(
'
head script[src]
'
).
findAll
(
function
(
s
)
{
return
s
.
src
.
match
(
js
);
}).
each
(
function
(
s
)
{
var
path
=
s
.
src
.
replace
(
js
,
''
),
includes
=
s
.
src
.
match
(
/
\?
.*load=
([
a-z,
]
*
)
/
);
(
includes
?
includes
[
1
]
:
'
builder,effects,dragdrop,controls,slider,sound
'
).
split
(
'
,
'
).
each
(
function
(
include
)
{
Scriptaculous
.
require
(
path
+
include
+
'
.js
'
)
});
});
}
};
Scriptaculous
.
load
();
\ No newline at end of file
html/include/slider.js
deleted
100644 → 0
View file @
1a31324a
// script.aculo.us slider.js v1.8.3, Thu Oct 08 11:23:33 +0200 2009
// Copyright (c) 2005-2009 Marty Haught, Thomas Fuchs
//
// script.aculo.us is freely distributable under the terms of an MIT-style license.
// For details, see the script.aculo.us web site: http://script.aculo.us/
if
(
!
Control
)
var
Control
=
{
};
// options:
// axis: 'vertical', or 'horizontal' (default)
//
// callbacks:
// onChange(value)
// onSlide(value)
Control
.
Slider
=
Class
.
create
({
initialize
:
function
(
handle
,
track
,
options
)
{
var
slider
=
this
;
if
(
Object
.
isArray
(
handle
))
{
this
.
handles
=
handle
.
collect
(
function
(
e
)
{
return
$
(
e
)
});
}
else
{
this
.
handles
=
[
$
(
handle
)];
}
this
.
track
=
$
(
track
);
this
.
options
=
options
||
{
};
this
.
axis
=
this
.
options
.
axis
||
'
horizontal
'
;
this
.
increment
=
this
.
options
.
increment
||
1
;
this
.
step
=
parseInt
(
this
.
options
.
step
||
'
1
'
);
this
.
range
=
this
.
options
.
range
||
$R
(
0
,
1
);
this
.
value
=
0
;
// assure backwards compat
this
.
values
=
this
.
handles
.
map
(
function
()
{
return
0
});
this
.
spans
=
this
.
options
.
spans
?
this
.
options
.
spans
.
map
(
function
(
s
){
return
$
(
s
)
})
:
false
;
this
.
options
.
startSpan
=
$
(
this
.
options
.
startSpan
||
null
);
this
.
options
.
endSpan
=
$
(
this
.
options
.
endSpan
||
null
);
this
.
restricted
=
this
.
options
.
restricted
||
false
;
this
.
maximum
=
this
.
options
.
maximum
||
this
.
range
.
end
;
this
.
minimum
=
this
.
options
.
minimum
||
this
.
range
.
start
;
// Will be used to align the handle onto the track, if necessary
this
.
alignX
=
parseInt
(
this
.
options
.
alignX
||
'
0
'
);
this
.
alignY
=
parseInt
(
this
.
options
.
alignY
||
'
0
'
);
this
.
trackLength
=
this
.
maximumOffset
()
-
this
.
minimumOffset
();
this
.
handleLength
=
this
.
isVertical
()
?
(
this
.
handles
[
0
].
offsetHeight
!=
0
?
this
.
handles
[
0
].
offsetHeight
:
this
.
handles
[
0
].
style
.
height
.
replace
(
/px$/
,
""
))
:
(
this
.
handles
[
0
].
offsetWidth
!=
0
?
this
.
handles
[
0
].
offsetWidth
:
this
.
handles
[
0
].
style
.
width
.
replace
(
/px$/
,
""
));
this
.
active
=
false
;
this
.
dragging
=
false
;
this
.
disabled
=
false
;
if
(
this
.
options
.
disabled
)
this
.
setDisabled
();
// Allowed values array
this
.
allowedValues
=
this
.
options
.
values
?
this
.
options
.
values
.
sortBy
(
Prototype
.
K
)
:
false
;
if
(
this
.
allowedValues
)
{
this
.
minimum
=
this
.
allowedValues
.
min
();
this
.
maximum
=
this
.
allowedValues
.
max
();
}
this
.
eventMouseDown
=
this
.
startDrag
.
bindAsEventListener
(
this
);
this
.
eventMouseUp
=
this
.
endDrag
.
bindAsEventListener
(
this
);
this
.
eventMouseMove
=
this
.
update
.
bindAsEventListener
(
this
);
// Initialize handles in reverse (make sure first handle is active)
this
.
handles
.
each
(
function
(
h
,
i
)
{
i
=
slider
.
handles
.
length
-
1
-
i
;
slider
.
setValue
(
parseFloat
(
(
Object
.
isArray
(
slider
.
options
.
sliderValue
)
?
slider
.
options
.
sliderValue
[
i
]
:
slider
.
options
.
sliderValue
)
||
slider
.
range
.
start
),
i
);
h
.
makePositioned
().
observe
(
"
mousedown
"
,
slider
.
eventMouseDown
);
});
this
.
track
.
observe
(
"
mousedown
"
,
this
.
eventMouseDown
);
document
.
observe
(
"
mouseup
"
,
this
.
eventMouseUp
);
document
.
observe
(
"
mousemove
"
,
this
.
eventMouseMove
);
this
.
initialized
=
true
;
},
dispose
:
function
()
{
var
slider
=
this
;
Event
.
stopObserving
(
this
.
track
,
"
mousedown
"
,
this
.
eventMouseDown
);
Event
.
stopObserving
(
document
,
"
mouseup
"
,
this
.
eventMouseUp
);
Event
.
stopObserving
(
document
,
"
mousemove
"
,
this
.
eventMouseMove
);
this
.
handles
.
each
(
function
(
h
)
{
Event
.
stopObserving
(
h
,
"
mousedown
"
,
slider
.
eventMouseDown
);
});
},
setDisabled
:
function
(){
this
.
disabled
=
true
;
},
setEnabled
:
function
(){
this
.
disabled
=
false
;
},
getNearestValue
:
function
(
value
){
if
(
this
.
allowedValues
){
if
(
value
>=
this
.
allowedValues
.
max
())
return
(
this
.
allowedValues
.
max
());
if
(
value
<=
this
.
allowedValues
.
min
())
return
(
this
.
allowedValues
.
min
());
var
offset
=
Math
.
abs
(
this
.
allowedValues
[
0
]
-
value
);
var
newValue
=
this
.
allowedValues
[
0
];
this
.
allowedValues
.
each
(
function
(
v
)
{
var
currentOffset
=
Math
.
abs
(
v
-
value
);
if
(
currentOffset
<=
offset
){
newValue
=
v
;
offset
=
currentOffset
;
}
});
return
newValue
;
}
if
(
value
>
this
.
range
.
end
)
return
this
.
range
.
end
;
if
(
value
<
this
.
range
.
start
)
return
this
.
range
.
start
;
return
value
;
},
setValue
:
function
(
sliderValue
,
handleIdx
){
if
(
!
this
.
active
)
{
this
.
activeHandleIdx
=
handleIdx
||
0
;
this
.
activeHandle
=
this
.
handles
[
this
.
activeHandleIdx
];
this
.
updateStyles
();
}
handleIdx
=
handleIdx
||
this
.
activeHandleIdx
||
0
;
if
(
this
.
initialized
&&
this
.
restricted
)
{
if
((
handleIdx
>
0
)
&&
(
sliderValue
<
this
.
values
[
handleIdx
-
1
]))
sliderValue
=
this
.
values
[
handleIdx
-
1
];
if
((
handleIdx
<
(
this
.
handles
.
length
-
1
))
&&
(
sliderValue
>
this
.
values
[
handleIdx
+
1
]))
sliderValue
=
this
.
values
[
handleIdx
+
1
];
}
sliderValue
=
this
.
getNearestValue
(
sliderValue
);
this
.
values
[
handleIdx
]
=
sliderValue
;
this
.
value
=
this
.
values
[
0
];
// assure backwards compat
this
.
handles
[
handleIdx
].
style
[
this
.
isVertical
()
?
'
top
'
:
'
left
'
]
=
this
.
translateToPx
(
sliderValue
);
this
.
drawSpans
();
if
(
!
this
.
dragging
||
!
this
.
event
)
this
.
updateFinished
();
},
setValueBy
:
function
(
delta
,
handleIdx
)
{
this
.
setValue
(
this
.
values
[
handleIdx
||
this
.
activeHandleIdx
||
0
]
+
delta
,
handleIdx
||
this
.
activeHandleIdx
||
0
);
},
translateToPx
:
function
(
value
)
{
return
Math
.
round
(
((
this
.
trackLength
-
this
.
handleLength
)
/
(
this
.
range
.
end
-
this
.
range
.
start
))
*
(
value
-
this
.
range
.
start
))
+
"
px
"
;
},
translateToValue
:
function
(
offset
)
{
return
((
offset
/
(
this
.
trackLength
-
this
.
handleLength
)
*
(
this
.
range
.
end
-
this
.
range
.
start
))
+
this
.
range
.
start
);
},
getRange
:
function
(
range
)
{
var
v
=
this
.
values
.
sortBy
(
Prototype
.
K
);
range
=
range
||
0
;
return
$R
(
v
[
range
],
v
[
range
+
1
]);
},
minimumOffset
:
function
(){
return
(
this
.
isVertical
()
?
this
.
alignY
:
this
.
alignX
);
},
maximumOffset
:
function
(){
return
(
this
.
isVertical
()
?
(
this
.
track
.
offsetHeight
!=
0
?
this
.
track
.
offsetHeight
:
this
.
track
.
style
.
height
.
replace
(
/px$/
,
""
))
-
this
.
alignY
:
(
this
.
track
.
offsetWidth
!=
0
?
this
.
track
.
offsetWidth
:
this
.
track
.
style
.
width
.
replace
(
/px$/
,
""
))
-
this
.
alignX
);
},
isVertical
:
function
(){
return
(
this
.
axis
==
'
vertical
'
);
},
drawSpans
:
function
()
{
var
slider
=
this
;
if
(
this
.
spans
)
$R
(
0
,
this
.
spans
.
length
-
1
).
each
(
function
(
r
)
{
slider
.
setSpan
(
slider
.
spans
[
r
],
slider
.
getRange
(
r
))
});
if
(
this
.
options
.
startSpan
)
this
.
setSpan
(
this
.
options
.
startSpan
,
$R
(
0
,
this
.
values
.
length
>
1
?
this
.
getRange
(
0
).
min
()
:
this
.
value
));
if
(
this
.
options
.
endSpan
)
this
.
setSpan
(
this
.
options
.
endSpan
,
$R
(
this
.
values
.
length
>
1
?
this
.
getRange
(
this
.
spans
.
length
-
1
).
max
()
:
this
.
value
,
this
.
maximum
));
},
setSpan
:
function
(
span
,
range
)
{
if
(
this
.
isVertical
())
{
span
.
style
.
top
=
this
.
translateToPx
(
range
.
start
);
span
.
style
.
height
=
this
.
translateToPx
(
range
.
end
-
range
.
start
+
this
.
range
.
start
);
}
else
{
span
.
style
.
left
=
this
.
translateToPx
(
range
.
start
);
span
.
style
.
width
=
this
.
translateToPx
(
range
.
end
-
range
.
start
+
this
.
range
.
start
);
}
},
updateStyles
:
function
()
{
this
.
handles
.
each
(
function
(
h
){
Element
.
removeClassName
(
h
,
'
selected
'
)
});
Element
.
addClassName
(
this
.
activeHandle
,
'
selected
'
);
},
startDrag
:
function
(
event
)
{
if
(
Event
.
isLeftClick
(
event
))
{
if
(
!
this
.
disabled
){
this
.
active
=
true
;
var
handle
=
Event
.
element
(
event
);
var
pointer
=
[
Event
.
pointerX
(
event
),
Event
.
pointerY
(
event
)];
var
track
=
handle
;
if
(
track
==
this
.
track
)
{
var
offsets
=
this
.
track
.
cumulativeOffset
();
this
.
event
=
event
;
this
.
setValue
(
this
.
translateToValue
(
(
this
.
isVertical
()
?
pointer
[
1
]
-
offsets
[
1
]
:
pointer
[
0
]
-
offsets
[
0
])
-
(
this
.
handleLength
/
2
)
));
var
offsets
=
this
.
activeHandle
.
cumulativeOffset
();
this
.
offsetX
=
(
pointer
[
0
]
-
offsets
[
0
]);
this
.
offsetY
=
(
pointer
[
1
]
-
offsets
[
1
]);
}
else
{
// find the handle (prevents issues with Safari)
while
((
this
.
handles
.
indexOf
(
handle
)
==
-
1
)
&&
handle
.
parentNode
)
handle
=
handle
.
parentNode
;
if
(
this
.
handles
.
indexOf
(
handle
)
!=-
1
)
{
this
.
activeHandle
=
handle
;
this
.
activeHandleIdx
=
this
.
handles
.
indexOf
(
this
.
activeHandle
);
this
.
updateStyles
();
var
offsets
=
this
.
activeHandle
.
cumulativeOffset
();
this
.
offsetX
=
(
pointer
[
0
]
-
offsets
[
0
]);
this
.
offsetY
=
(
pointer
[
1
]
-
offsets
[
1
]);
}
}
}
Event
.
stop
(
event
);
}
},
update
:
function
(
event
)
{
if
(
this
.
active
)
{
if
(
!
this
.
dragging
)
this
.
dragging
=
true
;
this
.
draw
(
event
);
if
(
Prototype
.
Browser
.
WebKit
)
window
.
scrollBy
(
0
,
0
);
Event
.
stop
(
event
);
}
},
draw
:
function
(
event
)
{
var
pointer
=
[
Event
.
pointerX
(
event
),
Event
.
pointerY
(
event
)];
var
offsets
=
this
.
track
.
cumulativeOffset
();
pointer
[
0
]
-=
this
.
offsetX
+
offsets
[
0
];
pointer
[
1
]
-=
this
.
offsetY
+
offsets
[
1
];
this
.
event
=
event
;
this
.
setValue
(
this
.
translateToValue
(
this
.
isVertical
()
?
pointer
[
1
]
:
pointer
[
0
]
));
if
(
this
.
initialized
&&
this
.
options
.
onSlide
)
this
.
options
.
onSlide
(
this
.
values
.
length
>
1
?
this
.
values
:
this
.
value
,
this
);
},
endDrag
:
function
(
event
)
{
if
(
this
.
active
&&
this
.
dragging
)
{
this
.
finishDrag
(
event
,
true
);
Event
.
stop
(
event
);
}
this
.
active
=
false
;
this
.
dragging
=
false
;
},
finishDrag
:
function
(
event
,
success
)
{
this
.
active
=
false
;
this
.
dragging
=
false
;
this
.
updateFinished
();
},
updateFinished
:
function
()
{
if
(
this
.
initialized
&&
this
.
options
.
onChange
)
this
.
options
.
onChange
(
this
.
values
.
length
>
1
?
this
.
values
:
this
.
value
,
this
);
this
.
event
=
null
;
}
});
\ No newline at end of file
html/include/sound.js
deleted
100644 → 0
View file @
1a31324a
// script.aculo.us sound.js v1.8.3, Thu Oct 08 11:23:33 +0200 2009
// Copyright (c) 2005-2009 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
//
// Based on code created by Jules Gravinese (http://www.webveteran.com/)
//
// script.aculo.us is freely distributable under the terms of an MIT-style license.
// For details, see the script.aculo.us web site: http://script.aculo.us/
Sound
=
{
tracks
:
{},
_enabled
:
true
,
template
:
new
Template
(
'
<embed style="height:0" id="sound_#{track}_#{id}" src="#{url}" loop="false" autostart="true" hidden="true"/>
'
),
enable
:
function
(){
Sound
.
_enabled
=
true
;
},
disable
:
function
(){
Sound
.
_enabled
=
false
;
},
play
:
function
(
url
){
if
(
!
Sound
.
_enabled
)
return
;
var
options
=
Object
.
extend
({
track
:
'
global
'
,
url
:
url
,
replace
:
false
},
arguments
[
1
]
||
{});
if
(
options
.
replace
&&
this
.
tracks
[
options
.
track
])
{
$R
(
0
,
this
.
tracks
[
options
.
track
].
id
).
each
(
function
(
id
){
var
sound
=
$
(
'
sound_
'
+
options
.
track
+
'
_
'
+
id
);
sound
.
Stop
&&
sound
.
Stop
();
sound
.
remove
();
});
this
.
tracks
[
options
.
track
]
=
null
;
}
if
(
!
this
.
tracks
[
options
.
track
])
this
.
tracks
[
options
.
track
]
=
{
id
:
0
};
else
this
.
tracks
[
options
.
track
].
id
++
;
options
.
id
=
this
.
tracks
[
options
.
track
].
id
;
$$
(
'
body
'
)[
0
].
insert
(
Prototype
.
Browser
.
IE
?
new
Element
(
'
bgsound
'
,{
id
:
'
sound_
'
+
options
.
track
+
'
_
'
+
options
.
id
,
src
:
options
.
url
,
loop
:
1
,
autostart
:
true
})
:
Sound
.
template
.
evaluate
(
options
));
}
};
if
(
Prototype
.
Browser
.
Gecko
&&
navigator
.
userAgent
.
indexOf
(
"
Win
"
)
>
0
){
if
(
navigator
.
plugins
&&
$A
(
navigator
.
plugins
).
detect
(
function
(
p
){
return
p
.
name
.
indexOf
(
'
QuickTime
'
)
!=
-
1
}))
Sound
.
template
=
new
Template
(
'
<object id="sound_#{track}_#{id}" width="0" height="0" type="audio/mpeg" data="#{url}"/>
'
);
else
if
(
navigator
.
plugins
&&
$A
(
navigator
.
plugins
).
detect
(
function
(
p
){
return
p
.
name
.
indexOf
(
'
Windows Media
'
)
!=
-
1
}))
Sound
.
template
=
new
Template
(
'
<object id="sound_#{track}_#{id}" type="application/x-mplayer2" data="#{url}"></object>
'
);
else
if
(
navigator
.
plugins
&&
$A
(
navigator
.
plugins
).
detect
(
function
(
p
){
return
p
.
name
.
indexOf
(
'
RealPlayer
'
)
!=
-
1
}))
Sound
.
template
=
new
Template
(
'
<embed type="audio/x-pn-realaudio-plugin" style="height:0" id="sound_#{track}_#{id}" src="#{url}" loop="false" autostart="true" hidden="true"/>
'
);
else
Sound
.
play
=
function
(){};
}
\ No newline at end of file
html/include/unittest.js
deleted
100644 → 0
View file @
1a31324a
This diff is collapsed.
Click to expand it.
bmortier
@bmortier
mentioned in issue
#963 (closed)
·
Sep 02, 2017
mentioned in issue
#963 (closed)
mentioned in issue #963
Toggle commit list
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment