ManagerCheatSheet-ArtsSciences

OnlineHowTos:

CascadeManagersmaillist:

TheConceptofGroups

Userscanbelongtoanynumberofgroups.Hereishowwe'vechosentoimplementgroups,alongwithsometerminologywe'veadoptedtodescribethem.

Anextremelybasicdescriptionofthe5standardrolesinCascade:

Contributor:Candonothingwithoutaworkflowappliedtoafolderorassetthattheyhaveaccesstoedit.Withworkflow,acontributorcaneditandsubmittotheworkflow.

Approver:Iftheyareassignedtoaworkflow,anapprovercanapproveorrejectanassetthatissubmittedtotheworkflow.

Publisher:Candowhatacontributororapprovercando.Inaddition,apublishercanpublishassets.

Manager:Candowhatacontributor,approverorpublishercando.InadditionamanagercanbeanAdministratorofassignedsitesinCascade-toincludeuseradministration,managingworkflows,managingpagetypes,andmanagingassetfactories.

Administrator:Asuperuser-anadministratorofallsitesintheCascadeinstance.

Youcanviewthedetailedabilitiesofeachofthe5standardroleshere:

"Access"Group

AccessGroupsareusedtocontrolreadorwriteaccesstocertainfolders.FortheA&Ssiteeveryuserbelongstothegroupas__allusers.Thisgrouphasbeengivenreadaccesstothefolderww.wm.eduandallthefolder'schildren.Thisbasicallyallowseveryusertobrowseto,andlinkto,anypageorfileintheW&Msite. Inadditiontothisgeneralaccessgroup,eachuserbelongstooneormoreadditionalaccessgroupsthatgranthim/herwriteaccesstocertainfolders.Forexample,youmaycreateagroupcalled “as_history” andatthefolder

**********************************************************************

WARNING:Settingaccesspermissionsonafolderand “ApplyingtoChildren” is “destructive” meaningthatexactlythesepermissionswillgetsettoallchildren.Ifachildfolderhasdifferent,morespecificpermissionsthosewillbeoverwritten,notmerged!Forexample,ifyoualreadyhaveanas_historyprogramsgroupsetupwithwriteaccesstofolder/ “ApplytoChildren” the as_historyprogramsaccessrightsareoverwrittenandlost.

**********************************************************************

“Role-Defining” Group

Wealsousegroupstodefinetheroleofauser.Inourimplementation,eachCascadeusermusthaveatleastoneaccessgroupandexactlyonerole-defininggroup.ThereisagroupforeachrolelevelthatexistsinthisversionofCascade(besidesadministrator):as__contributors,as__approvers,as__publishers,as__managers.

GroupNamingConvention

Notethataccessgroupsbeginwith “as” followedbyasingleunderscoreandrole-defininggroupsbeginwith “as” followedbyadoubleunderscore.Thishelpsdifferentiatethetwotypes.Thedoubleunderscoreallowsrole-defininggroupstoappeartogetherandatthetopofanylistordropdownselectbox.

Theonlyexceptiontothisnamingruleisthe “allusers” group.Eventhoughitisan “access” groupitwascreatedwithadoubleunderscorebecauseallusersmustbelongtothisgroupandthedoubleunderscoremakesiteasiertofindwhencreatingnewusers.

WhyUseRole-DefiningGroups?

Weuserole-defininggroupsinsteadofsimplyassigningaroletoanaccessgrouporindividualuserforthereasonthathavingagroupallowsamanagertoquicklyfindalltheirpublishersoralltheirapprovers.Ifyouinsteadselecteduserswithaspecificrole,you'dgetalistofallyourusersaswellasalltheusersinotherschoolswiththatrole.Ifroleswereassignedinaccessgroups,itwouldbeextremelydifficulttodetermineyouruserswithaparticularrole.

CreatinganAccessGroup

  1. ClickonAdministrationinthebluebar
  2. SelectNewGroup
  3. Enterthefollowingdata:
    GroupName:Rememberthenamingconventionofprepending “as_” (singleunderscore).We'vealsotypicallyusedthenameofthefoldertowhichweareattemptingtograntwriteaccessaspartofthegroupname.We'vecombinedfoldernameswhenmorespecificsarerequiredforgranularpermissions.Forexampleas_historyprogramsoras_biologyprograms.
    StartingPage:Thisshouldbetheindexpageofthefolder.Forexampleifthisistheas_historyaccessgroupthestartingpageshouldbe aDefaultGroup,seesthatgroup'sStartingPage inhis/herDashboardwhenloggingintoCascade.(MoreaboutdefaultgroupinCreatingUserssectionbelow)
    BaseFolder:Thefoldertowhichyouareattemptingtograntwriteaccess(i.e.
    AssetFactoryContainer:selectAssetFactoriesArtsandSciences[Department]
    CSSClasses:Usuallyleavethisblank.YoucoulddefinecertainspecialclassesherethatwouldbeincludedintheWYSIWYGstyleoptionsforgroupmembers,butforthesetoworkyoualsoneedtodefinetheclassinyoursite'scsspage(s)aswellascoordinatewiththeCMSAdministratorifyouwanttohavethecssvisuallyrepresentedintheWYSIWYGeditor.Wehopethatinversion6,wewillhaveseparateWYSIWYGstylesheetspersite,howeverrightnow,the “what-you-see” partoftheeditorisasinglesharedstylesheetandwehavetofindthehappymedium...(soeventhoughyoursite'slinksshouldlookblueforexample,fornowtheyaregreenwhileintheeditor,becausethemajorityofeditorshaveasitewithgreenlinks.)
    WYSIWYGToolbarOptions:Wetypicallysettherightmost4:ContentFormatting,TextFormatting,ImageInsertion,TableInsertion.
    Notethatauser'sdefaultgroupiswhatdeterminestheirWYSIWYGtoolbaroptions-notnecessarilytheaccessgroupofthefoldertheyareworkingin.Forexample,youcouldcreateagroup “user-with-html-button” whichhastheHTMLoptionchecked,makethatthedefaultgroupforJohnSmithandeverywhereJohnSmithcaneditapage,hewillhavethehtmlbuttonavailable.
    Users:Asamanager,youmustincludeyourselfinthegroup.Otherwise,youwillnotbeabletomaintainthegroup(youcanonlyseegroupsthatyoubelongto).Ifyouaccidentallymissthisstep,ruserscanbeaddedtoyourgroupatthistime,oruserscanbeaddedindividuallyviatheedituserinterface.
    Roles:Sincethisisrequired,justselectContributor(thelowestpossiblerole).Rememberthatuserswillhavearole-defininggroupthatwillestablishtheirroleinCascade.

CreatingUsers

  1. ClickAdministrationinthebluetoolbar.
  2. ClickonUsers,Groups,Roles,thenonNewUser.
  3. EnterthewmUserIdintheUsernamefield,enteruser’sFullNameandanyEmail.KeepAuthenticationselectedatNormal.
  4. ForPasswordandConfirmPasswordfields,enteranymatchingpasswordyouwant.Uponsubmission,atriggerinthedatabasewillrenderwhateverpasswordyouenteruseless.Sincethesefieldsarerequired,however,youhavetoentersomethinginordertosuccessfullysubmit.
  5. MakesureEnabledcheckboxischecked(ifyouwantthisaccounttobeactive).
  6. ForGroups,two"doubleunderscoregroups"arerequiredforallusers:
  7. as__allusers.Theallusersgroupappliestoallusersofaschoolandenablesthemtohavereadaccesstoeverythinginthatsite.Notethatas__allusersisalsograntedreadaccesstoeverythingunder
  8. A “role-defining” group.ONEOFthefollowing:as_contributors,as_approvers,as_publishersoras_managers. “Role-defining” groupsareusedtodefineCascaderolesinsteadoftheactualrolefield(see#8).
    Inadditiontothe__allusersgroupanda"role-defininggroup,"assigntothisuseranynumberof"accessgroups"fromthegroupsfield.Accessgroupsarenamedafterfoldersinthesitesandcanallowforwriteandevenpublishpermissionsonsaidfolders.
  9. SelectaDefaultGroup.Thisshouldbetheuser’sprimary “accessgroup.” Auser’sdefaultgroupdefinestheStartingPage(seedashboard)andtheavailableContentWizards,orAssetFactories(alsoseedashboard).Ifusersareinmultiplegroups,however,selectingNewinthebluetoolbarwilldisplaymultipleassetfactories.
  10. MakesuretheRoleissettoContributor(thelowestpossible).Thisisbecauseauser’sroleisdefinedbyagroup(see#6).
  11. Submit.

**Yournewuserwillbeaddedtothe"cascaders"mailinglistviaanovernightscheduledjob.**

EnsuringUsersAreFunctional

Soyouhaveauserandtheuserbelongstothe"as__allusers"group,arole-defininggroup(forexample"as__publishers")andanaccessgrouplike"as_somedepartment."Thelastthingyouneedtodoistomakesurethattheaccessgroupisinfactassignedwritepermissiontotheapplicablefolder.Forexampleiftheuseristohavewriteaccesstotheentiredepartmentfolder,gotoandselectthe

TheGroupSectionAccesspermissionsshouldlooklike:

Unassigned:

(mostgroups)

Read:

as__allusers

wm__allusers

*note:onlyA&Sfoldersshouldhavebothwm__allusersandas__allusers

Write:

as__managers

wm__managers

as_mydepartment

*note:Youmayhavemultiple"access"groupsifyouhavemultiplegroupsofuserswhowilleditthingsinthisfolder.

UsetheArrowsprovidedtopushgroupsintotheReadandWriteboxesifnecessary.

SelectApplytoChildren(seewarningbelow)andsubmit.

****WARNING:"ApplytoChildren"isexact,meaningifyouhavedifferentlower-levelpermissions(onsubfolders)thepermissionswillbeoverwrittenwithexactlywhatyouapplyatthissiterootlevel.Accesspermissionsarenotmerged.Thismeansthatafteryoufinishapplyingtochildrenyouwillhavetodrilldownandredoanylower-levelpermissionsthatmayhavebeenpreviouslyset(somakeanoteofanylower-levelpermissionsfirst).

AssetFactories

AssetFactoriesarewhatyouusetocreateassets(specificpagetypesorwidgets).Thesecanbebegroupedin “containers” anditispossibletohavedifferentgroupsusedifferentassetfactorycontainers.Toadjustwhocanseeanassetfactoryoracontainerselect “Administration” inthebluebar,selectAssetFactories,thenselecttheparticularcontainerorfactory.Clicktheedittabinthemainwindowthenadjustthe “applicablegroups” accordingly.

*Notethatevenifyoueditthe “applicablegroup” ofacontainer,youstillneedtoedittheapplicablegroupofeachassetfactory(andanysub-containers)withinit.

OverviewofCascadeStructure

Thefollowingisahigh-leveloverviewofhowCascadestructurespagesandcontent.TheHannonHillknowledgebaseisagoodresourceforthisinformationasthisoverviewisnotspecifictoourimplementations.

(

Templates

FromtheHannonHillknowledgebase:

ATemplateisafundamentalsystementitythatdefinestheHTML/XMLstructureofpageassetintheCMS.TemplatesareessentiallyXHTMLdocumentsthatcontainstandardHTMLtagsandCSSthatcreatewhatiscommonlyreferredtoasthe"lookandfeel"ofawebpage.

TheLawSchooltemplatesareallstoredunderthe “root-level” /law_templatesfolder(notunderlaw.wm.edu).

**********************************************************************

WARNING:ItishighlyrecommendedthatyoudonotedittemplatesintheproductioninstanceofCascade.Datacanbepermanentlylost!Instead,weaskthatyouusethetestinstanceat

***********************************************************************

Region

InadditiontoHTML,TemplatesconsistofRegions(denotedbytagslike<system-regionname="SOMENAME"/>).EachRegioncanhavea “block” anda “format” associatedwithit.

BlocksandFormats

Blocksarebasicallychunksofdata.InCascadeblockscanbexhtml(text)orxml. Themostoftenusedblockinourimplementationisthe “index” block-whichwhenpointedatafolderpullsinallthemetadataaboutthefolder,allthemetadataabouteachassetinthefolderandalltheinformationineachasset(fields,content,metadata).Itwilltraversethefolderhoweverdeepyouneedittogoandallthis informationiscompiledinalarge,well-formedblockofxml.

Ingeneralblocksthatarenotmeanttochangearestoredunderthelaw_blocksfolder.Ifthereisaneedforblockstobemaintainedbynon-managerstheyarestoredinlaw.wm.edu/_blocksorlaw.wm.edu/path-to-section/_blocks

Formats(akaxmlstylesheets)arepiecesofxmlcodethat “adjusts” thedatainablock-thisadjustmentmightincludefiltering,sorting,orrepurposingthexmltohtmlreadyfordisplay.Asofversion5.7CascadeServeralsosupportsusingVelocity(anotherlanguage)informats,howeverwedidnotusethisinthelaw.wm.eduimplementation(noranyotherimplementationtodate).

BlocksandformatsarewhyCascadeseemsabitsluggishtousersattimes,becauseeachtimeyouclickona “page” alltheblocksintheregionsarebeingpulledandcompiledandanyformatsarebeingrunagainsteachblock.Ifyourblockisnotefficient(small),thiscangetprettynasty.Thegoodnewsisthatonthewebserver,thepublishedpageissimplytheendresultofallthatxmlcombiningandformatting-Thereisnodynamicworkhappeningtobuildthepageonthepublishedsite.

ConfigurationSet

FromtheHannonHillknowledgebase:

Aconfigurationsetisacollectionofoneormoreconfigurationsthatcanbeusedtohelpcreateoneormorepages.Inordertobeusedtocreateapage,aconfigurationmustbeapartofaconfigurationset.Configurationsetsthatincludemultipleconfigurationsaretypicallyusedwhenmultipleoutputsarerequired,suchasHTML,XML,orprinterfriendly.Tomakelargenumbersofconfigurationsmanageable,CascadeusesConfigurationSetstogroupanumberofconfigurations,alongwiththeirrespectivetargets,templates,andblockandformatassignments.

Inourimplementations,configurationsetsareusedtoslightlyalteraTemplatetoproduceadifferentpagetype.ATemplatecanhavemultipleconfigurationsets.Forexamplethe “NewsStory” templatehasthefollowingconfigurationsets:

  • BorrowedStory
  • BlogPost
  • BorrowedEvent
  • NewsStory
  • Event
  • Announcement

(youcancheckthisbyclickingonaTemplatethenclickingthe “Subscribers” tabinthemainwindow.)BlocksandFormatsassignedtoregionsattheconfigurationsetleveltrumptheblocksandregionsdefinedattheTemplatelevel.

DataDefinition

EachCascadeassethassomeformfieldsthatarepopulatedbytheuserwhoiscreatingoreditingtheasset(forexampletitles,checkboxes,ortheWYSIWYGeditorcontent).Thefieldsthatarepresentedtotheuserarecustomizablethroughadatadefinition.Thereareacertainnumberoffieldsthatarepre-definedandarepartofeveryassetcalled “wired” fieldsandthereistheabilitytoextendthesefieldswithsomeofyourowncalled “dynamic” fields.FieldtypesarediscussedinmoredetailintheHannonHillknowledgebase.

MetadataSet

FromtheHannonHillknowledgebase:

AMetadataSetisasystemcomponentthatprovidestheinterfaceforcustomizingthekindsofmetadatafieldsthatcanbevisibleand/orassociatedwithanasset.Sincemetadatafieldscanbebrokenintotwocategories,wiredanddynamic,metadatasetsallowadministratorstochoosewhichwiredfieldscanbemadevisibletoendusersandwhichoneswillbeturnedoff.Likewise,theinterfaceallowsfordynamicfieldstobecreatedthathelptofurtherdescribeanassetbeyondthescopeofwhatregularwiredfieldsallow.
Metadatasetsalsoallowforadministratorstocustomizethewiredanddynamicmetadatafieldssothattheyappear"inline"intheeditinginterfaceforanassetinsteadofappearinginthemetadatapane,makingthefieldsmoreaccessibletoendusers.Additionally,fieldscanbesetto'required'sothatendusersmustenteracceptablevaluesformetadatabeforesavingtheasset.

ContentTypes

FromtheHannonHillknowledgebase:

TheadditionofContentTypeswiththereleaseofCascade5.5providesuserswithawayofformallyaggregatingConfigurationSets,MetadataSets,andDataDefinitionsintoasingleAdministrativecomponentthatcanbeappliedtopages.ContentTypesprovideanintuitiveandlogicalwayforend-userstoidentifythepropertypetoassociatewithapagebygroupingtogetherthenecessaryconfigurationsforpredefinedpagetypeswithfamiliarnames,suchasBlogPosts,PressReleases,Announcements,etc.MuchinthewayCascadeServerutilizesAssetFactoriestocreatepredefinedrecognizableassetssuchaspages,templates,etc.,ContentTypesaregivensimplenamesthatclearlyidentifytheirpurposetoendusers.TheadditionofContentTypessimplifiesthepageeditinterfacebyconsolidatingpreviousoptionsintooneContentTypechooser.ThisprovidesasinglepointofcontrolforAdministratorstomodifyapage'sConfigurationSet,MetadataSet,and/orDataDefinitionforselectedpageswithoutrequiringaBulkChangeoperation.

ContenttypescanonlybechangedbyManagersandAdministrators.

**********************************************************************

WARNING:Therearetimeswhenyoumayneedtochangethecontent-typeofanasset.ForexamplemaybesomeonecreatedaNewsStorywhentheymeanttocreateaFeatureandtheydon'twanttohavetocreateanewassetandcutandpastethetitle,summary, WYSIWYGpagecontent,etc.Youmaychosetosimplychangethecontent-typeoftheoriginalpageinstead.However,whenchangingacontent-typethevaluesofdynamicmetadatafieldsarelostThisreferstovaluesinfieldslike “Topstory,” “Showthirdcolumn,” “Showparentabovemenu,” and “Showsiblingsonmenu.” Besuretomakeanoteofthesevaluessoyoucanresetthemafterchangingthecontenttype.

**********************************************************************

AddingContenttothe “Extra” Regions

Inmanyofthepagetemplateswe'veaddedextraregionswhereyoumightwanttoincludeadditionalcontent.AllA&Spageshaveadepartmentdropdownmenuaddedtoaregionunderthelefthandmenuthatistypicallyunusedinohtepagetypes.ThisismadepossiblebythecustomA&S “basepages” thatallA&SassetfactoriesuseinsteadoftheW&Mbasepages.Thereisalsoan “extra” regionunderthemainbodycontentthatisonlybeingusedbylistingpages. Toaddcontenttoeitheroftheseregionsallyouneedisablockandaformattoassigntothem.

Ingeneralblocksthatarenotmeanttochangearestoredunderthewm_blocksfolder.Ifthereisaneedforblockstobemaintainedbynon-managerstheyarestoredin

Publishing

Publishingishandledbywayofatransport,targetanddestinationthatarealreadydefinedfortransportisafilesystemcopytoannfs-mountedwebserverdirectory(thedirectorybeingthedestination).The “applicablegroups” forthetarget(thedefiningcomponentofthedestinationwithothermetadata)arewm_managersandwm_publishers.

Theentire SAT/SUN/TUES/THURS at 2:00am. Todothisapublishsetisused.Apublishsetcanbecreatedtopublishanygroupoffoldersorfiles.Thesetcanbepublishedviaascheduleorsomeothereventtriggerlikeaworkflow.

Cleaning “Orphan” Files

OccasionallytherewillbefilesthatareonthewebserverbutarenotmanageddirectlyinCascade.Thiscanhappenwhenausermovesafilewithoutunpublishingitfromtheoldlocation.Thiscanalsohappenwhenauserdeletesafilebutdoesnotunpublishit.TheproblemisthatsinceCascadeServernolongerhasahandleonthefile,wecannolongerdeleteitthoughtheCascadeinterface.Werefertothesefilesas “orphans.”

Ifthereissensitiveinformationthatneedstoberemovedrightway,iththepathtothefile(s)andwewillaskthesystemadmintodoacommandlinedelete.

CustomBanners

StandardPageBanners

Therandombannersinyourwebsiteworkwithasmallbitofphpcodethatiswritteninthe “BANNER” region'sformatofallpages.Thecodeselectsarandomimagefromadefinedfolder.

Sincethe

Createanewfolderofimagesunder/standardW&Mbannerimagesare940px×203px.Notethatnotallusershavewriteaccesstothebannerphotosdirectory.

Browsetoandedityoursection'smainfolder,clickontheMetadatasub-tabandinthe “BannerPhotosBank” fieldtypetheexactnameofthefolderofimagesthatyoujustcreatedunder /

Publishboththenewfolderofbannerimagesandtheentiresectionwheretheywillbeapplied.NotethatyoudonotneedtosettheBannerPhotosBankfieldvalueineverysubfolderofyoursection.Eachpageinyoursitetraversesupthetreeoffoldersuntilitfindsadefinedfolder(typicallyyoursection'smainfolder)orifitmakesitallthewayuptotheroot

AdvancedBanners-PrimaryPages

Youmaynoticethatsomepagesinyoursiteweresetupwithataller(940px×262px)bannerimage,wherethethirdcolumnactuallyjutsupintotheimagealittle.Theseareadifferentpagetypecalledaprimarypage.

Tocreateacontentpagewithaprimary-sizedbannerselectNewArtsandSciences-ASFolderwithPrimaryPage.Ifyouinsteadcreateafolderwithcontentpageandlaterwanttochangethepagetoaprimaryone,you'llneedtofollowtheinstructionsaboveforchangingacontent-type...inthiscasefrom“Standard” to “Primary”.

Inadditiontohavingtheproperpagecontent-type,primarypagesneedtheirownfolderofbannerimages.Anysectionthatmighthaveaprimarypagerequiresasecondfolderofbannerimages.Thenameofthefoldermustbethesameasthesection'sstandardbannerimagefolderwiththewordprimaryappendedtoit.

Forexample,Let'ssayyouwantcustombannersforyourgivingsectionandthegivingsectionwillhavepageswithbothstandard-sizedbannersandprimary-sizedbanners.You'dcreatetwofoldersforthebannerimages:

/

/

… loadingtheshorter940px×203pximagesintheformerandthetaller940px×262pxprimarypagebannerimagesinthelatter.

Youdonothavetodoanythingdifferentlyasfarasassigningthe “BannerPhotosBank” valueinthesection'smainfoldermetadata.Primarypagesaresmartenoughto “know” tousethenameyouenterbutappend “primary” toit.

Banner “Overlays”

IntheA&Ssitethetransparentpngs “WilliamMary,” “ArtsSciences” andtheW&Mcypheroverlayallbannerimages. Ifyouwanttoreplace “ArtsSciences”foraparticularsectionyoucandothefollowing:

  • Ifyouhaveanewimageuploadthetransparentpnginthefolder/
  • Edityoursection'smainfolder.
  • OntheMetadatasub-tabcheck “UseDepartmentInfobelow?” andintheDepartmentfieldenterthereplacementpngfilenameonly.
  • Publishyourentiresection.

IfyouhavetheneedtoreplaceArtsScienceswith2stackedimages – an “umbrella” departmentwithadepartmentunderitasisdemonstratedhere: – followthesesteps:

  • Upload2transparentpngstothefolder/
  • Edityoursection'smainfolder
  • OntheMetadatasub-tabcheck “UseDepartmentInfobelow?” ForDepartmententerthedepartment'spngfilenameonly.ForUmbrellaDepartmententertheumbrelladepartment'spngfilenameonly.ForUmbrellaLinkfieldtypethepathoftheumbrelladepartmentfolderminus “
  • Publishyourentiresection

TestInstance

Wehaveasecondinstanceat

1