diff --git a/advancedcontentfilter/composer.lock b/advancedcontentfilter/composer.lock index 774b5ec8..0b0114db 100644 --- a/advancedcontentfilter/composer.lock +++ b/advancedcontentfilter/composer.lock @@ -1,7 +1,7 @@ { "_readme": [ "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], "content-hash": "d0e3662dd9d910ffe4f71d325bc39319", @@ -35,7 +35,6 @@ ], "description": "Promoting the interoperability of container objects (DIC, SL, etc.)", "homepage": "https://github.com/container-interop/container-interop", - "abandoned": "psr/container", "time": "2017-02-14T19:40:03+00:00" }, { @@ -281,16 +280,16 @@ }, { "name": "psr/log", - "version": "1.1.2", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801" + "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/446d54b4cb6bf489fc9d75f55843658e6f25d801", - "reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801", + "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", + "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", "shasum": "" }, "require": { @@ -299,7 +298,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { @@ -324,7 +323,7 @@ "psr", "psr-3" ], - "time": "2019-11-01T11:05:21+00:00" + "time": "2016-10-10T12:19:37+00:00" }, { "name": "psr/simple-cache", @@ -447,16 +446,16 @@ }, { "name": "symfony/cache", - "version": "v3.4.36", + "version": "v3.4.8", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "3d9f46a6960fd5cd7f030f86adc5b4b63bcfa4e3" + "reference": "13255ddd056e49f3154747943f8ee175d555d394" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/3d9f46a6960fd5cd7f030f86adc5b4b63bcfa4e3", - "reference": "3d9f46a6960fd5cd7f030f86adc5b4b63bcfa4e3", + "url": "https://api.github.com/repos/symfony/cache/zipball/13255ddd056e49f3154747943f8ee175d555d394", + "reference": "13255ddd056e49f3154747943f8ee175d555d394", "shasum": "" }, "require": { @@ -513,7 +512,7 @@ "caching", "psr6" ], - "time": "2019-12-01T10:45:41+00:00" + "time": "2018-04-02T14:35:16+00:00" }, { "name": "symfony/expression-language", @@ -567,16 +566,16 @@ }, { "name": "symfony/polyfill-apcu", - "version": "v1.13.1", + "version": "v1.7.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-apcu.git", - "reference": "a8e961c841b9ec52927a87914f8820a1ad8f8116" + "reference": "e8ae2136ddb53dea314df56fcd88e318ab936c00" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/a8e961c841b9ec52927a87914f8820a1ad8f8116", - "reference": "a8e961c841b9ec52927a87914f8820a1ad8f8116", + "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/e8ae2136ddb53dea314df56fcd88e318ab936c00", + "reference": "e8ae2136ddb53dea314df56fcd88e318ab936c00", "shasum": "" }, "require": { @@ -585,7 +584,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.13-dev" + "dev-master": "1.7-dev" } }, "autoload": { @@ -619,7 +618,7 @@ "portable", "shim" ], - "time": "2019-11-27T13:56:44+00:00" + "time": "2018-01-30T19:27:44+00:00" } ], "packages-dev": [], diff --git a/buffer/buffer.php b/buffer/buffer.php index 689127cf..13b5309d 100644 --- a/buffer/buffer.php +++ b/buffer/buffer.php @@ -4,6 +4,7 @@ * Description: Post to Buffer (Facebook Pages, LinkedIn, Twitter) * Version: 0.2 * Author: Michael Vogel + * Status: Unsupported */ require 'addon/buffer/bufferapp.php'; diff --git a/js_upload/js_upload.php b/js_upload/js_upload.php index d0f92127..5a6c37c8 100644 --- a/js_upload/js_upload.php +++ b/js_upload/js_upload.php @@ -2,110 +2,217 @@ /** * Name: JS Uploader * Description: JavaScript photo/image uploader. Uses Valum 'qq' Uploader. - * Version: 1.1 + * Version: 1.0 * Author: Chris Case - * Maintainer: Hypolite Petovan */ -use Friendica\App; +/** + * + * JavaScript Photo/Image Uploader + * + * Uses Valum 'qq' Uploader. + * Module Author: Chris Case + * + */ + use Friendica\Core\Config; use Friendica\Core\Hook; use Friendica\Core\L10n; use Friendica\Core\Logger; -use Friendica\Core\Renderer; -function js_upload_install() -{ - Hook::register('photo_upload_form', __FILE__, 'js_upload_form'); - Hook::register('photo_post_init', __FILE__, 'js_upload_post_init'); - Hook::register('photo_post_file', __FILE__, 'js_upload_post_file'); - Hook::register('photo_post_end', __FILE__, 'js_upload_post_end'); +function js_upload_install() { + Hook::register('photo_upload_form', 'addon/js_upload/js_upload.php', 'js_upload_form'); + Hook::register('photo_post_init', 'addon/js_upload/js_upload.php', 'js_upload_post_init'); + Hook::register('photo_post_file', 'addon/js_upload/js_upload.php', 'js_upload_post_file'); + Hook::register('photo_post_end', 'addon/js_upload/js_upload.php', 'js_upload_post_end'); } -function js_upload_form(App $a, array &$b) -{ + +function js_upload_uninstall() { + Hook::unregister('photo_upload_form', 'addon/js_upload/js_upload.php', 'js_upload_form'); + Hook::unregister('photo_post_init', 'addon/js_upload/js_upload.php', 'js_upload_post_init'); + Hook::unregister('photo_post_file', 'addon/js_upload/js_upload.php', 'js_upload_post_file'); + Hook::unregister('photo_post_end', 'addon/js_upload/js_upload.php', 'js_upload_post_end'); +} + + +function js_upload_form(&$a,&$b) { + $b['default_upload'] = false; - $a->page->registerStylesheet('addon/js_upload/file-uploader/client/fileuploader.css'); - $a->page->registerFooterScript('addon/js_upload/file-uploader/client/fileuploader.js'); + $b['addon_text'] .= ''; + $b['addon_text'] .= ''; - $tpl = Renderer::getMarkupTemplate('js_upload.tpl', 'addon/js_upload'); - $b['addon_text'] .= Renderer::replaceMacros($tpl, [ - '$upload_msg' => L10n::t('Select files for upload'), - '$drop_msg' => L10n::t('Drop files here to upload'), - '$cancel' => L10n::t('Cancel'), - '$failed' => L10n::t('Failed'), - '$post_url' => $b['post_url'], - '$maximagesize' => intval(Config::get('system', 'maximagesize')), - ]); + $upload_msg = L10n::t('Select files for upload'); + $drop_msg = L10n::t('Drop files here to upload'); + $cancel = L10n::t('Cancel'); + $failed = L10n::t('Failed'); + + $maximagesize = intval(Config::get('system','maximagesize')); + + $b['addon_text'] .= <<< EOT + +
+ +
+ + + +EOT; + + +} + +function js_upload_post_init(&$a,&$b) { + + // list of valid extensions, ex. array("jpeg", "xml", "bmp") + + $allowedExtensions = ["jpeg","gif","png","jpg"]; // max file size in bytes - $sizeLimit = Config::get('system', 'maximagesize'); + + $sizeLimit = Config::get('system','maximagesize'); //6 * 1024 * 1024; $uploader = new qqFileUploader($allowedExtensions, $sizeLimit); $result = $uploader->handleUpload(); - // to pass data through iframe you will need to encode all html tags - $a->data['upload_jsonresponse'] = htmlspecialchars(json_encode($result), ENT_NOQUOTES); - if (isset($result['error'])) { - Logger::log('mod/photos.php: photos_post(): error uploading photo: ' . $result['error'], Logger::DEBUG); + // to pass data through iframe you will need to encode all html tags + $a->data['upload_jsonresponse'] = htmlspecialchars(json_encode($result), ENT_NOQUOTES); + + if(isset($result['error'])) { + Logger::log('mod/photos.php: photos_post(): error uploading photo: ' . $result['error'] , Logger::DEBUG); echo json_encode($result); exit(); } $a->data['upload_result'] = $result; + } -function js_upload_post_file(App $a, &$b) -{ +function js_upload_post_file(&$a,&$b) { + $result = $a->data['upload_result']; - $b['src'] = $result['path']; - $b['filename'] = $result['filename']; - $b['filesize'] = filesize($b['src']); + $b['src'] = $result['path']; + $b['filename'] = $result['filename']; + $b['filesize'] = filesize($b['src']); } -function js_upload_post_end(App $a, &$b) -{ - Logger::log('upload_post_end'); - if (!empty($a->data['upload_jsonresponse'])) { + +function js_upload_post_end(&$a,&$b) { + +Logger::log('upload_post_end'); + if(!empty($a->data['upload_jsonresponse'])) { echo $a->data['upload_jsonresponse']; exit(); } + } + /** * Handle file uploads via XMLHttpRequest */ -class qqUploadedFileXhr -{ +class qqUploadedFileXhr { + private $pathnm = ''; /** * Save the file in the temp dir. - * * @return boolean TRUE on success */ - function save() - { - $input = fopen('php://input', 'r'); + function save() { + $input = fopen("php://input", "r"); - $upload_dir = Config::get('system', 'tempdir'); - if (!$upload_dir) + $upload_dir = Config::get('system','tempdir'); + if(! $upload_dir) $upload_dir = sys_get_temp_dir(); - $this->pathnm = tempnam($upload_dir, 'frn'); + $this->pathnm = tempnam($upload_dir,'frn'); - $temp = fopen($this->pathnm, 'w'); + $temp = fopen($this->pathnm,"w"); $realSize = stream_copy_to_stream($input, $temp); fclose($input); @@ -117,20 +224,17 @@ class qqUploadedFileXhr return true; } - function getPath() - { + function getPath() { return $this->pathnm; } - function getName() - { + function getName() { return $_GET['qqfile']; } - function getSize() - { - if (isset($_SERVER['CONTENT_LENGTH'])) { - return (int)$_SERVER['CONTENT_LENGTH']; + function getSize() { + if (isset($_SERVER["CONTENT_LENGTH"])){ + return (int)$_SERVER["CONTENT_LENGTH"]; } else { throw new Exception('Getting content length is not supported.'); } @@ -140,43 +244,39 @@ class qqUploadedFileXhr /** * Handle file uploads via regular form post (uses the $_FILES array) */ -class qqUploadedFileForm -{ + +class qqUploadedFileForm { + + /** * Save the file to the specified path - * * @return boolean TRUE on success */ - function save() - { + + + function save() { return true; } - function getPath() - { + function getPath() { return $_FILES['qqfile']['tmp_name']; } - function getName() - { + function getName() { return $_FILES['qqfile']['name']; } - - function getSize() - { + function getSize() { return $_FILES['qqfile']['size']; } } -class qqFileUploader -{ +class qqFileUploader { private $allowedExtensions = []; private $sizeLimit = 10485760; private $file; - function __construct(array $allowedExtensions = [], $sizeLimit = 10485760) - { - $allowedExtensions = array_map('strtolower', $allowedExtensions); + function __construct(array $allowedExtensions = [], $sizeLimit = 10485760){ + $allowedExtensions = array_map("strtolower", $allowedExtensions); $this->allowedExtensions = $allowedExtensions; $this->sizeLimit = $sizeLimit; @@ -191,17 +291,14 @@ class qqFileUploader } - private function toBytes($str) - { + + private function toBytes($str){ $val = trim($str); - $last = strtolower($str[strlen($str) - 1]); - switch ($last) { - case 'g': - $val *= 1024; - case 'm': - $val *= 1024; - case 'k': - $val *= 1024; + $last = strtolower($str[strlen($str)-1]); + switch($last) { + case 'g': $val *= 1024; + case 'm': $val *= 1024; + case 'k': $val *= 1024; } return $val; } @@ -209,8 +306,8 @@ class qqFileUploader /** * Returns array('success'=>true) or array('error'=>'error message') */ - function handleUpload() - { + function handleUpload(){ + if (!$this->file) { return ['error' => L10n::t('No files were uploaded.')]; } @@ -227,10 +324,10 @@ class qqFileUploader // } - $maximagesize = Config::get('system', 'maximagesize'); + $maximagesize = Config::get('system','maximagesize'); - if (($maximagesize) && ($size > $maximagesize)) { - return ['error' => L10n::t('Image exceeds size limit of ') . $maximagesize]; + if(($maximagesize) && ($size > $maximagesize)) { + return ['error' => L10n::t('Image exceeds size limit of ') . $maximagesize ]; } @@ -242,23 +339,24 @@ class qqFileUploader } $ext = $pathinfo['extension'] ?? ''; - if ($this->allowedExtensions && !in_array(strtolower($ext), $this->allowedExtensions)) { + if($this->allowedExtensions && !in_array(strtolower($ext), $this->allowedExtensions)){ $these = implode(', ', $this->allowedExtensions); return ['error' => L10n::t('File has an invalid extension, it should be one of ') . $these . '.']; } - if ($this->file->save()) { + if ($this->file->save()){ return [ - 'success' => true, - 'path' => $this->file->getPath(), + 'success' => true, + 'path' => $this->file->getPath(), 'filename' => $filename . '.' . $ext ]; } else { return [ - 'error' => L10n::t('Upload was cancelled, or server error encountered'), - 'path' => $this->file->getPath(), + 'error' => L10n::t('Upload was cancelled, or server error encountered'), + 'path' => $this->file->getPath(), 'filename' => $filename . '.' . $ext ]; } + } } diff --git a/js_upload/templates/js_upload.tpl b/js_upload/templates/js_upload.tpl deleted file mode 100644 index f45b495c..00000000 --- a/js_upload/templates/js_upload.tpl +++ /dev/null @@ -1,56 +0,0 @@ - -
- -
- -