Hej,
Jag är en pinfärsk Drupalanvändare som precis börjat sätta mig in i den här komplexa världen. Det jag försöker åstadkomma är ett intranät där varje användare har sin egen kalender. Jag har följt en videotutorial länkad via Calendar-modulen för att lägga in en kalender (han använder date-browser istället för calendar, förstod inte varför), men det man får då är ju en kalender för allt på hela sajten. Det jag är ute efter är alltså en kalender för varje inloggad användare. Min gissning är att jag ska kopiera Calendar från views, och sedan ändra i inställningarna för Views (som är rätt så överväldigande vid en första anblick) så att aktuell användare bara ser sina egna inlägg. En sub-fråga här blir också vad URLen blir till denna egna kalender, per automatik var adressen samma som för calendar när jag klonade den.
Tacksam för hjälp eller pekningar i rätt riktning, har redan försökt leta efter svar inom Drupals community utan större framgång. Har installerat CCK, views, calendar, date.
Comments
Filter
Tjena Emil!
Du kan filtrera så att viewn pekar på den aktuella användaren så att han/hon bara ser sina egna inlägg, så det är inga problem. Viewn använder samma url oavsett användare eftersom filtreringen sker på databasnivå.
Fast frågan är kanske hur du ska hindra användare från att se varandras inlägg i övrigt. Om du använder någon form av access-modul så tar views hänsyn till det och visar automagiskt endast de inlägg du har rätt att se. För tänk om du plötsligt vill att folk ska kunna se varandras kalenderposter, hur styr du visningen i views då?
Annars är filtret "Användare: nuvarande" din vän :-) (eller om det var "Nod: Användare skrev eller kommenterade", jag minns inte vilken som var rätt)
/Hasse
Hej Hasse! :) Tack för det
Hej Hasse! :)
Tack för det snabba svaret. Jag inser att jag måste bli mer specifik i vad jag vill ha gjort här, har nog tänkt fel lite (slår knut på mig själv med det här fredagsgrottandet i Drupal så kanske inte så konstigt!). Varje användare har en egen kalender, men alla användare kan se varandras kalendrar. Syftet med de egna kalendrarna är främst att man ska veta var kollegorna håller hus. En privat kalender är sekundärt i det här skedet.
Då är filter det du ska
Då är filter det du ska använda. Men jag ser nu att det finns även ett argument "Nod: Användare skrev eller kommenterade" som du kanske kan använda ;-) Så du får prova dig fram till önskat resultat ;-) Tala gärna om vilken som gav bäst resultat.
/Hasse
Open Atrium
Open Atrium http://openatrium.com - Intranet in a box
Funkar super för mig iaf. där ingår allt jag behöver (shoutbox, personliga bloggar, books, kalender (både publik och privat), grupper m.m.) + att det är riktigt lätt att bygga egna "features".
--
Hjälper gärna (pro bono) de som vill lära sig Drupal (fast jag är inte i "Drupal Nirvana" än), vill någon ha professionell hjälp har jag ett företag också.
Open Atrium
Provade Open Atrium innan jag gav mig på en ren Drupal-installation just eftersom Open Atrium inte har personliga kalendrar.
Kan man inte knuta kalender
Kan man inte knuta kalender till profilen? (Profile Content?)
Som du varit inne på redan
Som du varit inne på redan tidigare. Använd dig av modulerna Calender, Date och Views så kommer du att kunna skapa en kalender på ett smidigt sätt.
Redigera vyn "calendar".
Lägg till ett argument, sortera på grupp "användare", välj "Användare: Uid".
Välj sedan "Tillhandahåll förvalt argument".
Därefter "Användarens ID från inloggade användare".
Lämna resten av inställningarna för argumentet som dess förvalda läge.
Vill du enbart ha med en viss typ av inlägg i din kalender går du in på vyn och lägger till ett filter, sortera på grupp "Nod" och välj "Nod: Typ".
Välj därefter den innehållstyp du vill ha med i din kalender.
I din kalender som du för övrigt hittar på /calendar så kommer nu alla noder upp där du är författare. (Likadant för andra användare, men de ser enbart innehåll där de är författare.) Vill du lägga till denna länk till din meny går du tillbaka till vyn, väljer "calendar page" och därefter ner till "Inställningar för sida"
Vill du ändra sökvägen till något annat, till exempel /kalender så klickar du på "calendar" och byter det till "kalender".
Klicka sedan på "Ingen meny" och välj "Vanliga inlägg i meny." Välj en titel och var du vill att din meny skall synas.
Nu är ditt menyval inlagt på den meny du har valt.
Glöm inte att spara vyerna!
För att sortera menyvalet går du in på "Uppbyggnad", och "Menyer". Välj den meny du lagt till ditt menyval på och dra ditt menyval till den plats där du vill ha den.
Vill du ha en publik kalender så kan du till exempel klona vyn "calendar" och göra ovanstående inställningar, men hoppa över att lägga till ett argument. Glöm inte att ange en annan adress och länk på menyn.
Eller
Så hoppar du över att klona vyn och hoppar över att lägga till ett argument. Istället lägger du till ett nytt filter. Väjer "Användare: Nuvarande".
Därefter klickar du på "Exponera" och därefter "Sant".
När du nu tittar på kalendersidan så kommer du att få välja om det är den inloggade användaren eller ej som du vill se kalenderinnehållet för.
Så! Har du följt de här anvisningarna har du fått till grunden för en kalender.
Men förmodligen vill du kanske lägga till ett datumfält till ett innehåll och då är det smidigast om du använder dig av modulen CCK. Därefter kan du i din kalendervy visa datumfältet istället för när noden skapades. Hör av dig om du behöver hjälp med detta.
Tack!
Tack så jättemycket! Din guide fungerade alldeles utmärkt. Hjälper förstås också på förståelsen för hur vyer fungerar. :) Dock undrar jag en sak om "exponera", valen jag får är "any", "ja" och "nej", skulle vilja ändra det till exempelvis "allas", "egna", "bara andras", så att det blir användarvänligt, men såg inte att man kunde ändra det någonstans. Sen vore det också bra om man kunde gå in på en specifik användares kalender, via dennes profilsida.
"Därefter kan du i din kalendervy visa datumfältet istället för när noden skapades. Hör av dig om du behöver hjälp med detta."
Jag verkar ha löst det problemet! Hör av mig om det inte löser sig.
Skulle också vara bra om man kunde klicka rakt i en ruta i kalendern och på så vis lägga till innehållstypen som jag valt att visa i kalendern.
Tack än en gång!
Drar i en gammal tråd!
Plockar fram den här tråden igen, Drupalutvecklingen hos oss låg nere ett tag fram tills nyligen och jag har således fortfarande inte löst det här problemet. Vad jag vill göra är att skapa en kalender för respektive användare som visas på dennes profilsida och som alla kan se. Stegen är väl att först göra nödvändiga inställningar i views och sedan på något sätt klistra in detta på profilsidan (kanske rentav i en flik om inte sånt är krångligt?)
Det ska även finnas en separat kalender med mer allmänna händelser som rör alla. Funderade på om man skulle göra en specifik användare för detta men det är bättre om de med tillräcklig behörighet kan lägga till händelser i denna kalender från sina egna konton...
Några takers på dessa två problem? Tack i så fall!