var Profile = {
ID_DOM: {
welcome: {
MORE_TICKER: "prMoreTicker",
MORE_PROFILE: "prMoreProfile"
},
FRAME: "to",
TICKER: "tk"
},
welcomeMessage: {
edit: function() {
this.innerSave = document.getElementById("prWelcomeMessage").innerHTML;
document.getElementById("prWelcomeMessage").innerHTML = "<div class='pd10 bgG1'><img src='"+Jpy.picurl+"/i/ge/loading.gif' class='vaMid'> Bitte warten ...</span></div>";
var loadWelcomeMessage = new AjaxHandler();
var callback = {
json: true,
success: function(data) {
Profile.welcomeMessage.injectInput(data);
}
};
loadWelcomeMessage.request('POST', "/backend/profile/welcomeMessage.php?h="+User.hash, callback, {
action: "get"
});
},
injectInput: function (message) {
message = message || "";
var height = "200px";
if (/\n/.test(message) == true) {
var match = message.match(/\n/gi);
if (match.length) height = 200+(16*(match.length-5))+"px";
}
var textarea = DOM.textarea({
className: "teG3",
style: {
borderLeft:"1px solid #e1e1e1",
width:"460px",
height: height,
fontSize:"11px",
fontFamily: "Verdana, Arial, sans serif",
lineHeight: "14px"
},
value: message
});
var wrapper = DOM.div({
child:textarea
})
var frame = document.getElementById("prWelcomeMessage");
frame.innerHTML = "";
frame.style.margin = "5px 5px 0 0";
var actionbar = DOM.actionbar("Speichern", "Abbrechen");
actionbar.send.onclick = function() {
Profile.welcomeMessage.save(textarea, frame);
}
actionbar.abort.onclick = function() {
frame.innerHTML = Profile.welcomeMessage.innerSave;
frame.style.margin = "5px 10px 0 10px";
}
frame.appendChild(wrapper);
MessageEditor.register(textarea, "limit2000", undefined, null, 460);
frame.appendChild(actionbar.frame);
},
save: function (textarea, frame) {
var message = textarea.value;
var loadWelcomeMessage = new AjaxHandler();
var callback = {
json: true,
success: function(data) {
frame.innerHTML = data;
frame.style.margin = "5px 10px 0 10px";
SystemMessage.inline.success("Begrüßungstext wurde geändert!")
}
};
loadWelcomeMessage.request('POST', "/backend/profile/welcomeMessage.php?h="+User.hash, callback, {
action: "alter",
text: message
});
}
},
startpageInit: function () {
if (document.getElementById("prWelcomeSettings")) {
Profile.enableSettings("prWelcome");
}
if (document.getElementById("prGalleryPreviewSettings")) {
Profile.enableSettings("prGalleryPreview");
}
if (document.getElementById("prGuestbookPreviewSettings")) {
Profile.enableSettings("prGuestbookPreview");
}
},
enableSettings: function (type) {
var frame = document.getElementById(type);
var settings = document.getElementById(type+"Settings");
settings.onmouseover = function () {
frame.style.background = "#f1f1f1";
frame.style.borderTop = "1px solid #e1e1e1";
settings.onmouseout = function () {
frame.style.background = "#ffffff";
frame.style.borderTop = "1px solid #ffffff";
}
}
frame.onmouseover = function () {
if (Profile.lock[type] == false) {
settings.style.display = "block";
frame.onclick = function () {
settings.style.display = "block";
Profile.lock[type] = true;
}
frame.onmouseout = function () {
if (Profile.lock[type] == false) {
settings.style.display = "none";
}
}
}
}
},
lock: {
prGalleryPreview: false,
prGuestbookPreview: false,
prWelcome: false
},
galleryPreview: function (trigger, previewSetting) {
if (document.getElementById("lyGalleryPreviewSettings")) {
trigger.getElementsByTagName("span")[0].className = "icDown";
Jpy.layer.remove("lyGalleryPreviewSettings");
}
else {
var layer = new Jpy.layer.get({
id:"lyGalleryPreviewSettings",
trigger: trigger,
offset: {x:0,y:18}
});
var frame = layer.frame;
frame.className = "ddW";
var template = "";
if (previewSetting == 1) {
template = "<form method='post' action='/settings/gallery' accept-charset='UTF-8'><a href='#' onclick='this.parentNode.submit();return false;'>Fotovorschau deaktivieren</a><input type='hidden' name='galleryPreview' value='0'></form>";
}
else {
template = "<form method='post' action='/settings/gallery' accept-charset='UTF-8'><a href='#' onclick='this.parentNode.submit();return false;'>Fotovorschau aktivieren</a><input type='hidden' name='galleryPreview' value='1'></form>";
}
frame.innerHTML = template;
trigger.getElementsByTagName("span")[0].className = "icUp";
}
},
guestbookPreview: function (trigger, previewSetting) {
if (document.getElementById("lyGuestbookPreviewSettings")) {
trigger.getElementsByTagName("span")[0].className = "icDown";
Jpy.layer.remove("lyGuestbookPreviewSettings");
}
else {
var layer = new Jpy.layer.get({
id:"lyGuestbookPreviewSettings",
trigger: trigger,
offset: {x:0,y:18},
instructions: {
style: {
width: "200px"
}
}
});
var frame = layer.frame;
frame.className = "ddW";
var template = "";
if (previewSetting == 1) {
template = "<a href='/settings/guestbook/disablePreview?h=" + User.hash + "'>Gästebuchvorschau deaktivieren</a>";
}
else {
template = "<a href='/settings/guestbook/enablePreview?h=" + User.hash + "'>Gästebuchvorschau aktivieren</a>";
}
frame.innerHTML = template;
trigger.getElementsByTagName("span")[0].className = "icUp";
}
},
more: {
owner: function (trigger) {
Profile.owner.clearNavigation();
Jpy.layer.remove('prOwnerSettings');
if (document.getElementById('prMore')) {
Jpy.layer.remove('prMore');
}
else {
var offset = {x:0,y:40};
if (User.profilePopup != "n") {
offset.x = -62;
}
var layer = new Jpy.layer.get({
id:"prMore",
trigger: trigger,
offset: offset
});
var frame = layer.frame
frame.className = "ddW";
var template = ""
+ "<a href='/ratter/overview'>Mein Profil bewerben</a>"
+ "<a href='/shop/features'>Profil ausbauen</a>"
+ "<a href='/myjappy/rank'>Rang, Credits & Co</a>";
frame.innerHTML = template;
var triggerIcon = trigger.getElementsByTagName('span')[0];
triggerIcon.className = "icUp";
trigger.style.background = "#ffffff";
}
},
buddy: function (trigger, nickname, userId, friendFolderId, onlinestatus, twaddlerServerId, twaddlerInviterId, twaddlerInviteeId) {
if (document.getElementById('prMore')) {
Jpy.layer.remove('prMore');
}
else {
var offset = {x:0,y:40};
if (User.profilePopup != "n") {
offset.x = -62;
}
var layer = new Jpy.layer.get({
id:"prMore",
trigger: trigger,
offset: offset
});
var frame = layer.frame;
frame.className = "ddW";
var template = "";
if (onlinestatus == true && twaddlerServerId) {
template = " <a href='#' onclick='Twaddler.sendLivechatInvitation(" + twaddlerServerId + ", " + twaddlerInviterId + "," + twaddlerInviteeId + ", \"c"+nickname+"\"); return false;'>Zum LiveChat einladen</a>";
}
if (User.profilePopup == "n") {
template += ""
+ "<a href='/user/"+nickname+"/gifts/donate'>"+nickname+" beschenken</a>"
+ "<a href='#' class='cp' onclick='Emotions.load("+userId+",\""+nickname+"\", this)'>Emotion hinzufügen</a>";
}
else {
template += ""
+ "<a href='/user/"+nickname+"/gifts/donate' target='_blank'>"+nickname+" beschenken</a>"
+ "<a href='#' class='cp' onclick='Emotions.load("+userId+",\""+nickname+"\", this)'>Emotion hinzufügen</a>"
}
frame.innerHTML = template;
}
this.toggleTrigger(trigger);
},
foreigner: function (trigger, nickname, userId, onlinestatus, tickerStatus, twaddlerServerId, twaddlerInviterId, twaddlerInviteeId) {
if (document.getElementById('prMore')) {
Jpy.layer.remove('prMore');
}
else {
var offset = {x:0,y:40};
if (User.profilePopup != "n") {
offset.x = -62;
}
var layer = new Jpy.layer.get({
id:"prMore",
trigger: trigger,
offset: offset
});
var frame = layer.frame;
frame.className = "ddW";
var template = "";
if (onlinestatus == true && twaddlerServerId != undefined) {
template = " <a href='#' onclick='Twaddler.sendLivechatInvitation(" + twaddlerServerId + ", " + twaddlerInviterId + "," + twaddlerInviteeId + ", \"c"+nickname+"\"); return false;'>Zum LiveChat einladen</a>";
}
if (User.profilePopup == "n") {
template += ""
+ "<a href='/user/"+nickname+"/gifts/donate'>"+nickname+" beschenken</a>"
+ "<a href='#' class='cp' onclick='Emotions.load("+userId+",\""+nickname+"\", this)'>Emotion hinzufügen</a>"
+ "<a href='/ticket/report/4/"+userId+"'>Regelverstoß melden!</a>"
+ "<a onclick='SystemMessage.confirm.show(\"Willst Du "+nickname+" wirklich ignorieren?\", this, \"Jpy.ignore("+userId+")\", null)' class='cp'>"+nickname+" ignorieren</a>";
}
else {
template += ""
+ "<a href='/user/"+nickname+"/gifts/donate' target='_blank'>"+nickname+" beschenken</a>"
+ "<a href='#' class='cp' onclick='Emotions.load("+userId+",\""+nickname+"\", this)'>Emotion hinzufügen</a>"
+ "<a href='/ticket/report/4/"+userId+"' target='_blank'>Regelverstoß melden!</a>"
+ "<a onclick='SystemMessage.confirm.show(\"Willst Du "+nickname+" wirklich ignorieren?\", this, \"Jpy.ignore("+userId+")\", null)' class='cp'>"+nickname+" ignorieren</a>";
}
if (tickerStatus == 0) {
template += "<a href='#' onclick='TickerAbo.add("+User.id+", "+userId+", "+User.hash+");return false;'>Fan werden</a>";
}
else if (tickerStatus == 1) {
template += "<a href='#' onclick='TickerAbo.erase("+User.id+", "+userId+", 0, "+User.hash+");return false;'>Kein Fan mehr</a>";
}
frame.innerHTML = template;
}
this.toggleTrigger(trigger);
},
ignore: function (trigger, nickname, userId) {
var message = "Willst Du <b>"+nickname+"</b> wirklich ignorieren?<br><br><a href='http://wiki.jappy.de/wiki/Ignore' target='_blank' class='coB3 ldN'><span class='icWiki'>&nbsp;</span>Hilfe zur Ignorefunktion.</a>"
var offset = {
x:50,
y:-400
}
var forward = function () {
if (User.profilePopup == "n") {
window.location.href = "/myjappy/ignore?id="+userId+"&h="+User.hash;
}
else {
var blankWindow = window.open("/myjappy/ignore?id="+userId+"&h="+User.hash)
blankWindow.focus();
}
Jpy.remove('lyConfirm');
}
SystemMessage.confirm.show(message, trigger, forward, null, offset);
},
toggleTrigger: function (triggerSpan) {
var triggerIcon = triggerSpan.getElementsByTagName('span')[0];
if (triggerIcon.className == "icDown") {
triggerSpan.style.background = "#ffffff";
triggerSpan.style.color = "#000000";
triggerIcon.className = "icUp";
}
else {
triggerIcon.className = "icDown";
triggerSpan.style.background = "";
triggerSpan.style.color = "";
}
}
},
owner: {
clearNavigation: function () {
var entries = Jpy.id("prActionbar").getElementsByTagName("a");
for (var i = 0, len = entries.length; i < len; i++) {
if (entries[i].getElementsByTagName("span")[0].className == "icUp") {
entries[i].getElementsByTagName("span")[0].className = "icDown";
entries[i].style.background = "";
}
}
},
settings: function (trigger) {
this.clearNavigation();
Jpy.layer.remove('prMore');
if (document.getElementById('prOwnerSettings')) {
Jpy.layer.remove('prOwnerSettings');
}
else {
var layer = new Jpy.layer.get({
id:"prOwnerSettings",
trigger: trigger,
offset: {x:0,y:40}
});
var frame = layer.frame;
frame.className = "ddW";
var template = ""
+ "<a href='/settings/profileMessage'>Begrüßungstext bearbeiten</a>"
+ "<a href='/settings/aboutMe'>Grunddaten ändern</a>"
+ "<a href='/settings/locale'>PLZ ändern</a>";
frame.innerHTML = template;
var triggerIcon = trigger.getElementsByTagName('span')[0];
triggerIcon.className = "icUp";
trigger.style.background = "#ffffff";
}
}
},
friendship: {
DEFAULT_TEXT: "Trage hier Deine Nachricht ein",
offer: function (userId, nickname) {
Jpy.remove("prRequestFriendship");
var dom = new Design();
var frame = dom.div({className:"lh25 bgG0 pd10 fs12",style:{background:"#fffee0",borderBottom:"1px solid #e1e1e1"},id:"prRequestFriendship"});
frame.style.paddingLeft = "100px";
var box = dom.div({className:"w400"});
var heading = dom.div({className:"fwB"});
heading.appendChild(dom.txt("Willst du "+nickname+" die Freundschaft anbieten?"));
box.appendChild(heading);
var input = dom.input({className:"inA pd5",value:this.DEFAULT_TEXT})
input.onclick = function () {
if (input.value == Profile.friendship.DEFAULT_TEXT) input.value = "";
}
input.style.width = "385px";
input.setAttribute("maxlength", 250);
box.appendChild(input);
var actionbar = dom.div({className:"pd10 taR"});
var buttonOffer = dom.link({className:"inCo rb5 fwB cp"});
buttonOffer.innerHTML = "<span class='icAdd'>&nbsp;</span> Freundschaft anbieten";
buttonOffer.onclick = function () {
Profile.friendship.send(userId, frame, input)
}
var buttonAbort = dom.link({className:"inCo rb5 cp"});
buttonAbort.innerHTML = "Abbrechen";
buttonAbort.style.marginRight = "5px";
buttonAbort.onclick = function () {
Jpy.remove(frame);
}
actionbar.appendChild(buttonAbort);
actionbar.appendChild(buttonOffer);
box.appendChild(actionbar);
frame.appendChild(box);
Jpy.insertAfter(document.getElementById('prActionbar'), frame);
},
send: function (userId, frame, input) {
if (/\[url|\[img/.test(input.value)) {
SystemMessage.inline.error("Bitte keine JappyCodes verwenden!");
return;
}
else if (/\<a|\<img\<scr/.test(input.value)) {
SystemMessage.inline.error("Bitte keine HTML-Tags verwenden!");
return;
}
SystemMessage.loading.start();
var linkContacts;
if (User.profilePopup == "y") {
linkContacts = "<a href='/myjappy/friends/' class='coB3 fwI'>(Kontakte verwalten)</a>";
}
else {
linkContacts = "<a href='/myjappy/friends/' target='_blank' class='coB3 fwI'>(Kontakte verwalten)</a>";
}
var reason = "";
if (input.value != this.DEFAULT_TEXT) reason = input.value;
var requestFriendship = new AjaxHandler();
var callback = {
success: function(data) {
SystemMessage.loading.end();
var message = eval("("+ data+ ")");
frame.style.paddingLeft = "0px";
if (message.ok) {
frame.className = "bgG1 pd10 fs12 taC";
frame.innerHTML = "<span class='icOk'>&nbsp;</span>"+ message.ok+" "+linkContacts;
}
else if (message.fail) {
frame.className = "bgY1 pd10 fs12 taC bbG5";
frame.innerHTML = "<b>Fehler:</b> "+message.fail+" "+linkContacts;
}
},
failure: function(statusCode) {
SystemMessage.loading.end();
Jpy.handleAjaxError(statusCode);
}
};
requestFriendship.request('GET', "/backend/friend/friendshipOffer.php?h="+User.hash+"&userId="+userId+"&reason="+reason, callback);
}
},
ticker: {
star: function (trigger, ownerId) {
if (document.getElementById('prMore')) {
Jpy.layer.remove('prMore');
trigger.style.background = "";
}
else {
var layer = Jpy.layer.add("prOwnerSettings",trigger,{x:0,y:40});
var frame = layer.frame;
frame.className = "ddW";
var template = ""
+ "<div class='fs12 lh20 pd15 bgG1'>Wenn deine Stars Tickereinträge schreiben wirst du über deine JappyStartseite informiert.</div>"
+ "<a onclick='TickerAbo.erase("+User.id+", "+ownerId+", 0, "+User.hash+");return false' href='#'><span class='icDelete'>&nbsp;</span>Kein Fan mehr!</a>"
frame.innerHTML = template;
trigger.style.background = "#FFFFFF";
}
}
},
details: {
init: function () {
var elements = document.getElementById('prSl').getElementsByTagName('tr');
for (var i = 0, len = elements.length; i < len; i++) {
if (elements[i].className == "hover") {
elements[i].onmouseover = function () {
this.style.background = "#fffee0";
}
elements[i].onmouseout = function () {
this.style.background = "";
}
}
}
}
},
gifts: {
init: function () {
var list = Jpy.id('prGiftsList');
list.onclick = function () {
document.location.href = document.location.href+"/gifts";
}
if (document.getElementById('prGiftsNavigation')) {
Jpy.id('prGiftsNavigation').getElementsByTagName('span')[0].onmouseover = Profile.gifts.hoverNavigation.show;
}
},
showSide: function (profilUserId, numberOfGiftsPerPage, action) {
if (this.listSimple.length == 0) {
this.loadSimple(profilUserId, numberOfGiftsPerPage, action);
}
else {
this.insert(numberOfGiftsPerPage, action);
}
},
loadSimple: function (profilUserId, numberOfGiftsPerPage, action, force) {
if (!force) force = false;
if (this.listSimple.length == 0 || force == true) {
var getGifts = new AjaxHandler();
var callback = {
success: function(data) {
Profile.gifts.simpleTmpData = eval("("+data+")");
if (Profile.gifts.simpleTmpData == null) {
Profile.gifts.simpleTmpData = {
data: {}
};
}
Profile.gifts.reSort(numberOfGiftsPerPage);
Profile.gifts.insert(action);
},
failure: function(statusCode) {
Jpy.handleAjaxError(statusCode);
}
};
getGifts.request('GET', "/backend/gift/giftViewStartPage.php?action=preview&profileOwnerId="+profilUserId, callback);
}
else {
Profile.gifts.insert(action);
}
},
listSimple: [],
side: 1,
insert: function (action) {
var frame = Jpy.id("prGiftsList");
frame.innerHTML = "";
var dom = new Design();
if (this.listSimple[0].length == 0) {
var info = dom.div({className:"taC fwI"});
info.appendChild(dom.txt("Alle ausgeblendet"));
frame.appendChild(info)
}
else {
if (action == 1 && this.side > 0) {
this.side = this.side-2;
}
var len = this.listSimple[this.side].length
for (var i = 0; i < len; i++) {
var gifts = dom.div({className:"gsN"});
var image = dom.image({src:Jpy.picurl+"/i/g/"+this.listSimple[this.side][i].icon});
image.setAttribute("alt", "von "+this.listSimple[this.side][i].senderNickname);
image.setAttribute("title", "von "+this.listSimple[this.side][i].senderNickname);
var spacer = dom.txt(" ");
gifts.appendChild(image);
frame.appendChild(image);
frame.appendChild(spacer);
}
var positionStart = 1;
var positionEnd = len;
if (this.numberOfGifts > this.numberOfGiftsPerPage) {
positionStart = this.numberOfGifts-(this.side+1)*this.numberOfGiftsPerPage+1;
if (positionStart <= 0) {
positionStart = 1;
}
positionEnd = positionStart+len-1
}
this.appendNavigation(positionStart, positionEnd)
if (action == 0) {
this.side = this.side+1;
}
else if (action == 1) {
this.side = this.side+1;
}
else if (action == 2) {
this.side = 1;
}
}
},
injectAllGifts: function () {
var getGifts = new AjaxHandler();
var callback = {
success: function(data) {
var giftList = eval("("+ data+ ")");
if (document.getElementById('prGiftsNavigation')) {
Jpy.id('prGiftsNavigation').innerHTML = "";
}
var dom = new Design();
var frame = Jpy.id("prGiftsList");
frame.innerHTML = "";
var len = 0;
if(giftList.data.length) {
len = giftList.data.length;
}
for (var i = 0; i < len; i++) {
var gifts = dom.div({className:"gsN"});
var image = dom.image({src:Jpy.picurl+"/i/g/"+giftList.data[i].icon});
var spacer = dom.txt(" ");
image.setAttribute("alt", "von "+giftList.data[i].senderNickname);
image.setAttribute("title", "von "+giftList.data[i].senderNickname);
gifts.appendChild(image);
frame.appendChild(image);
frame.appendChild(spacer);
}
},
failure: function(statusCode) {
Jpy.handleAjaxError(statusCode);
}
};
getGifts.request('GET', "/backend/gift/giftViewStartPage.php?action=preview&profileOwnerId="+User.id, callback);
},
reStart: function (numberOfGiftsPerPage) {
this.side = 0;
this.loadSimple(User.id, numberOfGiftsPerPage, 2, true);
},
appendNavigation: function (positionStart, positionEnd) {
if (document.getElementById('prGiftsNavigation')) {
var frame = Jpy.id("prGiftsNavigation");
frame.innerHTML = "";
var dom = new Design();
if (positionStart > 1) {
var spanBack = dom.span({className:"icPoLe rb5 cp"});
spanBack.innerHTML = "&nbsp;";
spanBack.onclick = function () {
Profile.gifts.insert(0);
}
spanBack.onmouseover = Profile.gifts.hoverNavigation.show;
frame.appendChild(spanBack);
}
var info = dom.txt(""+positionStart+" bis "+positionEnd+"");
frame.appendChild(info);
if (positionEnd < this.numberOfGifts) {
var spanForward = dom.span({className:"icPoRi rb5 cp"});
spanForward.innerHTML = "&nbsp;";
spanForward.onclick = function () {
Profile.gifts.insert(1);
}
spanForward.onmouseover = Profile.gifts.hoverNavigation.show;
frame.appendChild(spanForward);
}
}
},
hoverNavigation: {
show: function () {
this.style.border = "1px solid #71a5e6";
this.onmouseout = Profile.gifts.hoverNavigation.hide;
},
hide: function () {
this.style.border = "";
}
},
reSort: function (numberOfGiftsPerPage) {
var list = Profile.gifts.simpleTmpData.data;
this.numberOfGifts = list.length;
this.numberOfGiftsPerPage = numberOfGiftsPerPage;
var entry = 1;
var side = 0;
var listLength = 0;
if(list.length) {
listLength = list.length;
}
var gifts = new Array(Math.ceil(listLength/numberOfGiftsPerPage))
gifts[side] = [];
for (var n in list) {
if (entry > numberOfGiftsPerPage) {
side++
gifts[side] = [];
entry = 1;
}
if (list[n].showOnSidebar == 1) {
gifts[side].unshift(list[n]);
entry++
}
}
this.listSimple = gifts;
return;
},
config: function (trigger, profilUserId, numberOfGiftsPerPage) {
 var getGifts = new AjaxHandler();
 var callback = {
 success: function(data) {
 Profile.gifts.data = eval("("+ data+ ")");
if (!Profile.gifts.numberOfGiftsPerPage) {
Profile.gifts.numberOfGiftsPerPage = numberOfGiftsPerPage;
}
Profile.gifts.showConfig(trigger, profilUserId);
 },
 failure: function(statusCode) {
 Jpy.handleAjaxError(statusCode);
 }
 };
 getGifts.request('GET', "/backend/gift/giftViewStartPage.php?action=all&profileOwnerId="+profilUserId, callback);
},
buttonShow: "<a class='inG2 rb5 fwI cp' title='Geschenk ausblenden'><span class='icVoteFlop'>&nbsp;</span></a>",
buttonHide: "<a class='inCo rb5 fwB cp' title='Geschenk einblenden'><span class='icVoteTop'>&nbsp;</span></a>",
buttonPrivate: "Privates Geschenk",
counter: {
all: 0,
levelOne: 30,
levelTwo: 60
},
getGeneralLayout: function () {
var dom = new Design();
var root = Profile.gifts;
var all = dom.span({className:"inG2 cp"})
all.appendChild(dom.txt("Alle"))
all.onclick = function () {
root.setDisplaySettings(root.counter.all);
}
this.all = all;
var levelOne = dom.span({className:"inG2 cp"})
levelOne.appendChild(dom.txt("max 30"))
levelOne.onclick = function () {
root.setDisplaySettings(root.counter.levelOne);
}
this.levelOne = levelOne;
var levelTwo = dom.span({className:"inG2 cp"})
levelTwo.appendChild(dom.txt("max 60"))
levelTwo.onclick = function () {
root.setDisplaySettings(root.counter.levelTwo);
}
this.levelTwo = levelTwo;
var layout = dom.div();
layout.appendChild(all);
layout.appendChild(levelOne);
layout.appendChild(levelTwo)
this.layout = layout;
},
highlightActiveGeneral: function (numberOfGiftsPerPage) {
var layout = this.layoutGeneral;
if (numberOfGiftsPerPage == Profile.gifts.counter.levelOne) {
layout.all.className = "inG2 cp";
layout.levelOne.className = "inCo fwB cp";
layout.levelTwo.className = "inG2 cp";
}
else if (numberOfGiftsPerPage == Profile.gifts.counter.levelTwo) {
layout.all.className = "inG2 cp";
layout.levelOne.className = "inG2 cp";
layout.levelTwo.className = "inCo fwB cp";
}
else {
layout.all.className = "inCo fwB cp";
layout.levelOne.className = "inG2 cp";
layout.levelTwo.className = "inG2 cp";
}
return;
},
showConfig: function (trigger, profilUserId) {
this.profilUserId = profilUserId;
var gifts = Profile.gifts.data;
var dom = new Design();
var frame = Jpy.layerDragable.add(trigger, "lyGiftConfig", "450px", {y:-200,x:-500});
var headlineGeneral = dom.div({className:"bgG1 pd10 fwB fs12"});
headlineGeneral.innerHTML = "Wie viele Geschenke sollen auf der Profilstartseite angezeigt werden?";
frame.appendChild(headlineGeneral);
var general = dom.div({className:"pd10 bgW fs12"});
var generalLayout = new this.getGeneralLayout();
general.appendChild(generalLayout.layout);
this.layoutGeneral = generalLayout;
frame.appendChild(general);
this.highlightActiveGeneral(this.numberOfGiftsPerPage);
var headlineIndividuell = dom.div({className:"bgG1 pd10 fwB fs12"});
headlineIndividuell.innerHTML = "Einzelne Geschenke auf der Profilstartseite aus- und einblenden.";
frame.appendChild(headlineIndividuell);
var list = dom.div();
for (var n in gifts) {
var row = dom.div({className:"pd5 bgW bbG1 ldN cf"});
if (gifts[n].showOnSidebar != "1") {
Jpy.css.set([row], {background:"#f1f1f1"});
}
row.style.width = "440px";
row.onmouseover = function () {
Jpy.css.hoverClass(this, "bgY1");
}
var giftFrame = dom.div({
className:"fl ovH",
style:{
width:"180px"
}
});
var giftIcon = dom.image({src:Jpy.picurl+"/i/g/"+gifts[n].icon});
var giftName = " <b>"+Jpy.truncate(20, gifts[n].name)+"</b>"
dom.append(giftFrame, [giftIcon]);
giftFrame.innerHTML += giftName;
var giftSender = dom.div({className:"fl fs11 w100"})
var senderNickname = "";
if (gifts[n].senderId != null) {
senderNickname = Userstamp.read(gifts[n].senderStamp);
}
else {
senderNickname = gifts[n].senderNickname;
}
giftSender.innerHTML = "von "+senderNickname;
var visibility = dom.div({
className:"fr taL",
style: {
width: "120px"
}
});
var visibilityStatus = dom.div();
visibilityStatus.innerHTML = this.buttonShow;
if (gifts[n].isPrivate == true) {
visibilityStatus.innerHTML = this.buttonPrivate;
}
else if (gifts[n].showOnSidebar != "1") {
visibilityStatus.innerHTML = this.buttonHide;
}
var gift = gifts[n];
if (gifts[n].isPrivate == false) {
visibility.onclick = function (profilUserId, gift) {
return function () {
Profile.gifts.setVisibility(this, profilUserId, gift);
}
}(profilUserId, gift)
}
visibility.appendChild(visibilityStatus);
dom.append(row, [giftFrame,giftSender,visibility]);
list.appendChild(row);
}
frame.appendChild(list);
Jpy.layerDragable.drag.init("lyGiftConfig");
},
setDisplaySettings: function (numberOfGifts) {
var profileOwnerId = this.profilUserId;
var setDisplay = new AjaxHandler();
var callback = {
success: function(response) {
var root = Profile.gifts;
root.numberOfGiftsPerPage = numberOfGifts;
root.highlightActiveGeneral(numberOfGifts);
if (numberOfGifts == 0) {
root.injectAllGifts();
}
else {
root.reStart(numberOfGifts);
}
},
failure: function(errorCode) {
Jpy.handleAjaxError(errorCode);
}
};
var post = {
profileOwnerId: profileOwnerId,
numberOfGifts: numberOfGifts,
action: 'alterProfileDisplay'
};
setDisplay.request("POST", "/backend/gift/giftAlterStartPage.php?h="+User.hash, callback, post);
},
setVisibility: function (trigger, profileOwnerId, gift) {
var action = "hideGift";
if (gift.showOnSidebar != "1") {
action = "showGift";
}
var giftData = {
profileOwnerId: profileOwnerId,
giftId: gift.id,
action: action
}
 var setVisibility = new AjaxHandler();
 var callback = {
 success: function(data) {
if (data == "0") {
var giftChanged = gift;
if (gift.showOnSidebar != "1") {
SystemMessage.inline.success("Geschenk wird auf der Profilstartseite angezeigt!");
giftChanged.showOnSidebar = "1";
trigger.innerHTML = Profile.gifts.buttonShow;
trigger.parentNode.style.background = "";
}
else {
SystemMessage.inline.success("Geschenk wir nicht auf der Profilstartseite angezeigt!");
giftChanged.showOnSidebar = "0";
trigger.innerHTML = Profile.gifts.buttonHide;
trigger.parentNode.style.background = "#f1f1f1";
}
if (Profile.gifts.numberOfGiftsPerPage) {
Profile.gifts.reStart(Profile.gifts.numberOfGiftsPerPage);
}
trigger.onclick = function () {
Profile.gifts.setVisibility(this, profileOwnerId, giftChanged);
}
}
 },
 failure: function(statusCode) {
 Jpy.handleAjaxError(statusCode);
 }
 };
 setVisibility.request('POST', "/backend/gift/giftAlterStartPage.php?h="+User.hash, callback, giftData);
}
}
}
// Wed Jan  5 15:28:23 2011
