GithubHelp home page GithubHelp logo

bkd-mba-fbi / event-information Goto Github PK

View Code? Open in Web Editor NEW
1.0 0.0 0.0 87 KB

Display events from evento api to add this to entrance of a buildung or of a room.

License: MIT License

JavaScript 74.68% CSS 9.32% HTML 15.99%

event-information's Introduction

Build Release Deploy 🚀 Netlify Status

event-information

Display events from evento api to add this to entrance of a buildung or of a room.

How to use

This module can be used to display buildings. For example, building entrances to display events in this building. It is possible to set a parameter using the event color (Evento tab lesson) so that only these events are displayed. It is also possible to create a room display if the roomId parameter is called in the URL.

If you are an Evento school of the Canton of Bern, you can use the module directly via the URL https://event-information.netlify.app.

If not, you can download the latest release and install it on any web server. You must then configure the 3 properties in settings.js. In Evento OAuth you have to create a Public ConsumerType that has access to the Scope Public with the endpoint GET /RoomReservation on the EndpointList.

Parameter

Mandatory parameters are buildingId or roomId and instanceId

Options

  • refresh: to get new occupancies from restApi in min (default 1min)

  • color: filter to event color would you like to display on the screen (HEX without # in param)

    image

  • headerColor: Color for the header (HEX without # in param)

  • siteChange: Interval to go to next site if more then 1 site in sec (default 3.5sec)

E.g.

Auth

At startup, the module checks whether a valid token is present in the sessionStorage.evtToken. Valid means the exp has not expired and the instanceId of the token corresponds to the token and the navigatorlanguage corresponds to the token culture_info. If not, a GET is made to the following endpoint.

${settings.authUrl}/Authorization/${param.instanceId}/Token?clientId=${settings.clientId}&redirectUrl=${location.href}&culture_info=${navigatorLanguage}&application_scope=Public

If the consumer is registered in OAuth, a new accessToken is sent to the client, which reads the accessToken into the sessionStorage.evtToken.

Content

Param buildingId

Header: Rooms.Building

Table rows:

  • Occupancies.DateTimeFrom - Occupancies.DateTimeFrom (format hh:mm)
  • Occupancies.Designation
  • Occupancies.Floor
  • Occupancies.Ressource

Param roomId

Header: Rooms.Ressource Rooms.Building

Table rows:

  • Occupancies.DateTimeFrom - Occupancies.DateTimeFrom (format hh:mm)
  • Occupancies.Designation

Branching & Releasing

For development use the dev branch and commit your changes to this. We review all changes on the dev branch an made a pull request to main after everything ist good or we find a new release must be create.

Release

  1. Do a pull request from dev to main.
  2. Title semantic version number (E.g. 1.1.0)
  3. Commit meesage only version number
  4. New release create by action
  5. if action finished generate auto relasee notes an save

Action on main branch

  1. Build app
  2. change settings propertys for production
  3. create zip file
  4. Deploy app ti gh_pages/dist folder
  5. Create Release with tag COMMIT_SHORT_SHA
  6. Upload zip file to Release

Setup & Development

Getting Started

Install the dependencies:

npm install

Copy settings.example.js to settings.js and adjust its contents.

Start the development server:

npm run dev

Responsive Design

font-size and padding are calculated by screen size.

font-size: calc(1.3rem + 1.1vw)
padding: calc(0.1rem + 2vw);

if smaller than 850px:

font-size: calc(0.8rem + 1.55vw)

event-information's People

Contributors

schefbi avatar

Stargazers

 avatar

event-information's Issues

GUI erstellen url zusammensetzung

  1. Wenn auf die Startseite ohne param zugegriffen wird soll als erstes die instanz mittels gui gewählt werden können.
  2. Authentifizierung beim Oauth für diese instanz
  3. Laden der Gebäude und Räume
  4. Form erstellen mit allen möglichen param. Die Url wir dem Benutzer angezeigt, und er kann sie kopieren.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.