Closed olajoh1 closed 7 years ago
Denna del av portlet har inte ändrats och felet kommer med största sannolikhet från en differens i APIet. Malmö stad behöver se över sitt Contact API v1 så att det överenskommer med dagen organisation. Även länkar bör ses över då sidor kan vara borttagna och resultatet inte ger korrekt utfall.
contactForm.vm
$(document).ready(function() {
$("body").addClass("config");
$('#cn').autocomplete({
serviceUrl:'$renderSoloURL',
minChars:4,
delimiter: /(,|;)\s*/, // regex or character
maxHeight:400,
width:0,
deferRequestBy: 0, //miliseconds
params: { action:'searchJSON',type:$contact.type },
onSelect: function(value, data){
$("#dn").val(data);
contactAttributes();
previewContact();
}});
Mårten, vill du göra en bedöming
@jesperbylund fördelar alla tickets i nuläget, nya som gamla.
Vare sig kontaktkorten Avdelningen för överförmyndarärenden eller Avdelningen för livsmedelskontroll har någon Hemsida ifylld i funktionskontakternas kort.
Man verkar se det i Kontaktrutans redigeringsgränssnitt i SV genom att de etiketterna är kursiverade om det inte finns någon data ifylld i källan, dvs. administrationen av Funktionskontakter. Kontaktbokens API:et kommunicerar vilka fält som finns tydligt i sitt svar till portleten.
Lösningen är att man ändrar i portleten i SV så att de rutor som inte har någon data inte går att klicka i, dvs. är disablade. Och när portleten hämtar data från Kontaktbokens API, kollar om det är värden som är tomma och då avaktiverar länkning av namnet så att det inte blir en länk med ett Velocity-variable från SV som det är nu.
@tomasrobertsson kommentarer från dig på detta?
Då jag inte är helt bekant i eran ganska stora webb undrar jag helt enkelt var hittar jag denna kontaktruta? Är det en ren script-portlet eller är det en java-portlet? Finns den bara på intranätet/komin?
Portleten finns https://github.com/malmostad/sv-contact-portlet
Jag skrev ett förslag på användar- och administrationsfunktionalitet ovan i https://github.com/malmostad/sitevision_assets/issues/338#247955316 som stämmer med dagens telefonmöte.
Tillägg enligt mötet:
Lägga till en koll på varje annat fält som skrivs ut som kontaktuppgifter att det faktiskt finns, dvs. att Kontaktrutan har fått dem i senaste hämtningen från Kontaktbokens REST-API. Kontaktkortet i kontaktboken kan ändras efter det att visningsfälten valts i Kontaktrutan. Skriv inte ut fält det inte finns någon data för.
Den in-memory-cache som portletten använder är Javas ehcache. Cachningen går att forcera om man plockar upp kontakten i admingränssnittet av portletten och sparar utan att ändra nått.
Det finns två sätt att lösa detta på. 1: Kontrollera med linkRenderer.isValidTarget(($linkUsername) om sidan som finns i noden finns. 2: Att det i restAPI sätts ett icke-värde där, att kontrollen #if ($linkUsername), ger falskt svar. Här behöver utvecklingen i API och portlet samordnas, dvs jag behöver veta vad som ska komma från API och även ha testfall där jag kan kontrollera funktion.
för tillfället ligger det en version av portleten med alternativ 1 på test.komin. Första raden skrivs resultatet efter en koll med linkrenderer ut, på andra raden en länk oavsett resultat för kontroll. Vet ni någon sida där som ska ha en länk till en kontakt? Testa gärna då och se om båda raderna får en länk. Osäker på om denna lösning fungerar som det nu är.
För att göra det enklare för mig ge mig gärna exempel på kontakter som ska fungera och sådana där det finns trasiga fält.
@tomasrobertsson Du ser att ett värde, på t.ex. homepage
i @olajoh1 exempel överst är tomt genom att JSON-objektet du får tillbaka har värdet av en tom sträng, se exempel på:
https://github.com/malmostad/intranet-dashboard/wiki/Contacts-API-v1#get-a-single-group-contact
Det gäller generellt i API:et till Kontaktboken, de properties som finns i dokumentationen returneras alltid men kan vara en tom sträng ""
eller null
i exemplet i dokumentationen: "homepage": ""
Behöver du ut någon annan data från REST-responsen? Här kan du ju alltid göra kollen med en enkel logik:
om: homepage är lika med ""
så: skapa ingen <a href
runt avdelningsnamnet
@olajoh1, ger du exempel på kontakter som @tomasrobertsson efterfrågar ovan?
Exempel på sidor som inte fungerar.
https://komin.malmo.se/Forvaltningar/Sociala-resursforvaltningen/Overformyndararenden.html
Inget av dessa exempel fungerar på test.
När jag väl ser problemet är det ju enkelt löst. https://komin.test.malmo.se/Forvaltningar/Sociala-resursforvaltningen/Overformyndararenden.html se exempelvis på sidan ovan. Är det fler fält i kontaktformuläret som ni vet behöver en hårdare kontroll?
@olajoh1 Är denna klar och kan stängas?
ok
Exempel: https://komin.malmo.se/Forvaltningar/Sociala-resursforvaltningen/Overformyndararenden.html