]> git.mxchange.org Git - friendica.git/commitdiff
Update PHPDoc in mod/
authorHypolite Petovan <hypolite@mrpetovan.com>
Mon, 7 Jan 2019 06:07:42 +0000 (01:07 -0500)
committerHypolite Petovan <hypolite@mrpetovan.com>
Mon, 21 Jan 2019 15:39:27 +0000 (10:39 -0500)
18 files changed:
mod/admin.php
mod/dfrn_request.php
mod/fbrowser.php
mod/hovercard.php
mod/item.php
mod/match.php
mod/network.php
mod/parse_url.php
mod/ping.php
mod/receive.php
mod/smilies.php
mod/tagrm.php
mod/view.php
src/Core/PConfig.php
src/Core/Renderer.php
src/Model/GContact.php
src/Object/Image.php
src/Protocol/ActivityPub/Transmitter.php

index 17e58940ea158df40d7607037155fd8ba5596ef5..e5df09d0eac7e8d8cbb8e369b29b71e30eeb09ff 100644 (file)
@@ -62,7 +62,8 @@ function admin_init(App $a)
  * return the HTML for the pages of the admin panel.
  *
  * @param App $a
- *
+ * @throws ImagickException
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_post(App $a)
 {
@@ -161,6 +162,7 @@ function admin_post(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_content(App $a)
 {
@@ -312,6 +314,7 @@ function admin_content(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_tos(App $a)
 {
@@ -334,6 +337,7 @@ function admin_page_tos(App $a)
  * @brief Process send data from Admin TOS Page
  *
  * @param App $a
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_tos_post(App $a)
 {
@@ -366,6 +370,7 @@ function admin_page_tos_post(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_blocklist(App $a)
 {
@@ -406,6 +411,7 @@ function admin_page_blocklist(App $a)
  * @brief Process send data from Admin Blocklist Page
  *
  * @param App $a
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_blocklist_post(App $a)
 {
@@ -450,6 +456,8 @@ function admin_page_blocklist_post(App $a)
  * @brief Process data send by the contact block admin page
  *
  * @param App $a
+ * @throws ImagickException
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_contactblock_post(App $a)
 {
@@ -482,6 +490,7 @@ function admin_page_contactblock_post(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_contactblock(App $a)
 {
@@ -534,6 +543,7 @@ function admin_page_contactblock(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_deleteitem(App $a)
 {
@@ -558,6 +568,7 @@ function admin_page_deleteitem(App $a)
  * URLs like the full /display URL to make the process more easy for the admin.
  *
  * @param App $a
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_deleteitem_post(App $a)
 {
@@ -597,6 +608,7 @@ function admin_page_deleteitem_post(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_federation(App $a)
 {
@@ -783,6 +795,7 @@ function admin_page_federation(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_queue(App $a)
 {
@@ -825,7 +838,9 @@ function admin_page_queue(App $a)
  * The returned string holds the content of the page.
  *
  * @param App $a
+ * @param     $deferred
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_workerqueue(App $a, $deferred)
 {
@@ -875,6 +890,7 @@ function admin_page_workerqueue(App $a, $deferred)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_summary(App $a)
 {
@@ -993,6 +1009,7 @@ function admin_page_summary(App $a)
  * @brief Process send data from Admin Site Page
  *
  * @param App $a
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_site_post(App $a)
 {
@@ -1170,10 +1187,13 @@ function admin_page_site_post(App $a)
        $relay_server_tags = (!empty($_POST['relay_server_tags']) ? Strings::escapeTags(trim($_POST['relay_server_tags']))  : '');
        $relay_user_tags   = !empty($_POST['relay_user_tags']);
        $active_panel      = (!empty($_POST['active_panel'])      ? "#" . Strings::escapeTags(trim($_POST['active_panel'])) : '');
-       
+
+       /**
+        * @var $storagebackend \Friendica\Model\Storage\IStorage
+        */
        $storagebackend    = Strings::escapeTags(trim(defaults($_POST, 'storagebackend', '')));
        StorageManager::setBackend($storagebackend);
-       
+
        // save storage backend form
        if (!is_null($storagebackend) && $storagebackend != "") {
                $storage_opts = $storagebackend::getOptions();
@@ -1397,6 +1417,7 @@ function admin_page_site_post(App $a)
  *
  * @param  App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_site(App $a)
 {
@@ -1518,6 +1539,9 @@ function admin_page_site(App $a)
 
        /* storage backend */
        $storage_backends = StorageManager::listBackends();
+       /**
+        * @var $storage_current_backend \Friendica\Model\Storage\IStorage
+        */
        $storage_current_backend = StorageManager::getBackend();
 
        $storage_backends_choices = [
@@ -1677,7 +1701,8 @@ function admin_page_site(App $a)
  *
  * @param App $a
  * @return string
- * */
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ */
 function admin_page_dbsync(App $a)
 {
        $o = '';
@@ -1767,6 +1792,7 @@ function admin_page_dbsync(App $a)
  * @brief Process data send by Users admin page
  *
  * @param App $a
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_users_post(App $a)
 {
@@ -1884,6 +1910,7 @@ function admin_page_users_post(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_users(App $a)
 {
@@ -2082,6 +2109,7 @@ function admin_page_users(App $a)
  * @param App   $a
  * @param array $addons_admin A list of admin addon names
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_addons(App $a, array $addons_admin)
 {
@@ -2287,6 +2315,7 @@ function rebuild_theme_table($themes)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_themes(App $a)
 {
@@ -2457,6 +2486,7 @@ function admin_page_themes(App $a)
  * @brief Prosesses data send by Logs admin page
  *
  * @param App $a
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_logs_post(App $a)
 {
@@ -2492,6 +2522,7 @@ function admin_page_logs_post(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_logs(App $a)
 {
@@ -2548,6 +2579,7 @@ function admin_page_logs(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_viewlogs(App $a)
 {
@@ -2591,6 +2623,7 @@ function admin_page_viewlogs(App $a)
  * @brief Prosesses data send by the features admin page
  *
  * @param App $a
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_features_post(App $a)
 {
@@ -2638,6 +2671,7 @@ function admin_page_features_post(App $a)
  *
  * @param App $a
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function admin_page_features(App $a)
 {
index 0c7f4c2a6e820ddaac256dad38d16f9509bf0d59..7b446b5ead58610c1c76fa2229f850a195c4131b 100644 (file)
@@ -54,6 +54,9 @@ function dfrn_request_init(App $a)
  * in order to link our friend request with our own server cell.
  * After logging in, we click 'submit' to approve the linkage.
  *
+ * @param App $a
+ * @throws ImagickException
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function dfrn_request_post(App $a)
 {
index c6e669d0228d67d82d3aa2e3af624ebef0564947..3401359052fa29c39a4992e6c641740d87f35dc0 100644 (file)
@@ -14,6 +14,8 @@ use Friendica\Object\Image;
 
 /**
  * @param App $a
+ * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function fbrowser_content(App $a)
 {
index 976d7c18323b972139bf8a16807507e81ca11e70..f71977f074e190ffb648295545d5967917c38bae 100644 (file)
@@ -127,9 +127,10 @@ function hovercard_content()
  * @brief Get the raw content of a template file
  *
  * @param string $template The name of the template
- * @param string $root Directory of the template
+ * @param string $root     Directory of the template
  *
  * @return string|bool Output the raw content if existent, otherwise false
+ * @throws Exception
  */
 function get_template_content($template, $root = '')
 {
index 1c8525528bc3a133d88a134663518a96e08a88ad..5210f4ae8c60acf6f212961843d5f6b9be1ada85 100644 (file)
@@ -910,17 +910,18 @@ function item_content(App $a)
 
 /**
  * This function removes the tag $tag from the text $body and replaces it with
- * the appropiate link.
+ * the appropriate link.
  *
- * @param App $a Application instance @TODO is unused in this function's scope (excluding included files)
- * @param string $body the text to replace the tag in
- * @param string $inform a comma-seperated string containing everybody to inform
- * @param string $str_tags string to add the tag to
+ * @param string  $body     the text to replace the tag in
+ * @param string  $inform   a comma-seperated string containing everybody to inform
+ * @param string  $str_tags string to add the tag to
  * @param integer $profile_uid
- * @param string $tag the tag to replace
- * @param string $network The network of the post
+ * @param string  $tag      the tag to replace
+ * @param string  $network  The network of the post
  *
- * @return boolean true if replaced, false if not replaced
+ * @return array|bool ['replaced' => $replaced, 'contact' => $contact];
+ * @throws ImagickException
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function handle_tag(App $a, &$body, &$inform, &$str_tags, $profile_uid, $tag, $network = "")
 {
index 451821f9f1285a0969ee3ed5841cd5483166d0cd..57e05226db678478fdf744c49c269eb4f511e8d4 100644 (file)
@@ -25,6 +25,9 @@ use Friendica\Util\Proxy as ProxyUtils;
  * @param App $a App
  *
  * @return string
+ * @throws ImagickException
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @throws Exception
  */
 function match_content(App $a)
 {
index 015be2b17cb33b1132b2ead19907a0213bc66c92..626fb1149b8822a19b9b375b40aa2ca863ac630e 100644 (file)
@@ -200,15 +200,16 @@ function saved_searches($search)
  * Return selected tab from query
  *
  * urls -> returns
- *             '/network'                                      => $no_active = 'active'
- *             '/network?f=&order=comment'     => $comment_active = 'active'
- *             '/network?f=&order=post'        => $postord_active = 'active'
- *             '/network?f=&conv=1',           => $conv_active = 'active'
- *             '/network/new',                         => $new_active = 'active'
- *             '/network?f=&star=1',           => $starred_active = 'active'
- *             '/network?f=&bmark=1',          => $bookmarked_active = 'active'
+ *        '/network'                    => $no_active = 'active'
+ *        '/network?f=&order=comment'    => $comment_active = 'active'
+ *        '/network?f=&order=post'    => $postord_active = 'active'
+ *        '/network?f=&conv=1',        => $conv_active = 'active'
+ *        '/network/new',                => $new_active = 'active'
+ *        '/network?f=&star=1',        => $starred_active = 'active'
+ *        '/network?f=&bmark=1',        => $bookmarked_active = 'active'
  *
- * @return Array ($no_active, $comment_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active);
+ * @param App $a
+ * @return array ($no_active, $comment_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active);
  */
 function network_query_get_sel_tab(App $a)
 {
@@ -264,9 +265,11 @@ function network_query_get_sel_group(App $a)
 /**
  * @brief Sets the pager data and returns SQL
  *
- * @param App $a The global App
+ * @param App     $a      The global App
+ * @param Pager   $pager
  * @param integer $update Used for the automatic reloading
  * @return string SQL with the appropriate LIMIT clause
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function networkPager(App $a, Pager $pager, $update)
 {
@@ -300,6 +303,7 @@ function networkPager(App $a, Pager $pager, $update)
  * @brief Sets items as seen
  *
  * @param array $condition The array with the SQL condition
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function networkSetSeen($condition)
 {
@@ -319,9 +323,12 @@ function networkSetSeen($condition)
  *
  * @param App     $a      The global App
  * @param array   $items  Items of the conversation
+ * @param Pager   $pager
  * @param string  $mode   Display mode for the conversation
  * @param integer $update Used for the automatic reloading
+ * @param string  $ordering
  * @return string HTML of the conversation
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function networkConversation(App $a, $items, Pager $pager, $mode, $update, $ordering = '')
 {
@@ -386,10 +393,11 @@ function network_content(App $a, $update = 0, $parent = 0)
 /**
  * @brief Get the network content in flat view
  *
- * @param Pager   $pager
  * @param App     $a      The global App
  * @param integer $update Used for the automatic reloading
  * @return string HTML of the network content in flat view
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @global Pager  $pager
  */
 function networkFlatView(App $a, $update = 0)
 {
@@ -477,11 +485,12 @@ function networkFlatView(App $a, $update = 0)
 /**
  * @brief Get the network content in threaded view
  *
- * @global Pager   $pager
  * @param  App     $a      The global App
  * @param  integer $update Used for the automatic reloading
  * @param  integer $parent
  * @return string HTML of the network content in flat view
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @global Pager   $pager
  */
 function networkThreadedView(App $a, $update, $parent)
 {
@@ -1039,13 +1048,16 @@ function network_tabs(App $a)
  * of the page to make the correct asynchronous call. This is obtained through the Pager that was instantiated in
  * networkThreadedView or networkFlatView.
  *
- * @global Pager  $pager
- * @param  App    $a
  * @param  string $htmlhead The head tag HTML string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @global Pager  $pager
  */
 function network_infinite_scroll_head(App $a, &$htmlhead)
 {
        /// @TODO this will have to be converted to a static property of the converted Module\Network class
+       /**
+        * @var $pager Pager
+        */
        global $pager;
 
        if (PConfig::get(local_user(), 'system', 'infinite_scroll')
index 14ec4d42ce45748ea89c8150655347616b92a7b5..b982ccf084f9e4a6b3c8caa9f0d3aa7e67e1d3d1 100644 (file)
@@ -144,18 +144,18 @@ function parse_url_content(App $a)
  * Note: We have moved the function to ParseUrl.php. This function is only for
  * legacy support and will be remove in the future
  *
- * @param type $url The url of the page which should be scraped
- * @param type $no_guessing If true the parse doens't search for
- *    preview pictures
- * @param type $do_oembed The false option is used by the function fetch_oembed()
- *    to avoid endless loops
+ * @param string $url         The url of the page which should be scraped
+ * @param bool   $no_guessing If true the parse doens't search for
+ *                            preview pictures
+ * @param bool   $do_oembed   The false option is used by the function fetch_oembed()
+ *                            to avoid endless loops
  *
  * @return array which contains needed data for embedding
  *
- * @see ParseUrl::getSiteinfoCached()
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * @see   ParseUrl::getSiteinfoCached()
  *
- * @todo Remove this function after all Addons has been changed to use
- *    ParseUrl::getSiteinfoCached
+ * @deprecated since version 3.6 use ParseUrl::getSiteinfoCached instead
  */
 function parseurl_getsiteinfo_cached($url, $no_guessing = false, $do_oembed = true)
 {
index 872e9f935b1d7dfdec7182ecb5acbb352dc8f2cf..8b50b78c8312a5f9f664a7896d424b7b2699cd2c 100644 (file)
@@ -30,30 +30,31 @@ use Friendica\Util\XML;
  *
  * Expected JSON structure:
  * {
- *             "result": {
- *                     "intro": 0,
- *                     "mail": 0,
- *                     "net": 0,
- *                     "home": 0,
- *                     "register": 0,
- *                     "all-events": 0,
- *                     "all-events-today": 0,
- *                     "events": 0,
- *                     "events-today": 0,
- *                     "birthdays": 0,
- *                     "birthdays-today": 0,
- *                     "groups": [ ],
- *                     "forums": [ ],
- *                     "notify": 0,
- *                     "notifications": [ ],
- *                     "sysmsgs": {
- *                             "notice": [ ],
- *                             "info": [ ]
- *                     }
- *             }
- *     }
+ *        "result": {
+ *            "intro": 0,
+ *            "mail": 0,
+ *            "net": 0,
+ *            "home": 0,
+ *            "register": 0,
+ *            "all-events": 0,
+ *            "all-events-today": 0,
+ *            "events": 0,
+ *            "events-today": 0,
+ *            "birthdays": 0,
+ *            "birthdays-today": 0,
+ *            "groups": [ ],
+ *            "forums": [ ],
+ *            "notify": 0,
+ *            "notifications": [ ],
+ *            "sysmsgs": {
+ *                "notice": [ ],
+ *                "info": [ ]
+ *            }
+ *        }
+ *    }
  *
  * @param App $a The Friendica App instance
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function ping_init(App $a)
 {
@@ -393,6 +394,7 @@ function ping_init(App $a)
  *
  * @param int $uid User id
  * @return array Associative array of notifications
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function ping_get_notifications($uid)
 {
@@ -479,8 +481,8 @@ function ping_get_notifications($uid)
  * @param array $notifs          Complete list of notification
  * @param array $sysmsgs         List of system notice messages
  * @param array $sysmsgs_info    List of system info messages
- * @param array $groups_unseen   List of unseen group messages
- * @param array $forums_unseen   List of unseen forum messages
+ * @param array $groups_unseen   List of unseen group items
+ * @param array $forums_unseen   List of unseen forum items
  *
  * @return array XML-transform ready data array
  */
index 690abea15928d3c50c2e5087a432752ec501d187..b0258acbd71803b0ac4286cafd31eb5c465d065b 100644 (file)
@@ -12,8 +12,10 @@ use Friendica\Database\DBA;
 use Friendica\Protocol\Diaspora;
 
 /**
- * @param object $a App
+ * @param App $a App
  * @return void
+ * @throws ImagickException
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function receive_post(App $a)
 {
index ecea3400e271c3e1e8b4af722ebfe4c0f0567a77..bbb7de2e2efac4f2ad8807789f522b28d12dc204 100644 (file)
@@ -7,8 +7,9 @@ use Friendica\Content\Smilies;
 use Friendica\Core\System;
 
 /**
- * @param object $a App
+ * @param App $a App
  * @return string
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function smilies_content(App $a)
 {
index 24a41be95ce79a141b97545bb9693ec1476eaa0b..f6f2a9a29ebe99a614e07100ec494c8012a03588 100644 (file)
@@ -36,8 +36,10 @@ function tagrm_post(App $a)
 
 /**
  * Updates tags from an item
+ *
  * @param $item_id
  * @param $tags array
+ * @throws Exception
  */
 function update_tags($item_id, $tags){
        if (empty($item_id) || empty($tags)){
index ce260db185eb2aced9e5a9beba8d62b28a092025..1b2e379a9355db3b443eecbc816416b877c548fa 100644 (file)
@@ -1,8 +1,9 @@
 <?php
 /**
  * load view/theme/$current_theme/style.php with friendica contex
+ *
+ * @param App $a
  */
 function view_init($a){
        header("Content-Type: text/css");
                
index a4e9fa389b9f7720fb594bff71c3e2bef4482cd1..ebe693edf660875221c19cd8e492953c00ab5960 100644 (file)
@@ -108,7 +108,7 @@ class PConfig extends BaseObject
         * @param string $uid    The user_id
         * @param string $family The category of the configuration value
         * @param string $key    The configuration key to set
-        * @param string $value  The value to store
+        * @param mixed  $value  The value to store
         *
         * @return bool Operation success
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
index c5cffea67d9efa530431a8fbd5f8fc91a7f3bc59..7e4436b1e34c53af94b823b2b86219de4545d152 100644 (file)
@@ -131,7 +131,7 @@ class Renderer extends BaseObject
         * If $name is not defined, return engine defined by theme,
         * or default
         *
-        * @return object Template Engine instance
+        * @return ITemplateEngine Template Engine instance
         */
        public static function getTemplateEngine()
        {
index 651019e801335292d79da23c37e95481b3098c79..57259651c7916adb1e615605b19fafdacf086718 100644 (file)
@@ -410,7 +410,7 @@ class GContact
        }
 
        /**
-        * @param object  $uid   user
+        * @param int     $uid   user
         * @param integer $start optional, default 0
         * @param integer $limit optional, default 80
         * @return array
index c6381bea851c7f589c47f7a41877ccfdb3285590..dfda0634cc1392eccd5fa04c50432957831073b4 100644 (file)
@@ -63,7 +63,7 @@ class Image
 
        /**
         * @brief Constructor
-        * @param object  $data data
+        * @param string  $data
         * @param boolean $type optional, default null
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         * @throws \ImagickException
@@ -127,7 +127,7 @@ class Image
        }
 
        /**
-        * @param object $data data
+        * @param string $data data
         * @return boolean
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         * @throws \ImagickException
index 5136bc72c1b8231aa75b8bb0c6e7a6bed5307c24..bc127d4086db89e1c686ad4a7bb7988810c086bd 100644 (file)
@@ -1212,9 +1212,10 @@ class Transmitter
        /**
         * Transmits a given activity to a target
         *
-        * @param array   $activity
-        * @param string  $target Target profile
-        * @param integer $uid    User ID
+        * @param string  $activity Type name
+        * @param string  $target   Target profile
+        * @param integer $uid      User ID
+        * @return bool
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         * @throws \ImagickException
         * @throws \Exception