6 changed files with 479 additions and 0 deletions
-
19js/bildertool/callbacks.js
-
103js/bildertool/galleryThumbs.js
-
14js/bildertool/helper.js
-
48js/bildertool/service.js
-
111js/bildertool/strecke.js
-
184js/bildertool/xmlify.js
@ -0,0 +1,19 @@ |
|||||
|
if (typeof (nBildertool) === 'undefined') |
||||
|
nBildertool = {}; |
||||
|
|
||||
|
nBildertool.cbCommon = function () |
||||
|
{ |
||||
|
switch (nBildertool.req.readyState) |
||||
|
{ |
||||
|
case 4: |
||||
|
if (nBildertool.req.status != 200) |
||||
|
alert ("Fehler:" + nBildertool.req.status); |
||||
|
else |
||||
|
data = nBildertool.deXmlify (nBildertool.req.responseXML); |
||||
|
|
||||
|
return true; |
||||
|
|
||||
|
default: |
||||
|
return false; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,103 @@ |
|||||
|
function c_GalleryThumb (thu, cat, tit, tex, u) |
||||
|
{ |
||||
|
var thumb = thu; |
||||
|
var cat = cat; |
||||
|
var title = tit; |
||||
|
var text = tex; |
||||
|
var url = u; |
||||
|
|
||||
|
this.getThumb = function () { return thumb; } |
||||
|
this.getCat = function () { return cat; } |
||||
|
this.getTitle = function () { return title; } |
||||
|
this.getText = function () { return text; } |
||||
|
this.getUrl = function () { return url; } |
||||
|
} |
||||
|
|
||||
|
function c_GalleryThumbs (_id, data, pos, _count) |
||||
|
{ |
||||
|
var thumbs = new Array (); |
||||
|
var startIdx = pos; |
||||
|
var id = _id; |
||||
|
var count = _count; |
||||
|
|
||||
|
for (var d in data) |
||||
|
{ |
||||
|
var expr = /(.*) [^ ]*$/; |
||||
|
thumbs.push ( |
||||
|
new c_GalleryThumb ( |
||||
|
d.getThumbUrl (), |
||||
|
d.getOrdnerName (0).toUpperCase (), |
||||
|
d.titel, |
||||
|
d.ffBildzeile+' '.substr (0, 100).replace (expr, '$1...'), |
||||
|
d.getShowUrl ())); |
||||
|
} |
||||
|
|
||||
|
// Dies kann warscheinlich auch raus aus c_GalleryThumbs
|
||||
|
this.popup = function (i) |
||||
|
{ |
||||
|
url = document.getElementById (id+'_BG_URL1_'+i).href; |
||||
|
thumbs = eval (); |
||||
|
|
||||
|
if (url.match (/javascript:ftvlaunch\(/)) |
||||
|
{ |
||||
|
expr = /\(([0-9]+),\s*([0-9]+),\s*'(.+)'\)/; |
||||
|
expr.exec (url); |
||||
|
|
||||
|
ftvlaunch (RegExp.$1, RegExp.$2, RegExp.$3); |
||||
|
return false; |
||||
|
} |
||||
|
|
||||
|
return popup (document.getElementById (id+'_BG_URL1_'+i).href); |
||||
|
} |
||||
|
// -----
|
||||
|
|
||||
|
function changeDisplay (client) |
||||
|
{ |
||||
|
for (i = 0; i < count; i++) |
||||
|
{ |
||||
|
idx = i + startIdx; |
||||
|
|
||||
|
if (idx > (thumbs.length - 1)) |
||||
|
idx -= thumbs.length; |
||||
|
|
||||
|
thumb = thumbs[idx].getThumb (); |
||||
|
cat = thumbs[idx].getCat (); |
||||
|
title = thumbs[idx].getTitle (); |
||||
|
text = thumbs[idx].getText (); |
||||
|
url = thumbs[idx].getUrl (); |
||||
|
|
||||
|
document.getElementById (id+'_BG_THUMB'+i).src = thumb; |
||||
|
|
||||
|
node = document.getElementById (id+'_BG_CAT'+i); |
||||
|
node.firstChild.data = cat; |
||||
|
node = document.getElementById (id+'_BG_TITLE'+i); |
||||
|
node.firstChild.data = title; |
||||
|
node = document.getElementById (id+'_BG_TEXT'+i); |
||||
|
node.firstChild.data = text; |
||||
|
|
||||
|
document.getElementById (id+'_BG_URL1_'+i).href = |
||||
|
url + '?em_client=' + client; |
||||
|
document.getElementById (id+'_BG_URL2_'+i).href = |
||||
|
url + '?em_client=' + client; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
this.incGallery = function (client) |
||||
|
{ |
||||
|
startIdx = (startIdx == (thumbs.length - count)) ? |
||||
|
thumbs.length - count : startIdx + 1; |
||||
|
|
||||
|
changeDisplay (client); |
||||
|
|
||||
|
return false; |
||||
|
} |
||||
|
|
||||
|
this.decGallery = function (client) |
||||
|
{ |
||||
|
startIdx = (startIdx == 0) ? 0 : startIdx - 1; |
||||
|
|
||||
|
changeDisplay (client); |
||||
|
|
||||
|
return false; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,14 @@ |
|||||
|
if (typeof (nBildertool) === 'undefined') |
||||
|
nBildertool = {}; |
||||
|
|
||||
|
nBildertool.extend = function (subClass, baseClass) |
||||
|
{ |
||||
|
function inheritance() {} |
||||
|
inheritance.prototype = baseClass.prototype; |
||||
|
|
||||
|
subClass.prototype = new inheritance(); |
||||
|
subClass.prototype.constructor = subClass; |
||||
|
subClass.baseConstructor = baseClass; |
||||
|
subClass.superClass = baseClass.prototype; |
||||
|
} |
||||
|
|
||||
@ -0,0 +1,48 @@ |
|||||
|
if (typeof (nBildertool) === 'undefined') |
||||
|
nBildertool = {}; |
||||
|
|
||||
|
nBildertool.req = null; |
||||
|
|
||||
|
nBildertool.service = function (url, callback) |
||||
|
{ |
||||
|
// erstellen des requests
|
||||
|
|
||||
|
try |
||||
|
{ |
||||
|
nBildertool.req = new XMLHttpRequest(); |
||||
|
} |
||||
|
catch (e) |
||||
|
{ |
||||
|
try |
||||
|
{ |
||||
|
nBildertool.req = new ActiveXObject("Msxml2.XMLHTTP"); |
||||
|
} |
||||
|
catch (e) |
||||
|
{ |
||||
|
try |
||||
|
{ |
||||
|
nBildertool.req = new ActiveXObject("Microsoft.XMLHTTP"); |
||||
|
} |
||||
|
catch (failed) |
||||
|
{ |
||||
|
nBildertool.req = null; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
if (nBildertool.req == null) |
||||
|
alert("Error creating request object!"); |
||||
|
|
||||
|
nBildertool.req.open("GET", url, true); |
||||
|
|
||||
|
// Beim abschliessen des request wird diese Funktion ausgeführt
|
||||
|
if (typeof (callback) === 'undefined') |
||||
|
nBildertool.req.onreadystatechange = nBildertool.cbCommon; |
||||
|
else |
||||
|
nBildertool.req.onreadystatechange = callback; |
||||
|
|
||||
|
nBildertool.req.setRequestHeader("Content-Type", |
||||
|
"application/x-www-form-urlencoded"); |
||||
|
|
||||
|
nBildertool.req.send(null); |
||||
|
} |
||||
@ -0,0 +1,111 @@ |
|||||
|
if (typeof (nBildertool) === 'undefined') |
||||
|
nBildertool = {}; |
||||
|
|
||||
|
if (typeof (FRONT_URL) === 'undefined') |
||||
|
FRONT_URL = 'http://foto.westfaelische-nachrichten.de/'; |
||||
|
|
||||
|
// strecke wird ausschliesslich ueber einen entsprechenden xml Datensatz
|
||||
|
// gefuellt.
|
||||
|
nBildertool.strecke = function (data) |
||||
|
{ |
||||
|
this.streckeId = null; |
||||
|
this.date = null; |
||||
|
this.showDate = null; |
||||
|
this.titel = null; |
||||
|
this.prio = null; |
||||
|
this.sektionen = null; |
||||
|
this.template = null; |
||||
|
this.ordnerId = null; |
||||
|
this.connectionId = null; |
||||
|
this.flags = null; |
||||
|
this.l0Id = null; |
||||
|
this.l1Id = null; |
||||
|
this.l2Id = null; |
||||
|
this.l3Id = null; |
||||
|
this.ordnerName = null; |
||||
|
this.viewFoto = null; |
||||
|
this.viewIndex = null; |
||||
|
this.downloads = null; |
||||
|
this.ffId = null; |
||||
|
this.ffBildzeile = null; |
||||
|
this.ffCopy = null; |
||||
|
this.ffSId = null; |
||||
|
this.ffSBildzeile = null; |
||||
|
this.ffSCopy = null; |
||||
|
this.fotoCount = null; |
||||
|
this.path = null; |
||||
|
|
||||
|
function getOrdnerInfo (value, idx) |
||||
|
{ |
||||
|
var val = value.split ('|%|'); |
||||
|
if (typeof (idx) === 'undefined') return val; |
||||
|
return val[idx]; |
||||
|
} |
||||
|
|
||||
|
function getOrdnerId (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.ordnerId, idx); |
||||
|
} |
||||
|
function getConnectionId (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.connectionId, idx); |
||||
|
} |
||||
|
function getFlags (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.flags, idx); |
||||
|
} |
||||
|
function getL0Id (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.l0Id, idx); |
||||
|
} |
||||
|
function getL1Id (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.l1Id, idx); |
||||
|
} |
||||
|
function getL2Id (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.l2Id, idx); |
||||
|
} |
||||
|
function getL3Id (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.l3Id, idx); |
||||
|
} |
||||
|
function getOrdnerName (idx) |
||||
|
{ |
||||
|
return getOrdnerInfo (this.ordnerName, idx); |
||||
|
} |
||||
|
|
||||
|
this.getTeaserUrl = function () |
||||
|
{ |
||||
|
var teaserPath = |
||||
|
escape (this.titel) + '/' + |
||||
|
this.streckeId.substr (this.streckeId.length-2) + '/' + |
||||
|
this.streckeId; |
||||
|
|
||||
|
return FRONT_URL + teaserPath + '.jpeg'; |
||||
|
} |
||||
|
|
||||
|
this.getThumbUrl = function () |
||||
|
{ |
||||
|
return FRONT_URL + this.path + 'T.jpeg'; |
||||
|
} |
||||
|
|
||||
|
this.getScreenUrl = function () |
||||
|
{ |
||||
|
return FRONT_URL + this.path + 'S.jpeg'; |
||||
|
} |
||||
|
|
||||
|
this.getDownlUrl = function () |
||||
|
{ |
||||
|
return FRONT_URL + this.path + '.jpeg'; |
||||
|
} |
||||
|
|
||||
|
this.getShowUrl = function () |
||||
|
{ |
||||
|
return FRONT_URL + this.path + '.html'; |
||||
|
} |
||||
|
|
||||
|
nBildertool.strecke.baseConstructor.call (this, data); |
||||
|
} |
||||
|
|
||||
|
nBildertool.extend (nBildertool.strecke, nBildertool.c_xmlify); |
||||
@ -0,0 +1,184 @@ |
|||||
|
if (typeof (nBildertool) === 'undefined') |
||||
|
nBildertool = {}; |
||||
|
|
||||
|
nBildertool.xmlToVar = function (data) |
||||
|
{ |
||||
|
if (!data.hasChildNodes ()) |
||||
|
return null; |
||||
|
|
||||
|
var ret = null; |
||||
|
|
||||
|
for (var node in data.childNodes) |
||||
|
{ |
||||
|
var child = data.childNodes[node]; |
||||
|
|
||||
|
if (child.nodeType === 3 && child.nodeValue !== null) |
||||
|
{ |
||||
|
ret = data.childNodes[node].nodeValue; |
||||
|
break; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
switch (data.getAttribute ('type')) |
||||
|
{ |
||||
|
case 'integer': ret = parseInt (ret, 10); break; |
||||
|
case 'double': ret = parseFloat (ret); |
||||
|
} |
||||
|
|
||||
|
return ret; |
||||
|
} |
||||
|
|
||||
|
nBildertool.xmlToObjectArray = function (data) |
||||
|
{ |
||||
|
var ret = new Array (); |
||||
|
|
||||
|
if (! data.hasChildNodes ()) |
||||
|
return ret; |
||||
|
|
||||
|
for (var node in data.childNodes) |
||||
|
{ |
||||
|
var child = data.childNodes[node]; |
||||
|
|
||||
|
if (child.nodeType === 1) |
||||
|
{ |
||||
|
name = child.getAttribute ('name'); |
||||
|
|
||||
|
switch (child.nodeName) |
||||
|
{ |
||||
|
case 'variable': |
||||
|
ret[name] = nBildertool.xmlToVar (child); break; |
||||
|
case 'array': |
||||
|
ret[name] = nBildertool.xmlToArray (child); break; |
||||
|
case 'class': |
||||
|
var cName = child.getAttribute ('class'); |
||||
|
|
||||
|
switch (cName) |
||||
|
{ |
||||
|
case 'c_picToolStrecke_new3': |
||||
|
ret[name] = new nBildertool.strecke (child); |
||||
|
break; |
||||
|
|
||||
|
default: |
||||
|
ret[name] = nBildertool.xmlToObjectArray (child); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
return ret; |
||||
|
} |
||||
|
|
||||
|
nBildertool.xmlToArray = function (data) |
||||
|
{ |
||||
|
var ret = new Array (); |
||||
|
|
||||
|
if (! data.hasChildNodes ()) |
||||
|
return ret; |
||||
|
|
||||
|
for (var node in data.childNodes) |
||||
|
{ |
||||
|
var child = data.childNodes[node]; |
||||
|
|
||||
|
if (child.nodeType === 1 && child.nodeName === 'item') |
||||
|
{ |
||||
|
var key = child.getAttribute ('key'); |
||||
|
|
||||
|
for (var _node in child.childNodes) |
||||
|
{ |
||||
|
var _child = child.childNodes[_node]; |
||||
|
|
||||
|
if (_child.nodeType === 1) |
||||
|
{ |
||||
|
switch (_child.nodeName) |
||||
|
{ |
||||
|
case 'variable': |
||||
|
ret[key] = nBildertool.xmlToVar (_child); break; |
||||
|
case 'array': |
||||
|
ret[key] = nBildertool.xmlToArray (_child); break; |
||||
|
case 'class': |
||||
|
var cName = child.getAttribute ('class'); |
||||
|
|
||||
|
switch (cName) |
||||
|
{ |
||||
|
case 'c_picToolStrecke_new3': |
||||
|
ret[key] = new nBildertool.strecke (_child); |
||||
|
break; |
||||
|
|
||||
|
default: |
||||
|
ret[key] = nBildertool.xmlToObjectArray (_child); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
return ret; |
||||
|
} |
||||
|
|
||||
|
nBildertool.c_xmlify = function (data) |
||||
|
{ |
||||
|
if (! data.hasChildNodes ()) |
||||
|
return; |
||||
|
|
||||
|
for (var node in data.childNodes) |
||||
|
{ |
||||
|
var child = data.childNodes[node]; |
||||
|
|
||||
|
if (child.nodeType === 1) |
||||
|
{ |
||||
|
var name = child.getAttribute ('name'); |
||||
|
|
||||
|
if (typeof (this[name]) !== 'undefined') |
||||
|
{ |
||||
|
switch (child.nodeName) |
||||
|
{ |
||||
|
case 'variable': |
||||
|
this[name] = nBildertool.xmlToVar (child); break; |
||||
|
case 'array': |
||||
|
this[name] = nBildertool.xmlToArray (child); break; |
||||
|
case 'class': |
||||
|
var cName = child.getAttribute ('class'); |
||||
|
|
||||
|
switch (cName) |
||||
|
{ |
||||
|
case 'c_picToolStrecke_new3': |
||||
|
this[name] = new nBildertool.strecke (child); |
||||
|
break; |
||||
|
|
||||
|
default: |
||||
|
this[name] = nBildertool.xmlToObjectArray (child); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
nBildertool.deXmlify = function (data) |
||||
|
{ |
||||
|
var ret = null; |
||||
|
var child = data.firstChild; |
||||
|
|
||||
|
switch (child.nodeName) |
||||
|
{ |
||||
|
case 'variable': |
||||
|
ret = nBildertool.xmlToVar (child); break; |
||||
|
case 'array': |
||||
|
ret = nBildertool.xmlToArray (child); break; |
||||
|
case 'class': |
||||
|
var cName = child.getAttribute ('class'); |
||||
|
|
||||
|
switch (cName) |
||||
|
{ |
||||
|
case 'c_picToolStrecke_new3': |
||||
|
ret = new nBildertool.strecke (child); |
||||
|
break; |
||||
|
|
||||
|
default: |
||||
|
ret = nBildertool.xmlToObjectArray (child); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
return ret; |
||||
|
} |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue