Smart Link PHP 8.0

Permalink Browser Info Environment
Ladies and Gentlemen

after the PHP update to PHP 8.0, I can no longer use a smart link. This is the error message:

Undefined array key "parent"

private function linkTypeClass($type)
{
$parent = $this->data['parent'] ? $this->data['parent']['slug'] . '-' : '';

return 'ft-smart-link-' . $parent . $this->data['slug'] . '-' . $type . '-selector';
}

1 Attachment

Type: Ticket
Status: Resolved
ultrapixel
View Replies:
ramonleenders replied on at Permalink Reply
ramonleenders
Hi there,

Just pushed version 4.1.2 to fix this specific issue. Let me know if this worked out for you or not!

Kind regards
Ramon
ultrapixel replied on at Permalink Reply 1 Attachment
ultrapixel
Hello,

thanks for the fast reply, now i get this error:


Undefined variable $Link_File

Details

/html/application/blocks/link_test/form.php(40): Whoops\Exception\ErrorException->null
/html/application/blocks/link_test/form.php(40): Whoops\Run->handleError
/html/concrete/src/Block/View/BlockView.php(380): null->include
/html/application/blocks/link_test/add.php(2): Concrete\Core\Block\View\BlockView->inc
/html/concrete/src/Block/View/BlockView.php(267): null->include
/html/concrete/src/View/AbstractView.php(164): Concrete\Core\Block\View\BlockView->renderViewContents
/html/concrete/views/dialogs/page/add_block.php(102): Concrete\Core\View\AbstractView->render
/html/concrete/src/View/View.php(318): null->include
/html/concrete/src/View/View.php(296): Concrete\Core\View\View->renderInnerContents
/html/concrete/src/View/DialogView.php(34): Concrete\Core\View\View->renderViewContents
/html/concrete/src/View/AbstractView.php(164): Concrete\Core\View\DialogView->renderViewContents
/html/concrete/src/Routing/ControllerRouteAction.php(82): Concrete\Core\View\AbstractView->render
/html/concrete/src/Http/RouteDispatcher.php(37): Concrete\Core\Routing\ControllerRouteAction->execute
/html/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\RouteDispatcher->dispatch
/html/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\DispatcherDelegate->next
/html/concrete/src/Http/DefaultDispatcher.php(127): Concrete\Core\Http\Middleware\MiddlewareStack->process
/html/concrete/src/Http/DefaultDispatcher.php(60): Concrete\Core\Http\DefaultDispatcher->handleDispatch
/html/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\DefaultDispatcher->dispatch
/html/concrete/src/Http/Middleware/FrameOptionsMiddleware.php(39): Concrete\Core\Http\Middleware\DispatcherDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\FrameOptionsMiddleware->process
/html/concrete/src/Http/Middleware/StrictTransportSecurityMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\StrictTransportSecurityMiddleware->process
/html/concrete/src/Http/Middleware/ContentSecurityPolicyMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ContentSecurityPolicyMiddleware->process
/html/concrete/src/Http/Middleware/CookieMiddleware.php(35): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\CookieMiddleware->process
/html/concrete/src/Http/Middleware/ApplicationMiddleware.php(29): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ApplicationMiddleware->process
/html/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/DefaultServer.php(85): Concrete\Core\Http\Middleware\MiddlewareStack->process
/html/concrete/src/Foundation/Runtime/Run/DefaultRunner.php(125): Concrete\Core\Http\DefaultServer->handleRequest
/html/concrete/src/Foundation/Runtime/DefaultRuntime.php(102): Concrete\Core\Foundation\Runtime\Run\DefaultRunner->run
/html/concrete/dispatcher.php(45): Concrete\Core\Foundation\Runtime\DefaultRuntime->run
/html/index.php(2): null->require
ramonleenders replied on at Permalink Reply
ramonleenders
This one should be fixed too now in the latest version, so please update!

Please let me know once you have issues elsewhere and sorry for the inconveniences meanwhile. Not fully migrated to PHP8 everywhere and not running into issues just yet.

Kind regards
Ramon
ultrapixel replied on at Permalink Reply
ultrapixel
I have updated the packages and they now have the following versions:

Block Designer v.4.1.4
Block Designer Pro v.4.1.3

I still get the following error when I embed the block in the webpage. This only occurs when I have selected a smart link in Black Designer Pro:

Undefined variable $Link_File
Details
/html/application/blocks/link_test/form.php(40): Whoops\Exception\ErrorException->null
/html/application/blocks/link_test/form.php(40): Whoops\Run->handleError
/html/concrete/src/Block/View/BlockView.php(380): null->include
/html/application/blocks/link_test/add.php(2): Concrete\Core\Block\View\BlockView->inc
/html/concrete/src/Block/View/BlockView.php(267): null->include
/html/concrete/src/View/AbstractView.php(164): Concrete\Core\Block\View\BlockView->renderViewContents
/html/concrete/views/dialogs/page/add_block.php(102): Concrete\Core\View\AbstractView->render
/html/concrete/src/View/View.php(318): null->include
/html/concrete/src/View/View.php(296): Concrete\Core\View\View->renderInnerContents
/html/concrete/src/View/DialogView.php(34): Concrete\Core\View\View->renderViewContents
/html/concrete/src/View/AbstractView.php(164): Concrete\Core\View\DialogView->renderViewContents
/html/concrete/src/Routing/ControllerRouteAction.php(82): Concrete\Core\View\AbstractView->render
/html/concrete/src/Http/RouteDispatcher.php(37): Concrete\Core\Routing\ControllerRouteAction->execute
/html/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\RouteDispatcher->dispatch
/html/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\DispatcherDelegate->next
/html/concrete/src/Http/DefaultDispatcher.php(127): Concrete\Core\Http\Middleware\MiddlewareStack->process
/html/concrete/src/Http/DefaultDispatcher.php(60): Concrete\Core\Http\DefaultDispatcher->handleDispatch
/html/concrete/src/Http/Middleware/DispatcherDelegate.php(39): Concrete\Core\Http\DefaultDispatcher->dispatch
/html/concrete/src/Http/Middleware/FrameOptionsMiddleware.php(39): Concrete\Core\Http\Middleware\DispatcherDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\FrameOptionsMiddleware->process
/html/concrete/src/Http/Middleware/StrictTransportSecurityMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\StrictTransportSecurityMiddleware->process
/html/concrete/src/Http/Middleware/ContentSecurityPolicyMiddleware.php(36): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ContentSecurityPolicyMiddleware->process
/html/concrete/src/Http/Middleware/CookieMiddleware.php(35): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\CookieMiddleware->process
/html/concrete/src/Http/Middleware/ApplicationMiddleware.php(29): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/Middleware/MiddlewareDelegate.php(50): Concrete\Core\Http\Middleware\ApplicationMiddleware->process
/html/concrete/src/Http/Middleware/MiddlewareStack.php(86): Concrete\Core\Http\Middleware\MiddlewareDelegate->next
/html/concrete/src/Http/DefaultServer.php(85): Concrete\Core\Http\Middleware\MiddlewareStack->process
/html/concrete/src/Foundation/Runtime/Run/DefaultRunner.php(125): Concrete\Core\Http\DefaultServer->handleRequest
/html/concrete/src/Foundation/Runtime/DefaultRuntime.php(102): Concrete\Core\Foundation\Runtime\Run\DefaultRunner->run
/html/concrete/dispatcher.php(45): Concrete\Core\Foundation\Runtime\DefaultRuntime->run
/html/index.php(2): null->require
ramonleenders replied on at Permalink Reply
ramonleenders
- You have to uninstall the Block Type first
- Then load the configuration of that block type into block designer (/index.php/dashboard/blocks/block_designer/block_config)
- Then regenerate that block type (it will give a notice to remove the directory, click the link to do so)
- Now (re)generate the block type since it is removed from your installation and ready to be generated
- Then install the block type like you normally install block types

After doing these steps, it should work.

You can not simply update the Add-Ons and it will work, because the code is already generated and lives in your blocks directory.

Let me know if that worked out for you!

Kind regards
Ramon
ultrapixel replied on at Permalink Reply
ultrapixel
It works, thank you :)

concrete5 Environment Information

# Concrete Version
Core Version - 9.1.3
Version Installed - 9.1.3
Database Version - 20220908074900

# Hostname
r29837-clump0001-web

# Environment
production

# Database Information
Version: 8.0.25-15
SQL Mode:

# Concrete Packages
Block Designer (4.1.2), Block Designer Pro (4.1.1)

# Concrete Overrides
blocks/link/icon.png, blocks/link/view.php, blocks/link/composer.php, blocks/link/db.xml, blocks/link/edit.php, blocks/link/controller.php, blocks/link/config.json, blocks/link/add.php, blocks/link/form.php, blocks/link, themes/spa_adria/page_forbidden.php, themes/spa_adria/images, themes/spa_adria/default.php, themes/spa_adria/login.php, themes/spa_adria/thumbnail.png, themes/spa_adria/full.php, themes/spa_adria/elements/footer_bottom.php, themes/spa_adria/elements/footer.php, themes/spa_adria/elements/header.php, themes/spa_adria/elements/header_top.php, themes/spa_adria/elements/multiple_area.php, themes/spa_adria/elements, themes/spa_adria/js/main.js, themes/spa_adria/js, themes/spa_adria/page_theme.php, themes/spa_adria/css/fonts/open-sans-v29-latin-regular.ttf, themes/spa_adria/css/fonts/open-sans-v29-latin-600.ttf, themes/spa_adria/css/fonts/open-sans-v29-latin-regular.woff2, themes/spa_adria/css/fonts/open-sans-v29-latin-regular.woff, themes/spa_adria/css/fonts/open-sans-v29-latin-700.ttf, themes/spa_adria/css/fonts/open-sans-v29-latin-600.woff, themes/spa_adria/css/fonts/open-sans-v29-latin-700.svg, themes/spa_adria/css/fonts/open-sans-v29-latin-700.eot, themes/spa_adria/css/fonts/open-sans-v29-latin-regular.eot, themes/spa_adria/css/fonts/open-sans-v29-latin-regular.svg, themes/spa_adria/css/fonts/open-sans-v29-latin-600.svg, themes/spa_adria/css/fonts/open-sans-v29-latin-700.woff, themes/spa_adria/css/fonts/open-sans-v29-latin-600.woff2, themes/spa_adria/css/fonts/open-sans-v29-latin-600.eot, themes/spa_adria/css/fonts/open-sans-v29-latin-700.woff2, themes/spa_adria/css/fonts, themes/spa_adria/css/styles.xml, themes/spa_adria/css/webfonts/fa-brands-400.ttf, themes/spa_adria/css/webfonts/fa-regular-400.woff, themes/spa_adria/css/webfonts/fa-brands-400.woff2, themes/spa_adria/css/webfonts/fa-solid-900.woff2, themes/spa_adria/css/webfonts/fa-solid-900.eot, themes/spa_adria/css/webfonts/fa-solid-900.svg, themes/spa_adria/css/webfonts/fa-regular-400.eot, themes/spa_adria/css/webfonts/fa-regular-400.svg, themes/spa_adria/css/webfonts/fa-solid-900.woff, themes/spa_adria/css/webfonts/fa-regular-400.woff2, themes/spa_adria/css/webfonts/fa-brands-400.woff, themes/spa_adria/css/webfonts/fa-brands-400.eot, themes/spa_adria/css/webfonts/fa-brands-400.svg, themes/spa_adria/css/webfonts/fa-solid-900.ttf, themes/spa_adria/css/webfonts/fa-regular-400.ttf, themes/spa_adria/css/webfonts, themes/spa_adria/css/main.less, themes/spa_adria/css/build/bootstrap-3.2.0/navbar.less, themes/spa_adria/css/build/bootstrap-3.2.0/pagination.less, themes/spa_adria/css/build/bootstrap-3.2.0/print.less, themes/spa_adria/css/build/bootstrap-3.2.0/variables.less, themes/spa_adria/css/build/bootstrap-3.2.0/panels.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/image.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/progress-bar.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/opacity.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/labels.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/size.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/table-row.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/border-radius.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/grid.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/resize.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/list-group.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/buttons.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/alerts.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/pagination.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/reset-filter.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/text-emphasis.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/background-variant.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/clearfix.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/center-block.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/grid-framework.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/text-overflow.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/nav-vertical-align.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/responsive-visibility.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/vendor-prefixes.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/tab-focus.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/forms.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/panels.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/hide-text.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/nav-divider.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins/gradients.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins, themes/spa_adria/css/build/bootstrap-3.2.0/jumbotron.less, themes/spa_adria/css/build/bootstrap-3.2.0/list-group.less, themes/spa_adria/css/build/bootstrap-3.2.0/progress-bars.less, themes/spa_adria/css/build/bootstrap-3.2.0/modals.less, themes/spa_adria/css/build/bootstrap-3.2.0/component-animations.less, themes/spa_adria/css/build/bootstrap-3.2.0/navs.less, themes/spa_adria/css/build/bootstrap-3.2.0/forms.less, themes/spa_adria/css/build/bootstrap-3.2.0/button-groups.less, themes/spa_adria/css/build/bootstrap-3.2.0/carousel.less, themes/spa_adria/css/build/bootstrap-3.2.0/grid.less, themes/spa_adria/css/build/bootstrap-3.2.0/normalize.less, themes/spa_adria/css/build/bootstrap-3.2.0/pager.less, themes/spa_adria/css/build/bootstrap-3.2.0/buttons.less, themes/spa_adria/css/build/bootstrap-3.2.0/thumbnails.less, themes/spa_adria/css/build/bootstrap-3.2.0/media.less, themes/spa_adria/css/build/bootstrap-3.2.0/code.less, themes/spa_adria/css/build/bootstrap-3.2.0/tooltip.less, themes/spa_adria/css/build/bootstrap-3.2.0/alerts.less, themes/spa_adria/css/build/bootstrap-3.2.0/theme.less, themes/spa_adria/css/build/bootstrap-3.2.0/scaffolding.less, themes/spa_adria/css/build/bootstrap-3.2.0/mixins.less, themes/spa_adria/css/build/bootstrap-3.2.0/close.less, themes/spa_adria/css/build/bootstrap-3.2.0/bootstrap.less, themes/spa_adria/css/build/bootstrap-3.2.0/glyphicons.less, themes/spa_adria/css/build/bootstrap-3.2.0/dropdowns.less, themes/spa_adria/css/build/bootstrap-3.2.0/badges.less, themes/spa_adria/css/build/bootstrap-3.2.0/breadcrumbs.less, themes/spa_adria/css/build/bootstrap-3.2.0/tables.less, themes/spa_adria/css/build/bootstrap-3.2.0/popovers.less, themes/spa_adria/css/build/bootstrap-3.2.0/labels.less, themes/spa_adria/css/build/bootstrap-3.2.0/responsive-embed.less, themes/spa_adria/css/build/bootstrap-3.2.0/input-groups.less, themes/spa_adria/css/build/bootstrap-3.2.0/responsive-utilities.less, themes/spa_adria/css/build/bootstrap-3.2.0/type.less, themes/spa_adria/css/build/bootstrap-3.2.0/utilities.less, themes/spa_adria/css/build/bootstrap-3.2.0/wells.less, themes/spa_adria/css/build/bootstrap-3.2.0, themes/spa_adria/css/build/mmenu-light.css, themes/spa_adria/css/build/fonts.less, themes/spa_adria/css/build/webfonts/fa-solid-900.ttf, themes/spa_adria/css/build/webfonts/fa-solid-900.woff, themes/spa_adria/css/build/webfonts/fa-brands-400.svg, themes/spa_adria/css/build/webfonts/fa-brands-400.woff2, themes/spa_adria/css/build/webfonts/fa-brands-400.eot, themes/spa_adria/css/build/webfonts/fa-regular-400.svg, themes/spa_adria/css/build/webfonts/fa-regular-400.eot, themes/spa_adria/css/build/webfonts/fa-solid-900.woff2, themes/spa_adria/css/build/webfonts/fa-regular-400.woff, themes/spa_adria/css/build/webfonts/fa-regular-400.woff2, themes/spa_adria/css/build/webfonts/fa-brands-400.ttf, themes/spa_adria/css/build/webfonts/fa-solid-900.svg, themes/spa_adria/css/build/webfonts/fa-solid-900.eot, themes/spa_adria/css/build/webfonts/fa-brands-400.woff, themes/spa_adria/css/build/webfonts/fa-regular-400.ttf, themes/spa_adria/css/build/webfonts, themes/spa_adria/css/build/fontawesome/_mixins.less, themes/spa_adria/css/build/fontawesome/_fixed-width.less, themes/spa_adria/css/build/fontawesome/_stacked.less, themes/spa_adria/css/build/fontawesome/_core.less, themes/spa_adria/css/build/fontawesome/_variables.less, themes/spa_adria/css/build/fontawesome/_rotated-flipped.less, themes/spa_adria/css/build/fontawesome/regular.less, themes/spa_adria/css/build/fontawesome/_icons.less, themes/spa_adria/css/build/fontawesome/brands.less, themes/spa_adria/css/build/fontawesome/_list.less, themes/spa_adria/css/build/fontawesome/_bordered-pulled.less, themes/spa_adria/css/build/fontawesome/_larger.less, themes/spa_adria/css/build/fontawesome/fontawesome.less, themes/spa_adria/css/build/fontawesome/_animated.less, themes/spa_adria/css/build/fontawesome/_screen-reader.less, themes/spa_adria/css/build/fontawesome/solid.less, themes/spa_adria/css/build/fontawesome/_shims.less, themes/spa_adria/css/build/fontawesome/v4-shims.less, themes/spa_adria/css/build/fontawesome, themes/spa_adria/css/build/style.less, themes/spa_adria/css/build/reset.less, themes/spa_adria/css/build, themes/spa_adria/css/images, themes/spa_adria/css, themes/spa_adria/page_not_found.php, themes/spa_adria/view.php, themes/spa_adria, src/HTML/LazyImage.php, src/HTML/Ansprechpartner.php, src/HTML/Schulungen.php, src/HTML

# Concrete Cache Settings
Block Cache - Off
Overrides Cache - Off
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).

# Server Software
Apache

# Server API
fpm-fcgi

# PHP Version
8.0.26

# PHP Extensions
apcu, bcmath, bz2, calendar, cgi-fcgi, Core, ctype, curl, date, dom, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, imagick, imap, intl, json, ldap, libxml, mbstring, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, Reflection, session, shmop, SimpleXML, soap, sockets, sodium, SPL, sqlite3, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, xml, xmlreader, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib

# PHP Settings
max_execution_time - 240
log_errors_max_len - 1024
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 240
max_input_vars - 1500
memory_limit - 256M
post_max_size - 32M
upload_max_filesize - 32M
zend.exception_string_param_max_len - 0
ldap.max_links - Unlimited
mbstring.regex_retry_limit - 1000000
mbstring.regex_stack_limit - 100000
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
pgsql.max_links - Unlimited
pgsql.max_persistent - Unlimited
session.cache_limiter - <i>no value</i>
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5
unserialize_max_depth - 4096
opcache.jit_bisect_limit - 0
opcache.jit_max_exit_counters - 8192
opcache.jit_max_loop_unrolls - 8
opcache.jit_max_polymorphic_calls - 2
opcache.jit_max_recursive_calls - 2
opcache.jit_max_recursive_returns - 2
opcache.jit_max_root_traces - 1024
opcache.jit_max_side_traces - 128
opcache.max_accelerated_files - 10000
opcache.max_file_size - 0
opcache.max_wasted_percentage - 5

Browser User-Agent String

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36

Hide Post Content

This will replace the post content with the message: "Content has been removed by an Administrator"

Hide Content

Request Refund

You may not request a refund that is not currently owned by you.