in SharePoint Designer Javascript zum Spalten ausblenden
Claudia
- javascript
Hallo!
Ich bin ganz neu hier im Forum und auch im Bezug auf JavaSkripte..
Ich bräuchte ein JavaSkript zum Ausblenden von Spalten wenn jemand anders sich auf die Seite einloggt, als der Manager. Das heißt in einer bestimmten Liste auf der Website sollen dann Management-Spalten ausgeblendet werden. Hab bisher folgendes erstellt:
script type="text/javascript"
function getCurrentUser()
{
var tags = document.getElementsByTagName('a');
for (var i=0; i < tags.length; i++)
{
if(tags.innerText.substr(0,7) == 'Welcome')
{
return tags.innerText.substr(8,tags.innerText.length);
}
}
}
var tr = document.getElementById('tr1');
var Benutzer = getCurrentUser();
if (Benutzer == Claudia Wagner)
{
tr.style.visibility = 'hidden';
}
script
so, hab die klammern bei script weggelassen, weil das Skript sonst vielleicht hier ausgeblendet wird.
ok, jetzt wäre es gut, wenn sich auch jemand mit SharePoint auskennen würde, denn ich weiß nicht, wo ich was (falls der Code überhaupt stimmt, ich weiß z.b. nicht, ob die id stimmt, oder ob der sich wirklich den aktuellen Benutzer der SharePoint-Seite holt) auf welcher Seite hinschreiben soll. In SharePoint gibt es ja eine Masterpage mit Head, body.. und eine default.aspx und weitere aspx-seiten zum einfügen, anzeigen und bearbeiten neuer Elemente in bestimmte listen. die aspx-Seiten sind dann ohne head und so.. ich muss aber scho direkt auf den aspx-Seiten das JavaScript einfügen, oder? weil da soll ja die Änderung passieren..
Kann mir irgendjemand helfen??? Ich komm einfach nicht weiter. :(
Viele Grüße!
Claudia
Hallo Claudia,
(daß es dazu nochmal kommen würde und ich auf eine Sharepoint-Frage antworte...)
zunächst mal als Vorbermerkung: vermutlich ist dies hier das falsche Forum für Deine Frage, es gibt aber auch ein deutschsprachiges Sharepoint-Forum.
Zu Deiner Frage: Wenn ich Dich richtig verstanden habe, geht es Dir um Ansichten (Views) von Listen. Was mit Rechteverwaltung zu tun hat, solltest Du keinesfalls mit Javascript machen. SP bietet Dir "persönliche Ansichten", d.h. Ansichten, die nur der anlegende Benutzer zu sehen kriegt.
Dies dürfte meines Wissens jedoch nicht verhindern, daß die Daten in den entsprechenden Spalten für alle Benutzer sichtbar sind, wenn diese sich eine andere Ansicht klicken. Frag halt mal nebenan, da sitzen die Experten ,-)
Gruß aus Köln-Ehrenfeld,
Elya
Hallo Elya!
Da kann mir auch keiner richtig helfen.. mein Code sieht mittlerweile so aus:
script type="text/javascript" language="javascript"
_spBodyOnLoadFunctionNames.push("Benutzerfilter");
function getCurrentUser()
{
var tags = document.getElementsByTagName('a');
for (var i=0; i < tags.length; i++)
{
if(tags[i].innerText.substr(0,7) == 'Welcome')
{
return tags[i].innerText.substr(8,tags[i].innerText.length);
}
}
}
function Benutzerfilter()
{
var tr = document.getElementById('status01{generate-id()}');
for (var i=0; i < tags.length; i++)
{
var Benutzer = getCurrentUser();
if (Benutzer[i] == 'c.wagner')
{
tr.style.visibility = 'hidden';
}
}
}
script-Ende
Es funktioniert immer noch nicht.. ich denk, ich habs an der richtigen Stelle eingefügt. Ach ja, die verschiedenen Ansichten bringen mir nichts.. Es geht eben nicht mit SharePoint, dass man Spalten ausblendet, deshalb will ich ja ein JavaSkript..
Was wird denn genau in der Variable tags gespeichert? Alle Benutzer?
Viele Grüße!
Claudia