Kompetanse for gode nettløsinger CorePublish 7.2 En oversikt over de viktigste nyhetene April 2013 CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Innledning Forandring i bildestørrelser på mobil CorePublish 7.1 og tidligere erstattet alltid bilder i artikler på mobil med bilder som var så nær mobilens skjermstørrelse som mulig. Dette gjaldt også selv om bildene i utgangspunktet var mindre enn mobilskjermen, noe som førte til at små bilder ble skalert opp til større (ofte fullbredde) varianter på mobil. Dette er forandret og bilder som er mindre enn telefonens skjermbredde blir nå ikke byttet ut. Støtte for PHP 5.2 er avsluttet CorePublish 7.1 var siste versjonen som støttet versjon 5.2 av PHP, som er programmeringsspråket CorePublish benytter. CorePublish 7.2 vil bare støtte PHP 5.3 og 5.4 Internet Explorer 8 er nå en B-støttet nettleser Nå som både Internet Explorer (IE) 9 og 10 er på markedet, vil vi gradvis fase ut støtte for eldre versjoner av IE. I CorePublish 7.2 er IE 8 nå bare B-støttet. Dette vil si at den fungerer, men visuelle avvik i grensesnittet kan forekomme. Støtte for Internet Explorer 10 I CorePublish 7.2 er det lagt inn støtte for at Internet Explorer 10 fungerer skikkelig med CorePublish. CorePublish 7.2 er siste versjon som vil støtte Internet Explorer 7 Internet Explorer 7 er en veldig gammel nettleser som blir mindre og mindre brukt. Fra og med neste versjon (CorePublish 7.3) vil støtten for Internet Explorer 7 opphøre. Tilpasning av statisikkrapporter Mange av våre kunder har høy trafikk og dermed store mengder statistikkdata. Man kan nå velge å utelate generering av rapporter som man uansett ikke benytter for å øke ytelse og hastighet i statistikkmodulen. Video i HTML5-format CorePublish sin videomodul har tidligere, i likhet med mange andre videoløsninger, konvertert videoer til Flashvideo og benyttet Flash-plugin i nettleseren for å vise videoer. Flash-video (FLV) var tidligere ansett som den beste måten å vise video på. Tidene forandrer seg, og med HTML 5 så kom muligheten til å spille av video direkte i nettlesere som støttet HTML5 uten å benytte proprietære plugins. Samtidig så har utbredelsen og markedsandelen til Flash falt drastisk da nesten ingen mobile enheter støtter Flash. Fra og med CorePublish 7.2 så blir derfor videoer nå konvertert til MP4 og OGV ved opplastning. Dette er de 2 formatene som benyttes i HTML 5 sin videovisning. Ved visning av video så blir det også brukt HTML 5 video i stedet for Flash. For de nettleserne som fremdeles bare støtter Flash og ikke HTML5, så vil dette også fremdeles fungere og de vil få en Flash-video. Modulen støtter å konvertere de fleste vanlige videoformater. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 2 av 16 Forskjellige varianter for MP4 og OGV blir generert for hver videofil Varnish integrasjon for økt ytelse CorePublish støtter nå integrasjon med Varnish. Varnish er en norskutviklet web-accelerator/proxyserver som har som mål å øke ytelsen på nettløsninger. Med en Varnish-server installert foran den vanlige nettløsningen kan man i de fleste tilfeller håndtere langt flere sideforespørsler og dermed takle vesentlig høyere trafikk. Varnish er blant annet i bruk av VG Nett, norges mest trafikkerte nettsted. Dette gjør at kunder med svært høy trafikk nå kan velge å bruke Varnish i stedet for CorePublish sin innebygde cacheløsning for enda bedre ytelse. Å ta i bruk Varnish krever egen server og det kan kreve forandringer i frontend-koden for det aktuelle nettstedet. Adminside for kunder og test for databasetilkobling CorePublish Admin, hvor utviklerne setter opp og konfigurerer CorePublish-kunder. Denne siden har fått en rekke småforbedringer, inkludert en ny funksjon for å teste databasetilkoblingsinformasjon. Den nye testen tillater deg å teste før du lagrer f.eks et nytt passord, for å være sikker på oppgitt info er riktig. Dette kan være svært nyttig i et produksjonsmiljø hvor du ikke ønsker feil og nedetid. Testeren prøver også readhostdatabasen hvis den er spesifisert. Forbedret styring av koblede artikler for mobil (kanal-ekvivalenter) Sidepanelet i artikkel-editoren som styrer tilsvarende artikler for mobil (eller andre kanaler) har blitt forbedret i CorePublish 7.2 (finnes også i nyere 7.1-varianter) og er nå mye mer intuitivt å bruke. Panelet er inspirert av status-panelet som ligger rett overfør, og har samme enkle grensesnitt. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 3 av 16 Styring av en artikkel som har en koblet mobil variant i panelet nede til høyre Nye funksjoner i skjemamodulen Skjemamodulen i CorePublish har fått en rekke nye nyttige funksjoner for å kunne administrere skjemaer enda bedre enn tidligere. Tilgangskontroll på arbeidsflyt-faser og enkeltskjemaer I skjemamodulen kan man nå styre tilgang mye mer finkornet en tidligere. Innsendte skjemaer kan sendes igjennom en arbeidsflyt som inneholder ulike faser. På den måten kan man behandle, sortere og ha kontroll på tilstanden til hvert enkelt innsendt skjema. Den nye funksjonaliteten gjør det mulig å spesifisere hvem som skal ha tilgang til innsendte skjemaer i de ulike fasene. Kanskje er det forskjellige brukere som skal behandle skjemaene i ulike faser, eller brukere som bare for lov å se skjemaer som er i en gitt fase. Tilgangsstyring for en fase i en arbeidsflyt For ekstra finkornet tilgangskontroll kan tilgangskontrollen også settes på enkeltskjemaer, slik at man ned på hvert enkelt skjema har kontroll med hvilke brukere som får se de ulike skjemaene. Dette brukes primært på avanserte skjemaer hvor det også er skreddersydd funksjonalitet i frontend. Et eksempel på dette er at skjemaet skal tildeles ulike brukere/grupper basert på en verdi i skjemaet - f.eks. at skjemaet skal sendes til ulike forbund, avdelinger etc basert på hva man har valgt. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 4 av 16 Tilgangsstyring av et enkelt innsendt skjema Forbedret redigering og administrasjon av innsendte skjemaer Når et skjema er sendt inn, er det viktig at administrasjonen av disse er enkelt. I noen tilfeller er det ønskelig å kunne forandre på verdiene brukerne har skrevet inn (f.eks. for å rette en stavefeil på en søknad før den sendes videre). Funksjonaliteten hvor man redigerer disse verdiene har blitt sterkt forbedret i CorePublish 7.2, og det samme har siden som viser egenskapene til skjemaet, og hvor man kan flytte skjemaet mellom de ulike fasene. Redigering og administrasjon av innsendte skjemaer Nye felter på skjema-elementer Det er nå kommet flere felter på skjema-elementene. Dette er CSS-klasse: gir større mulighet for at brukeren selv kan styre utseendet på elementet Synlighet: Du kan nå sette enkelte elementer til kun å vises for skjemabehandleren og skjules for brukeren. Hjelpetekst: Vises når brukeren holder musen over elementet. Kan også tilpasses til å vises i sammenheng med elementet for å hjelpe brukeren til å fylle ut riktig. Placeholder: En ny HTML 5 egenskap som gjør at man enkelt kan sette inn ”bakgrunnstekst” i tekstbokser, f.eks ”Skriv inn adresse her”. Dette hjelper brukeren å fylle ut skjemaet riktig. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 5 av 16 Redigering av skjema-element, med nye felter for CSS-klassenavn, hjelpetekst og synlighet. I tillegg kan man også selv velge hvilke av disse feltene som skal være synlige ved redigering av skjemaelementet, alt etter hvilken funksjonalitet man bruker. Egendefinerte felter på skjema-elementer Av og til er det behov for å kunne sette ekstra informasjon på et skjema-element. Slike behov oppstår ofte på mer avanserte skjemaer som f.eks. er i bruk i integrasjoner. Et eksempel er checkbokser som sier om elementet skal være inkludert i eksportjobber. Disse egendefinerte feltene, eller parametrene, grupperes sammen i parametergrupper. På hver mal kan man velge hvilken parametergruppe man ønsker å benytte. Dette vil si at ulike skjema-maler kan benytte ulike parametergrupper, og dermed få ulike felter når man redigerer skjema-elementer for de ulike malene. På hvert parameter kan du også si hvilke element-typer parameteret gjelder for. Definisjon av en parametergruppe og tilhørende parametre CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 6 av 16 De definerte parametrene dukker opp som ekstrafelter når man redigerer et skjema-element Navngiving og redigering av skjemaelement-grupper Det er nå også mulig å navngi gruppene i et skjema. Dette brukes primært ved skreddersøm av skjema, f.eks. hvis man ønsker å vise gruppenavnet som seksjonsoverskrift for elementene i gruppen. Navngiving av skjemaelement-grupper Forbedret lagring av historiske data Ved lagring av skjemaer blir nå også skjemaelement-navnet lagret i datatabellen. Dette gjør at selv om en skjemamal blir forandret, f.eks. et skjemaelement blir slettet, så klarer man bedre å få ut gode historiske data på allerede innsendte skjemaer. Navngiving av brikkeinstanser Når man setter inn flere brikker av samme type i en brikkeholder, kan det av og til være vanskelig å holde oversikten siden alle brikkene får samme navn. I CorePublish 7.2 er dette løst ved at man kan sette et eget navn på hver brikke man setter inn. Dette gjør at det blir lettere å holde oversikt over og administrere visningsmalene. En brikkeholder med 3 like brikker som har fått ulikt instansnavn for å enkelt kunne skille dem Forbedret søk i multimediaarkivet Når man søker etter filer i Multimediaarkivet er det viktig å treffe på flest mulig av filens egenskaper og innhold. Vi har derfor utvidet søket til å også omfatte filens metadata for å få enda bedre søk. For bilder så blir nå også EXIF-data (metadata som GPS-posisjon, tags, rotasjon, forfatterinfo etc som blir lagret av digitalkameraet) lest ut av bildet og gjort søkbart. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 7 av 16 Automatisk bilderotering ved opplasting Mange av bildene vi bruker i dagens webløsninger har sitt opphav fra digitalkameraer eller mobiltelefoner. Mange av disse bildene blir tatt i ”stående format”og må roteres 90 grader manuelt når de skal brukes på web. Mange kameraer lagrer informasjon om rotasjon i bildets EXIF-data (metadata), og CorePublish 7.2 leser ut denne informasjonen og roterer automatisk bilder som er tatt ”stående”. Dette sparer brukeren fra å måtte gjøre dette steget manuelt. Påkrevd ALT-tekst ved innsetting av bilder Når brukere i CorePublish setter inn bilder, vil man av og til kreve at det blir fylt ut en ALT-tekst for bildet. ALTtekst på bilder er bl.a. påkrevd gjennom de norske DIFI-kravene. I CorePublish 7.2 kan man nå sette at det er påkrevd å fylle ut ALT-tekst ved innsetting av bilder. Dette sikrer at alle bilder blir satt inn med en gyldig ALT-tekst og dermed er i henhold til f.eks. DIFI-kravene. Merk at med denne opsjonen satt på blir brukeren alltid tatt innom egenskaps-dialogen for bildet ved innsetting, noe som ikke skjer ved opsjonen skrudd av (da blir bildet satt direkte inn). Ved innsetting av bilder må forfatteren fylle ut en gyldig ALT-tekst Single Sign On og NTLM ”Single Sign On” betyr at når brukeren har logget seg inn på PC’en en gang, så er han også automatisk logget på alle andre applikasjoner. Når du har logget på PC’en, er du også logget inn på nettsidene. Dette kan benyttes både for innlogging på nettsidene (intranett) og innlogging til CorePublish . Dette letter pålogging og senker brukerterskelen fordi man slipper ”enda en påloggingsboks”. Fra og med CorePublish 7.2 er dette mulig for bedrifter som kjører Active Directory og Windows-pålogging, og som kjører CorePublish på egen Linux-server i samme nettverk. Forbedringer i statistikk-modulen For kunder med store statistikk-mengder så har statistikk-modulen nå blitt optimalisert for høyere ytelse, og man kan nå også velge å skru av tidkrevende prosessering av visse statistikkdata hvis man ikke benytter disse. Statistikkmodulen har nå også fått faner som viser de mest leste artiklene og kategoriene: CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 8 av 16 Utlisting av de mest leste artiklene og kategoriene I tillegg så vises også antall treff pr artikkel i de vanlige artikkel-listene i CorePublish, slik at det er lett å få en oversikt over hvor ofte de ulike artiklene har blitt lest: Lettere å gå til redigering av multimediafiler Tidligere har det vært en omstendelig vei for å gå til redigering av en fil du har tatt i bruk i f.eks. en artikkel, da det ikke har vært noen måte å gå direkte til redigering av den filen man har tatt i bruk. Nå har vi innført en direkte knapp for redigering som gjør det mye lettere å gå direkte til redigering av den filen du har valgt. Forbedringer ved innsetting av bilder Vi har gjort en del grep for å gjøre det enklere for brukerene å sette inn bilder fra multimediaarkivet. Disse er: Forhåndsvalgt mappe å hente bilder fra Forhåndsvalgte varianter ved innsetting av bilder Gå direkte til fil-opplasting ved åpning av dialogvinduet for bilder Alle disse innstilingene settes individuelt pr innholdsmal, og kan settes både på artikkelens thumbnail og de ulike bilde-elementene på artikkelen: Forhåndsvalgt mappe å hente bilder fra Ved innsetting av bilder kan det av og til være ønskelig at brukeren skal få velge bilder fra en forhåndsvalgt mappe. Hvis bildene er organisert sånn at man på en gitt mal alltid henter bilder fra en mappe i multimediaarkivet, kan det være greit å definere en forhåndsvalgt mappe. Dermed slipper brukeren ekstra klikk for å navigere seg til riktig mappe, og kan velge bilder fra riktig mappe med en gang. Forhåndsvalgte varianter ved innsetting av bilder Ved innsetting av bilder er det av og til sånn at man ønsker å tvinge brukeren til å velge en spesielle bildevariant (størrelse). Dette kan være fordi visningsmalen på nettstedet ditt krever et gitt bildeformat for å se fint ut, eller bare fordi du ønsker at alle skal benytte samme bildestørrelse for å være konsekvent. I CorePublish 7.2 er det nå mulig å forhåndsdefinere hvilken bildevariant som skal settes inn når brukeren velger bilde. Det vil si at brukeren får ikke lenger velge bildevariant, den konfigurerte varianten blir alltid satt inn. Gå direkte til fil-opplasting ved åpning av dialogvinduet for bilder På enkelte artikkeltyper kan det være sånn at brukeren omtrent alltid skal laste opp nye bilder, og sjeldent plukke eksisterende bilder fra multimediaarkivet. Man har nå mulighet til å definere at brukeren alltid skal komme rett til skjermbilde for fil-opplasting i stedet for å få se eksisterende bilder. Dette forenkler arbeidsflyten og sparer brukeren for klikk. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 9 av 16 Forbedret søkemotoroptimalisering mellom vanlige nettsider og mobilsider I CorePublish 7.2 har vi forbedret søkemotoroptimaliseringen slik at Google og andre søkemotorer får enda tydeligere beskjed om hvordan de vanlige nettsidene og mobilnettsidene henger sammen. Dette sikrer at selv om man har to forskjellige nettsteder (web og mobil) så forstår Google sammenhengen og slår disse sammen i sine søkeindekser. Forbedret grensesnitt i brukermodulen I CorePublish 7.2 er grensesnittet for å administrere og liste brukere og grupper forbedret. Søkefelt og relaterte felter blir nå automatisk skjult hvis det er få brukere (slik at man aldri trenger å søke). Når søkefeltet vises, er layouten nå mye mer kompakt slik at en større andel av skjermen er tilgjengelig til å vise brukere og grupper. Ytelse og hastighet er også forbedret for kunder som har svært mange brukere og grupper. Nytt og mer kompakt grensesnitt for behandling av brukere i en gruppe Innkapsling av små bilder for høyere ytelse på mobil Når man surfer på internett over mobilt nettverk, er den såkalte ”latencyen” veldig høy, det vil si at det tar lang tid for å laste hver ressurs (f.eks. bilder). Det er dermed om å gjøre å redusere antall ressurser man laster, dvs hvor mange forespørsler man gjør mot webserveren. I CorePublish 7.2 så blir derfor små bilder ”innkapslet” direkte i nettsiden slik at man slipper en egen forespørsel for hvert bilde. Dette gjør at lastingen av sider går en del raskere fordi man unngår en del av forsinkelsene over mobilnettet. For de teknisk teknisk interesserte så encodes bildene til base64-data og legges direkte i IMG-tag’en sin srcattributt. Forbedringer i bildelaben I CorePublish 7.2 så er bildelab’en forbedret, blant annet ved at bildet nå initielt zoomes inn til å passe på skjermen ved oppstart. I tillegg er det laget en angre-funksjonalitet som gjør det lettere å angre operasjoner. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 10 av 16 Konfigurerbar oppstartsside for brukere Av og til er det ønskelig å sende brukere som logger inn i CorePublish direkte til en spesiell oppstartside. Kanskje den aktuelle brukeren alltid bare skal jobbe i skjemamodulen eller i statistikkmodulen. Fra CorePublish 7.2 er det mulig å sette hvilken modul brukeren skal bli sendt direkte til etter innlogging. For brukere som alltid skal jobbe i en gitt modul kan de dermed sendes direkte til denne etter innlogging, og slipper ekstra klikk og navigasjon for å finne fram til riktig startsted. Automatisk linking av kategorier og artikler ved kopiering Når man kopierer kategorier fra et vanlig nettsted og til et mobilnettsted, så vil CorePublish automatisk opprette koblinger mellom de nye og de gamle kategoriene. Dette gjør at CorePublish vet hvilken kategori som er den tilsvarende kategorien på web/mobil. Dette gjør at ekvivalent-redigeringen og krysspubliseringen av artikler mellom ulike kanaler fungerer uten at brukeren trenger å gjøre noe, og det gjør at besøkende på nettsidene automatisk blir sendt til riktig kategori på riktig kanal (mobil/web). Denne funksjonaliteten er spesielt nyttig ved oppretting av nye mobilnettsteder for eksisterende kunder, da man kan kopiere den eksisterende kategoristrukturen over til mobil, og den vil være koblet/referert riktig mot den vanlige nettsiden med en gang uten ekstra manuelt arbeid. Forslag til sletting av kanalekvivalente kategorier og artikler For å automatisere mest mulig av jobben det er ved å ha separate kategoristrukturer og nettsteder for de ulike kanalene, har vi prøvd å legge inn mest mulig automatikk rundt håndteringen av artikler og kategorier. Et av disse er at CorePublish automatisk foreslår å slette den tilsvarende kategorien/artikkelen for andre kanaler når du velger å slette noe. Det vil si at prøver du å slette en kategori fra mobil, så vil du automatisk bli spurt om du også vil slette den tilsvarende kategorien på det vanlige nettstedet. Automatisk oppdatering av WURFL-data WURFL er database vi bruker for å alltid ha en oppdatert database over de ulike mobilene enhetene og deres egenskaper. For å alltid ha oppdaterte data, er det nå laget en automatisk Task som går hver dag og sjekker for oppdaterte data mot WURFL sine systemer. Dersom det er kommer nye versjoner, vil denne automatisk bli lastet ned og oppdatert på det aktuelle systemet. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 11 av 16 For utviklere: “Inlining” av CSS @import tagger Når man utvikler nettsider og lager CSS, er det mange som ønsker å organisere CSS’en sin i ulike filer, enten for oversiktens skyld, eller fordi man bruker 3.parts CSS-filer ( a la reset.css). Dette er en ryddig måte å gjøre det på, men det fører også til svært mange små requests/forespørsler mot webserveren, noe som ikke er bra med tanke på ytelse på mobil. CSS i frontend (SiteComponents) blir allerede kjørt igjennom en PHP-service som slår sammen og komprimerer CSS, og denne servicen er nå utvidet slik at den detekterer @import statements og erstatter disse med innholdet av filen man kjører @import. Dette gjør at også dette innholdet blir komprimert og servet i samme respons sammen med resten av CSS’en, noe som fører til bedre ytelse. Støtte for å kjøre CorePublish på flere backend-servere På grunn av begrensinger i multimediaarkivet har det til å bare vært mulig å kjøre CorePublish på en enkelt backendserver i lastbalanserte løsninger. Frontend kan kjøres på flere webservere samtidig, men for selve CorePublish har det vært påkrevd å kjøre på en enkelt server. Disse begrensingene i multimediaarkivet er nå fikset, og det gjør at fra og med CorePublish 7.2 så kan man på store lastbalanserte løsninger kjøre CorePublish på flere backendservere samtidig. Det er dog et krav av multimediaarkivets filer ligger på et delt filområde/SAN. Denne endringen gjør også multimediaarkivet mer robust i forhold til sync-problemer ved backup og restore. Komplett endringsliste (changelog) Utover de endringene som er nevnt over, er det selvsagt gjort en rekke mindre endringer, samt en rekke feilrettinger og tekniske forbedringer. En komplett liste over disse finner du nedenfor: Changelog for CorePublish 7.2.0 User-visible changes in functionality - Added support for Firefox 20 (AS) API/Technical changes and important developer-visible changes - Improved SEO visibility and resolving of canonical and alternate urls when using multi channel publishing (AS) - Added Vary:user-agent header for frontend mode (AS) Bug fixes - FB6947: Possible to add duplicate servers to one site (JFV) - FB6225: Broken tab in URL Alias module (JFV) - FB6827: Not all ALT-text article editor fields are required (JFV) - FB7277: Refreshing variants for a single image setting refreshes all image settings (JFV) - FB7221: Selecting background image in design editor causes layout bug (JFV) - FB7241: PDF variants are redundantly re-generated (JFV) - FB7246: Replacing video file content does not update variants (JFV) - FB7268: Multiple image settings with equal widths cause exception (JFV) - FB7232: Statistics column is empty when displaying articles on front page list (AS) - FB7269: Cannot delete category and move articles if category has a main article (AS) - FB7275: CtChannelManager::getEquivalentArticleUrl() fails to provide correct url in certain cases (AS) - FB7238 usergroup is missing as alias in validFieldAliases i DirectoryUserList.php (AS) - FB7291 Tile instancename is not visible in the main tile edit GUI (AS) Changelog for CorePublish 7.2.0 Release Candidate 1 CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 12 av 16 User-visible changes in functionality - Cleaned up User administration GUI to a more compact layout (AS) API/Technical changes and important developer-visible changes - Implemented proper support for User Groups parameter type in CpParameter (AS) - Changed and improved ACL system for form entries (AS) - User::get() which was introduced in Cp 7.1 is renamed to User::getField() and made public instead of protected (AS/EG) - FB7201: Allow overriding viewport by disabling its output from printCommonHeadHtmlElements (AS/KSM) - Implemented FB7151 "Show articles" in article-template should be a tab (AS/EG) - New method Article::getElement() deprecates old method Article::getElementByProgammaticName (JFV) - Implemented FB6172 Needs get/set methods on User for rootCategoryIDs and rootMmFolderIDs (AS) - UserAdminManager class is now deprecated in favour of UserManager class (AS) Bug fixes - FB7225 DirectoryUserList.php points to invalid $LOG object (AS) - Re-fixed FB6735: UserGroup now supports paging when loading users, thus avoiding slow loading for usergroups with thousands of users in them. (AS) - FB7228: Nullpointer exception when setting fields state in article editor (AS) - FB7197: Calendar icons for activity date in article editor breaks layout(AS) - FB6822: CtFormViewCtWebForm creates invalid css classes (AS) - FB7203: DirectoryUserList: add new User fields as acceptec sync fields(AS) - FB7230: Category's user rights page renders slow when having large amounts of users or groups (AS) Changelog for CorePublish 7.2.0 beta 2 User-visible changes in functionality - FB7174: File count limit in file search wizard should apply regardless of list view (JFV) - FB7193: Submit button in server settings should always be clickable (JFV) - FB6735: User groups with many users now use paging and load only the first users. This improves performance for large usergroups. (EK) - FB7187: Copying a category now sends you to the source category, instead of to the front page. (EG/EK) - FB7185: Deleting a category now sends you to the parent category, instead of to the front page. (EG/EK) - Added A-support for Internet Explorer 10 (AS) API/Technical changes and important developer-visible changes - FB6997: Bug fix which resulted in multiple new methods in the MultimediaFile class (JFV) - FB7132 UserAdminManager::getUserInstance() always return User object (AS) - UserAdminManager::getUserInstance() is now deprecated in favour of getUser() (AS) - FB6819: CtDeviceUtil->getDeviceHtml() can now return only those article-elements which are in a specified group. (EG / EK) - FB7139: Form element name must be saved in the form entry database entry (AS) - FB7188: Multimedia archive should serve data for small images inline using base64 encoded data: url's (AS) - UserGroups now have methods for counting users in and outside the group. (EK) - UserGroup->getUsers() now supports paging with offset and limit. The same is true for UserGroup->getUsersNotInGroup() (EK) Bug fixes - FB7173: Images that already fit inside the mobile viewport still get replaced (JFV) - FB6997: When replacing a multimedia file with a smaller original, old variants can linger (JFV) - FB7171: Double scrollbars in CKEditor MM file selector (JFV) - FB7175: Image archive convert script throws exception when unlock tables are done on tables that aren't locked (AS) - FB7189: doArticleSetup() might send user into redirect loop. (EK) CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 13 av 16 - FB7190: Nullpointer exception in ScArticleDisplayTile when an article has no author. (EK) - FB7191: ActivityList missing $arg to listtemplate (EG) - FB7194: UserGrouplist was missing constructor, and this was called from subclasses. (EK) Changelog for CorePublish 7.2.0 beta 1 User-visible changes in functionality - FB6983: Have the image lab initially zoom out image to fit viewport (JFV) - FB6806: New tile parameter for selecting user groups added (JFV) - FB6846: Channel equivalence panel in article editor redesigned (JFV) - FB5895: All hostnames and URLs in the server editor are now evaluated server-side before any changes are allowed to be saved (JFV) - CorePublish Admin login page improved (JFV) - CorePublish Admin customer "Info" page improved (JFV) - CorePublish Admin customer "Technical" page improved (JFV) - FB6067: Customizable report options added to the statistics module (JFV) - FB5469: Searching in the multimedia-archive now also searches in meta-data (EK) - The taskrunner now runs at a lower priority by default, cpu-intensive taskrunner-jobs should now impact interactive performance less. (EK) - FB5861: Videos in the multimediarchive are now shown as html5 video, with flash as fallback. This makes video available on platforms that lack flash. (EK) - Added support for Firefox 18 (AS) - FB6583: Select startup page/module for users and usergroups (AS) - FB6589: Option to set frontend visibility for form elements (AS) - The taskrunner now runs at a lower priority by default, cpu-intensive taskrunner-jobs should now impact interactive performance less (EK) - Added support for Firefox 18 (AS) - FB6974: When deleting linked categories and articles, user must be prompted to delete the linked object as well (AS) - FB6836: When copying category tree, the new copy must be entity-linked to the old entity if target channel is different (AS) - FB7061: Improvements in image upload in article editor (AS) - FB7062: Possible to define which folder the multimedia archive selector should start in (AS) - FB7063: Possible to predefine which image variant to insert when selecting images (AS) - FB7111: Possible to go directly to file upload screen when opening file selector (AS) - FB5430: View most read articles and categories for statistics module (AS) API/Technical changes and important developer-visible changes - FB6749: The prefered method to get Articles/Categories is now ArticleManager->getArticle($id) and CategoryManager->getCategory($id) (EK) - FB6723: The cp_dbupgrade.php script has been extended to accept a new command line parameter in order to skip table optimization during system and domain database upgrades. Setting the argument to 0 (zero) will skip the optimization. The default value for this argument is 1. (JFV) - FB6527: Jpeg images are now automatically rotated according to their embedded EXIF information. This functionality can be turned on/off in the multimedia archive settings. (EK) - Added support for Single Sign On using mod_ntlm (AS) - Cache table is now also considered as a globally locked table when running $db->lockTables(..,true); - FB6659: jpeg-images with embedded gps-coordinates now have these stored as file-metadata on upload. (EK) - Added Article::isMainArticle (AS/EG) - Corepublish now hides version-numbers by default. This can be configured with the setting cplib.obfuscateversion (EK) - FB6084: It is now required to set date.timezone in php.ini (EK) - CorePublish::getSiteThemeName() now also looks for siteconfig 'style.theme' for backwards compatability (AS) - Added support for Android browser in CtDevice (AS) - The $db argument for several functions in Article is no longer required. CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 14 av 16 setDatabyDB, commitChanges, getAdditionalCategories, setAdditionalCategories, addAdditionalCategory, getArticledataID, getArticleElementData, getElements, getElementsInGroup, getElementByProgrammaticName, asHTML, asPlainText and asSMS can now be called without $db. (EK) - FB6865 CorePublish needs an automatic update task for WURFL data (AS) - FB6854 @import tags in CSS files should be "inlined" to regular stylesheet to save HTTP requests (AS) - Added CorePublish::getDb() as an alias method to getDomainDatabase() (AS) - Implemented FB6556: change file-naming to be collision-free in mmarchive The multimedia-files now get random filenames rather than sequential ones. This prevents collisions if the file-id gets out of sync, for example if restoring a database-backup and filesystem-backup taken at different times (EK) - Implemented FB6735: UserGroup now supports paging when loading users, thus avoiding slow loading for usergroups with thousands of users in them. (EK) Bug fixes - FB6770: File description hidden in thumbnail view in CKEditor selector (JFV) - FB7149: Extra newline removed from CtDataObjectBase (EK) - FB6982: Image lab does not refresh image variants (JFV) - FB6831: Userfield Website allows any string (EK) - FB6744: Fatal error in CpSimpleCategoryMenuTile when parent Category not published. (EK) - FB7036: Fatal error may occur during tile rendering (JFV) - FB7059: CtSqlWhereAndCondtion and CtSqlWhereOrCondition now throws an exception rather than generate invalid SQL if the collection is empty (EK) - FB7144: Updating image content does not regenerate variants currently in use (JFV) - FB7140: CorePublish does not always recognise MP4 video files (JFV) - FB7114: Saving articles causes error message in PHP 5.2 environments (JFV) - FB7109: Selecting channel equivalent category as additional category during article creation causes duplicate entry exception (JFV) - FB7073: Form element palette doesn't follow page scrolling (JFV) - FB7027: UserGroup::getEntityName() always returns null (JFV) - FB6994: Unable to edit domain properties in IE 7 and 8 (JFV) - FB6988: Setting and getting phone numbers on users produces unexpected results (JFV) - FB6943: Incorrect database names in cp_dbupgrade error report (JFV) - FB6940: Unable to upgrade empty domain database (JFV) - FB6945: Flaky behaviour in CtUrlUtil file methods (JFV) - FB6938: CKEditor image dimension fields lose focus in IE (JFV) - FB6935: Article editor does not respect image alteration restriction (JFV) - FB6878: The method CtChannelManager::isEntityExposed fails (JFV) - FB6871: Calling User::getHomeArticle() causes exception when no article is set (JFV) - FB6719: Form editor elements don't respawn in side panel (JFV) - FB6746: Server editor defaults to development environment when saving changes (JFV) - FB6731: Main server URLs miss trailing slash (JFV) - FB5895: Conflicting hostnames allowed (JFV) - FB6737: CorePublish::getHostManager() causes error message (JFV) - FB6723: Upgrading multiple domain databases is time consuming due to table optimization (JFV) - FB6658: Misleading database connection message (JFV) - FB6711: Regenerating image variants may cause a fatal error (JFV) - FB6265: Global $CACHE variable not set during first page display (JFV/AS) - FB6704: Article editor equivalence buttons cause error (JFV) - FB6702: Creating a new site causes PHP warning (JFV) - FB6676: Oracle database support is broken (JFV) - FB6698: Garbage text on undo button in image lab (JFV) - FB6695: Editing default article elements in CP Admin crashes (JFV) - FB6693: Copying categories causes fatal error (JFV) - FB6691: Saving site language settings causes PHP warning (JFV) - FB6689: Channel equivalence panel broken in English article editor (JFV) - FB6684: CorePublishSite causes fatal error (JFV) - FB6572: Alternative file uploader broken in CKEditor (JFV) - FB6653: Site edit - some urls fails after saving page once (AS) - FB6707: Returnpage in CtWbform does not respect article_link_context CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 15 av 16 setting, always redirects to article's main category (AS) - FB6688: CtUrlUtil::setUrl() does not handle SSL urls terminated in load balancers (AS) - FB6707: Returnpage in CtWbform does not respect article_link_context setting, always redirects to article's main category (AS) - FB6688: CtUrlUtil::setUrl() does not handle SSL urls terminated in load balancers (AS) - FB6713: Wrong method call in CorePublish-class when a domain frontend has been disabled (AS) - FB6088: Imagemagick creates thumbnails with wrong colors (EK) - FB6721: missing https for default regstart host (EK) - FB6736: Language detection from host names fails with some configurations (AS) - FB6664: APC causes wrong language strings on multi-language sites (EK) - FB6741: Mobile sites might fail to redirect to proper host (AS) - FB6742: Processing submitted forms does not work in IE9 (AS) - FB6882: CorePublish does not log startup error messages/exceptions (AS) - FB6902: Redirect for cross-published articles can loops in certain configurations (AS) - FB6818: ArticleList::getListCount() returns wrong number (AS) - FB6903: createdtime is not set correct when creating users through GUI (AS) - FB6891: UserGroup::getUserGroupsFromAclPrincipalIDArray() is empty and should be removed (AS) - FB6893: CtUrlUtil::setUrl doesn't handle get parameters of type array correctly (AS) - FB6919: Missing requireClass() for CtEntityCommentManager in ArticleManager (AS) - FB6920: Category tree parts does not show when user is member of several usergroups having roots at different level (AS) - FB6892: add CtFormElementBase::setDataSource (AS) - FB6909: Articlelist returns wrong listcount and amount of articles in special conditions (AS) - FB7095: Wrong main article set when using linked equivalent articles (AS) - FB6987: Copy site button in site detail view has wrong action (AS) - FB7092: Unable to reset form to previous phase (AS) - FB7102: technical error message on error page not shown when debug mode is disabled (AS) - FB7100: Security vulnerability in statistics module (AS) - FB7108: Site.getSiteConfig("htmlroot") might return htmlroot for wrong server in backend mode (AS) - FB7110: Unable to edit articles that do not belong to a site (AS) - FB7097: cp_dbupgrade.php fails when upgrading old cp4 databases (AS/MOS) - FB6647: Multiple dialog windows in CKEditor MMA file selector (AS/MOS) - FB6832: Redirect after saving user groups fails (AS) - FB7142: Updating video content does not purge the cache (AS) - FB6890: Null pointer bugs in CorepublishWebUser (EK) CoreTrek AS, Nikkelveien 10, 4313 Sandnes, Norway Organisasjons nr: 984-587-406 Side 16 av 16