*/ use Friendica\App; use Friendica\Core\Hook; use Friendica\DI; function zen_postbox_install() { //Register hooks Hook::register('jot_tool', 'addon/zen_postbox/zen_postbox.php', 'zen_postbox_jot_tool'); } function zen_postbox_jot_tool(string &$body) { $labels = [ ['White Smoke', 'whitesmoke'], ['Dark Grey', 'darkgrey'], ['Black', 'black'], ['Pink', 'pink'], ['Red', 'red'], ['Dark Red', 'darkred'], ['Light Pink', 'lightpink'], ['Hot Pink', 'hotpink'], ['Medium Violet Red', 'mediumvioletred'], ['Peach Puff', 'peachpuff'], ['Dark Orange (Orange)', 'darkorange'], ['Sienna', 'sienna'], ['Light Yellow', 'lightyellow'], ['Gold', 'gold'], ['Goldenrod', 'goldenrod'], ['Honeydew', 'honeydew'], ['Yellow Green', 'yellowgreen'], ['Olive Drab', 'olivedrab'], ['Pale Green', 'palegreen'], ['Lime Green (Green)', 'limegreen'], ['Forest Green (Forest)', 'forestgreen'], ['Mint Cream', 'mintcream'], ['Medium Aquamarine', 'mediumaquamarine'], ['Sea Green', 'seagreen'], ['Sky Blue', 'skyblue'], ['Cornflower Blue (Blue)', 'cornflowerblue'], ['Dark Slate Blue', 'darkslateblue'], ['Lavender', 'lavender'], ['Medium Slate Blue', 'mediumslateblue'], ['Dark Blue (Ocean)', 'darkblue'], ['Thistle', 'thistle'], ['Violet', 'violet'], ['Purple', 'purple'], ['Light Salmon (Salmon)', 'lightsalmon'], ['Aurora', 'aurora'], ['Blue-Gray', 'bluegray'], ['Gray-Grey', 'graygrey'], ['Gray-Black', 'grayblack'], ['Green-Gray', 'greengray'], ['Lavender-Gray', 'lavendergray'], ['Minty', 'minty'], ['Mint-Gray', 'mintgray'], ['Rainbow', 'rainbow'], ['Red-Blue', 'redblue'], ['Sherbet', 'sherbet'], ['Spectrum', 'spectrum'], ['Strawberry-Cream', 'strawberrycream'], ['Sunset', 'sunset'], ['Teal-Blue', 'tealblue'], ['Teal-Gray', 'tealgray'], ['Violets', 'violets'], ['Violet-Blue', 'violetblue'], ['Blueprint', 'blueprint'], ['Birds', 'birds'], ['Checkered', 'checkered'], ['Cubes', 'cubes'], ['Lemon-Lime', 'lemonlime'], ['Gingham', 'gingham'], ['Grid', 'grid'], ['Hearts', 'hearts'], ['Honeycomb', 'honeycomb'], ['Notebook', 'notebook'], ['Plaid', 'plaid'], ['Polkadots', 'polkadots'], ['Shade Dots', 'shadedots'], ['Shadowbox', 'shadowbox'], ['Stars', 'stars'], ['Warp Grid', 'warpgrid'], ['Wavy', 'wavy'], ['Ani-Gradient', 'anigradient'], ['Blob', 'blob'], ['Color Fade', 'colorfade'], ['Grid Runner', 'gridrunner'], ['Heartbeat', 'heartbeat'], ['Moonrise', 'moonrise'], ['Rainy', 'rainy'], ['Rocket', 'rocket'], ['Snowy', 'snowy'], ['Sunrise', 'sunrise'], ['Waves', 'waves'], ]; // Generate Postbox Buttons $s = '
'; for ($x = 0; $x < count($labels); $x++){ $s .= ''; } $s .= '
'; //Add control css to header $css_file = __DIR__ . '/view/' . DI::app()->getCurrentTheme() . '.min.css'; if (!file_exists($css_file)) { $css_file = __DIR__ . '/view/default.min.css'; } DI::page()->registerStylesheet($css_file); /* Add Postbox Styling to Header DI::page()->registerStylesheet($path) might load before theme so we will append with DI::page()['htmlhead'] to make it load much much later */ $path = __DIR__ . '/view/postbox.min.css?v=' . DI::app()::VERSION; if (mb_strpos($path, DI::basePath() . DIRECTORY_SEPARATOR) === 0) { $path = mb_substr($path, mb_strlen(DI::basePath() . DIRECTORY_SEPARATOR)); } DI::page()['htmlhead'] .= ''; //Get the correct image for the theme $image = 'addon/zen_postbox/view/default.png'; $image_url = DI::baseUrl() . '/' . $image; //Append the hmtl and script to the page $body .= <<< EOT
$s
EOT; }