* logSheet module changes: *
- Adding forward and grade feature: subAdmins in the editor list of respective sheets can forward/grade the logs of others.
(NOTE: Cannot forward/grade own log)
- Made required changes for viewSheets for the above feature.
- Fixed Bug: manageSheetControl didnot have title as argument.
- Passing argument as null for both addList and rmList in manageSheetControl makes the sheet public.
(ie, logSheet.manageSheetControl(title, null, null)
- Passing valid argument (Array of editors) for addList will convert public sheet into controlled.
(ie, logSheet.manageSheetControl(title, [array,of,editors,to,add], null)
- groupBy functions now require the sheet data from viewLogs as parameter. (As constrains are added for logs, direct fetch from generalData wont work).
* UI changes: *
- To create a public sheet, enter 'public' in writers field.
- Grade column will be added for all sheets displaying grade of each log.
(Note: blank = Not graded)
- subAdmins in editor list will be able to grade or regrade (type the grade and click enter)
- Sort table also works for grade
- floBlockchainAPI.readData's option pattern ll now test for JSON key matching the pattern
- startUp fn readAppConfigFromAPI checks if the content is a object or not to prevent errors
- generalData now also stores sign and pubKey.
- renamed startup fn readSubAdminListFromAPI to readAppConfigFromAPI.
- readAppConfigFromAPI also loads settings from the IDB to floGlobals.
- floDapps now reads 'settings' from blockchain
- improved manageSubAdmins: doesnot send tx if addList and rmList are empty (i.e, no changes)
- setApplicationSettings: used to set settings for the application.
Note: existing settings are overwritten (ie, not appended) if same key is used.
- sendGeneralData now supports a new option (encrypt): Encrypts the message before sending.
Note: option value can be boolean true or pubKey of a floID. Passing true will encrypt the data using the default encryptionKey (default 'encryptionKey' must be set in settings).
- getNextGeneralData now supports a new option (decrypt): Decrypts the message if possible.
Note: option value can be true, privateKey or array of privateKeys.
If boolean true is passed, decrypts using myPrivKey (loggedIn privateKey).
If privateKey (string) is passed, decrypts using the given privateKey.
If array of privateKeys are passed, decrypts the message using the suitable key from the given array. (for example, say messages A, B, C are encrypted for keys X, Y, Z respectively, passing [X, Z] will decrypt messages A and C.