Governance on SharePoint site themes – Issue #1 now resolved

Github issue #1 is now addressed and resolved.

Iterating on the light/dark theme upload scripts TMNT IT management has added the capability to iterate over all SharePoint sites and apply the dark theme as default.

The updated script https://github.com/EivindBerge/PIZZA-TIME-ACDC-2022/blob/main/theming/site-theme-management-tmnt.ps1 is running in a scheduled Azure Run Book using PowerShell Core 7.1. SharePoint Online Credentials are as runbook credentials, which is sufficient for this scenario. Key Vault could of course be an option, or even better using a certificate – but as IT is very centralized this works for the time being.

Credential
Runbook
A job well done
Inverted theme applied!

We have also added more code and security scanning tools to also cover PowerShell scripts and find more general security issues.

Developer basics and setup – GitHub repository

TMNT love to share and have setup a public github repository at https://github.com/EivindBerge/PIZZA-TIME-ACDC-202.

First order of business is to ensure security is handled by adding a security policy, enabling security advisories on code and artifacts committed as well as some code scanning in case Michelangelo has a brain fart and publish secret information or crappy code.

And 2022 is a good year to be in as scanning modules are free of charge for the turtles to re-use 🤩

Looking good so far – and we’ll keep monitoring!

Accessibility – Colors

Like humans, turtles have mediocre vision. This also applies to our toxic waste turned turtles into humanoid-like beings. When technology enters their world it’s important to ensure color contrast is optimal, thus TMNT Corp mandates all tools to meet the highest accessibility grade possible.

Living in the sewer, going for a dark based scheme makes all the sense in the world.

Being inclusive is is a certainly a turtle powers, thus a light scheme is made available.

And this is how it works.

Dark contrast
Light contrast

Team “Pizza Time” Early Delivery

TMNT Live in the sewers under Manhattan, fighting crime whenever they need to protect the city. To be efficient in their crime fighting activities they need help from citizens reporting status around the city, and they need to be aware of things that happen BEFORE they actually happen. They have contacted Point Taken to find a solution for fighting crime and connecting with the citizens of New York.

After fighting crime, any hero needs food to survive. As we say in Norway “Uten mat og drikke, duger helten ikke”. No real way to translate it, but you need to eat! 🍕🍕

While living in secret it is important to know when the food is delivered without blowing their covers!

This is why we are making a 3 part solution

  1. Step one is fighting crime reactive, and a proactive. Reactive behavior is when the citizens already know what the problem is and they are reporting 911 calls all around the city. The proactive approach is when digital solutions can report suspicious activity before it actually happens.
  2. After fighting crime all of the heroes are hungry. We will create a pizza ordering app for the local pizza shop. A real New York Slice! The obvious order being a double of everything pizza😂
  3. The last part is the pizza delivery process where TMNT need to stay in hiding while receiving pizza. We will create a solution for pizza delivery reporting, and quality checking the pizza when delivered at the secret location with sensors.

Original Drawing

“Pimped Drawing”

Clame for Dash It Out

Vi har laget en Power BI løsning med fokus på oversikt i en krisesituasjon for Lego City. Evil Mountain har en aktiv vulkan som må overvåkes og krisehåndtering må være lett tilgjengelig ved utbrudd. Borgemester Captain America og innbyggerne har høy tillit til hverandre og systemene som er satt i drift for byens sikkerhet.

I oversiktsbilde ser vi live data fra sensorene som er plassert i fjellet og måler temperatur. Dersom temperaturen overstiger en kritisk grenseverdi bli rapportbrukerne varslet. Temperatursvingningene fra sensorene vises som KPI og historisk:

Ved vulkanutbrudd er værforholdene svært kritiske for å ha kontroll på situasjonen. Vind påvirker spredningen av brann og hastigheten denne spredningen skjer. Ved høy vind vil brannen flytte seg svært fort. Derfor er det integrert værdata i rapportpakken.

Øverst i værvarslet ser vi temperatur og vind for valgt dag. Hover gir kort oversikt over været.

For et dypdykk i værvarselet kan oversikten benyttes:

Under en krisesituasjon melder innbyggerne skade og behov for hjelp i innbyggerportalen.

Rapportpakken viser oversikt over antall saker og en oversikt over sakene som er meldt inn, når og av hvem.

Når sakene blir meldt inn blir sakene prioritert og det blir opprettet arbeidsordre. Antall arbeidsordre og oversikt finnes her:

Rapporten er også optimalisert for mobil visning.

Lego City kriseteam har fått en canvas app med Relevance Search!

Claim for Crawler: Når vulkanutbruddet først er et faktum trenger myndighetene en måte å skaffe seg oversikt over tilgjengelige ressurser i samfunnet som kan bidra i gjenoppbyggingen. I Lego City sine myndigheters egen Dataverse har de lagret denne informasjonen på tvers av mange tabeller, som for eksempel Accounts, Contacts, Bookable Resources og Products.

For kjapt å få oversikt er det derfor nyttig å kunne søke enkelt på tvers av tabellene i Dataverse. Dette har vi løst ved å bruke Dynamics 365 sitt Relevance Search API.

Dette API’et tilgjengeliggjør Relevance Search-funksjonaliteten også utenfor Dynamics, slik at søket kan gjøres i den type applikasjon som er riktig for hver enkelt brukertype. Dette kan være i Sharepoint, i Teams, en Canvas app, eller noe helt annet. Man er altså ikke låst til å gjennomføre søket inne i Dynamics 365. Vi har laget en enkel Canvas app som alle på Lego City sitt eget kriseteam har tilgang til.

Et søk i denne appen trigger en Power Automate-flow som gjør søk ved hjelp av Relevance Search-API’et, og returnerer resultater på tvers av tabellene i Dataverse:

Ordføreren i Lego City er stressa etter vulkanutbruddet og søker simpelthen på “Emergency”:

Flow’en kjører, og søker på tvers av tabellene. I Account-tabellen finner de et firma som spesialiserer seg på krisehåndtering, perfekt! Navnet på firmaet er “Emergency Inc”.

Her er firmaet slik det ser ut inne i Dynamics 365:

Flow’en returnerer søkeresultatet tilbake til app’en, som viser søkeresultatene. La gjenoppbyggingen starte!

PT Brixters – Conductor Portal (Badge claims follows)

PT Brixters have made a conductor portal in react.js that is fully responsive and user friendly !

The Portal is made in React therefore we are claiming the “Client Side Salsa” badge for this.

The Portal also uses 2 module apps to show the train live video feed and a train controller where the train controller uses socket.io to communicate from the frontend to the backend, therefore we are claiming the “Right Now Badge” for this.

We are also claiming the “Glossy Pixels Badge

for the conductor portal because the portal looks shiny, is easy to read (big text, big buttons). And its responsive, works on mobile devices also, therefore we are also claiming the “Chameleon Badge”

And we wanted to show of our old Dashboard that is now upgraded to the new one 😀

Some pictures of socket.io with flask in action for the “Right now badge”:

Picture of VS Code as proof that we are using React to build our app.