Skip to content

An application that runs on the home application. Sample memo app.

License

Notifications You must be signed in to change notification settings

dixonsiu/app-myboard

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyBoard App

An sample app that runs on the HomeApp.
It allows the data subject to edit it's and view other's notice board.

MyBoard on YouTube

Installation

Perform the following procedures by someone with admin permission of the target Personium Unit.

Prepare target App Cell

Perform the following in the target Personium Unit.

  1. Download the snapshot of the MyBoard App from the Personium Community.
  2. Import the snapshot to the target App Cell of the target Personium Unit.
  3. Create new user accounts or modify passwords for the newly target App Cell.

Set up target App Cell

Perform the following in the target App Cell.

  1. Use the target App Cell's URL for the schema URL of the app Box.
    Export the app Box and upload the app Box to the main folder of the target App Cell.

  2. Use the target App Cell's URL in launch.json in the main Box.

  3. Use the target App Cell's URL and proper app authentication info in the Personium Engine.

     __/html/Engine/__src/acc_info.js  
    

Instructions on modifying this app and building your own

You are free to use this app as base and write your own. Basically, we reuse files that contain the "common" in their file names for all other apps. And then we edit the following constants/functions to match our needs.

  1. MyBoard is running on the following URL.

     const APP_URL = "https://demo.personium.io/app-myboard/";
    
  2. All the JSON files inside locales/en.

     getNamesapces = function() {
         return ['common', 'glossary'];
     };
    
  3. Relation defined bar/00_meta/10_relations.json

     getAppReadRole = function() {
         return 'MyBoardReader';
     }
    
  4. Location where MyBoard app stores the notice board information.

     getAppDataPath = function() {
         return 'MyBoardBox/my-board.json';
     }
    
  5. AJAX option for getting data.

     getAppRequestInfo = function() {
         ...
     }
    
  6. After i18next has prepare all the necessary information, it will call the following function which configure and render your app.

     additionalCallback = function() {
     	...
     }
    
  7. When the app encounter an error which prevent it from working properly, it will display a warning dialog to notify the user to close the browser window.
    Before the dialog is displayed, your might want to hide some GUI components so that the user will not accidentally click on it.

     irrecoverableErrorHandler = function() {
     	...
     }
    
  8. After you click the warning dialog's "OK" button, you might want to clean up your browser session before closing the window.

     cleanUpData = function() {
     	...
     }
    

About

An application that runs on the home application. Sample memo app.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 91.5%
  • CSS 4.7%
  • HTML 3.8%