Skip to content

Technical Plugin CustomizeAdvanced

Daniel Neto edited this page Oct 29, 2026 · 1 revision

Technical: CustomizeAdvanced plugin

Defines advanced settings consumed by multiple Streamer components.

Audience: developers, advanced administrators and AI-assisted diagnosis. Plugin catalog.

Source baseline

  • Review date: 2026-10-29. Method: static source analysis; runtime/provider behavior was not exercised.
  • Code ownership: AVideo Streamer repository.
  • Reported version: 1.0.
  • Source revision: 7d48f2dfc0289236718a3f9fba7c5ffecff4a37f.
  • Entry class file: CustomizeAdvanced.php.

Confirm the installed plugin version independently of the Streamer version. Configuration defaults below are not a dump of this installation's saved settings.

Behavior and operational checks

A setting's definition does not identify every workflow that consumes it. Search its exact field name in the relevant component and distinguish stored data, default construction and the effective runtime value. Structured selectors can use type/value objects.

Dependencies

Plugin Required by declaration Source reason
VideoHLS Optional Optional HLS-related advanced customization options
Scheduler Optional Optional scheduled task customization options
Subscription Optional Optional subscription-related menu customization

Literal runtime plugin references: Scheduler, Subscription, VideoHLS. These calls do not mean every referenced plugin is mandatory.

Hook integration

Override Implementation
getTags() CustomizeAdvanced.php:17
getDataObjectDeprecated() CustomizeAdvanced.php:42
getDataObjectExperimental() CustomizeAdvanced.php:53
getDataObjectAdvanced() CustomizeAdvanced.php:59
navBar() CustomizeAdvanced.php:602
getHelp() CustomizeAdvanced.php:611
getModeYouTube($videos_id) CustomizeAdvanced.php:618
getEmbed($videos_id) CustomizeAdvanced.php:643
getFooterCode() CustomizeAdvanced.php:647
getUploadMenuButton() CustomizeAdvanced.php:675
getHTMLMenuRight() CustomizeAdvanced.php:686
getHTMLMenuLeft() CustomizeAdvanced.php:702
getVideoWhereClause() CustomizeAdvanced.php:710
getVideosManagerListButton() CustomizeAdvanced.php:723
getHeadCode() CustomizeAdvanced.php:732
onReceiveFile($videos_id) CustomizeAdvanced.php:759
afterNewVideo($videos_id) CustomizeAdvanced.php:764
getManagerVideosAddNew() CustomizeAdvanced.php:776
getManagerVideosEdit() CustomizeAdvanced.php:782
getManagerVideosEditField($type='<string>') CustomizeAdvanced.php:788
saveVideosAddNew($post, $videos_id) CustomizeAdvanced.php:798
showAds($videos_id): bool CustomizeAdvanced.php:896
getGalleryActionButton($videos_id) CustomizeAdvanced.php:900
getWatchActionButton($videos_id) CustomizeAdvanced.php:905
executeEveryHour() CustomizeAdvanced.php:943

Configuration assignments

These are direct assignments inside getEmptyDataObject(), not evaluated effective defaults. Stored plugins.object_data, globals, structured values and conditional branches may alter runtime behavior. Private/default credential values are omitted.

Field Literal default or expression type Literal source label/help Evidence
enableVideoModeration false Video moderation: When enabled, leaves all videos unpublished. Only the administrator and video moderators have the authority to activate and make these videos public source
logoMenuBarURL "" — source
encoderNetwork Computed/structured; inspect source — source
useEncoderNetworkRecomendation false — source
doNotShowEncoderNetwork true — source
doNotShowUploadButton false — source
uploadButtonDropdownIcon "fas fa-video" — source
uploadButtonDropdownText "" — source
encoderNetworkLabel "" — source
doNotShowUploadMP4Button true Disable direct upload source
disablePDFUpload false — source
disableImageUpload false — source
disableZipUpload true — source
disableMP4Upload false — source
disableMP3Upload false — source
uploadMP4ButtonLabel "" — source
doNotShowImportMP4Button true — source
importMP4ButtonLabel "" — source
doNotShowEncoderButton false — source
encoderButtonLabel "" — source
showLocalEncoder true Show Local Encoder: Show the Local Encoder download page in upload screens and recommend it when URL imports fail. The Web Encoder remains required for AVideo media services. source
doNotShowEmbedButton false — source
embedBackgroundColor "white" — source
embedButtonLabel "" — source
embedCodeTemplate Computed/structured; inspect source — source
embedCodeTemplateObject Computed/structured; inspect source — source
htmlCodeTemplate Computed/structured; inspect source — source
BBCodeTemplate Computed/structured; inspect source — source
embedControls Computed/structured; inspect source — source
embedAutoplay false — source
embedLoop false — source
embedStartMuted false — source
embedShowinfo true — source
doNotShowEncoderHLS false — source
doNotShowEncoderResolutionLow false — source
doNotShowEncoderResolutionSD false — source
doNotShowEncoderResolutionHD false — source
openEncoderInIFrame false — source
showOnlyEncoderAutomaticResolutions true — source
doNotShowEncoderAutomaticHLS false — source
doNotShowEncoderAutomaticMP4 false — source
doNotShowEncoderAutomaticWebm false — source
doNotShowEncoderAutomaticAudio false — source
singleResolution Computed/structured; inspect source Save MP4 videos in a single resolution: Select the maximum resolution to save each video. Videos will not be upscaled to higher resolutions (Must enable automatic resolutions) source
saveOriginalVideoResolution false Save the original video resolution: This option will make your encoder at the end trancode the video into the original format resolution source
doNotShowExtractAudio false — source
doNotShowCreateVideoSpectrum false — source
doNotShowLeftMenuAudioAndVideoButtons false — source
doNotShowWebsiteOnContactForm false — source
doNotUseXsendFile false — source
makeVideosInactiveAfterEncode false — source
makeVideosUnlistedAfterEncode false — source
defaultVideoStatus Computed/structured; inspect source Default video status: When you submit a video that will be the default status source
usePermalinks false Do not show video title on URL: This option is not good for SEO, but makes the URL clear source
canonicalURLType Computed/structured; inspect source — source
disableAnimatedGif false — source
removeBrowserChannelLinkFromMenu false — source
removeBrowserChannelPerGroupLinkFromMenu true — source
browserChannelPerGroupLinkFromMenuLabel 'Channels by Group' — source
EnableMinifyJS false — source
disableShareAndPlaylist false — source
disableShareOnly false — source
disableEmailSharing false — source
splitBulkEmailSend 50 — source
disableComments false — source
commentsMaxLength 200 — source
commentsNoIndex false — source
disableYoutubePlayerIntegration false — source
utf8Encode false — source
utf8Decode false — source
menuBarHTMLCode Computed/structured; inspect source — source
underMenuBarHTMLCode Computed/structured; inspect source — source
footerHTMLCode Computed/structured; inspect source — source
signInOnRight true — source
signInOnLeft true — source
forceCategory false — source
showCategoryTopImages true — source
autoPlayAjax false — source
disableInstallPWAButton false — source
disablePlayLink false — source
disableHelpLeftMenu false — source
disableAboutLeftMenu false — source
disableContactLeftMenu false — source
disableAnimations false — source
disableNavbar false — source
disableNavBarInsideIframe true — source
autoHideNavbar true — source
autoHideNavbarInSeconds 0 — source
videosCDN "" — source
useFFMPEGToGenerateThumbs false — source
thumbsWidthPortrait 170 — source
thumbsHeightPortrait 250 — source
thumbsWidthLandscape 640 — source
thumbsHeightLandscape 360 — source
usePreloadLowResolutionImages false — source
showImageDownloadOption false — source
doNotDisplayViews false — source
doNotDisplayLikes false — source
doNotDisplayCategoryLeftMenu false — source
doNotDisplayCategory false — source
doNotDisplayGroupsTags false — source
doNotDisplayPluginsTags false — source
showNotRatedLabel false — source
showShareMenuOpenByDefault false — source
showEllipsisMenuOnVideoItem true — source
showCreationTimeOnVideoItem true — source
showChannelPhotoOnVideoItem true — source
showChannelNameOnVideoItem true — source
askRRatingConfirmationBeforePlay_G false — source
askRRatingConfirmationBeforePlay_PG false — source
askRRatingConfirmationBeforePlay_PG13 false — source
askRRatingConfirmationBeforePlay_R false — source
askRRatingConfirmationBeforePlay_NC17 true — source
askRRatingConfirmationBeforePlay_MA true — source
filterRRating false — source
doNotShowLeftHomeButton false — source
doNotShowLeftTrendingButton false — source
CategoryLabel "Categories" — source
CategoryShowOnlySuggested false — source
ShowAllVideosOnCategory false — source
hideCategoryVideosCount false — source
hideEditAdvancedFromVideosManager false — source
categoryLiveCount true — source
paidOnlyUsersTellWhatVideoIs false Only Paid Users Can see option: This will create an option on videos manager to only let paid users to see this video source
paidOnlyShowLabels false — source
paidOnlyLabel "Premium" — source
paidOnlyFreeLabel "Free" — source
removeSubscribeButton false — source
removeThumbsUpAndDown false — source
videoNotFoundText Computed/structured; inspect source — source
siteMapRowsLimit 100 — source
siteMapUTF8Fix false — source
showPrivateVideosOnSitemap false — source
disableSiteMapVideoDescription false — source
enableOldPassHashCheck true — source
disableHTMLDescription false — source
disableShowMOreLessDescription false — source
disableVideoSwap false — source
makeSwapVideosOnlyForAdmin false — source
disableCopyEmbed false — source
disableDownloadVideosList false — source
videosManegerRowCount Computed/structured; inspect source — source
videosListRowCount Computed/structured; inspect source — source
videosManegerBulkActionButtons true — source
twitter_site Computed/structured; inspect source — source
twitter_player true — source
twitter_summary_large_image false — source
footerStyle Computed/structured; inspect source — source
disableVideoTags false — source
doNotAllowEncoderOverwriteStatus false — source
doNotAllowUpdateVideoId false — source
makeVideosIDHarderToGuess false — source
timeZone Computed/structured; inspect source — source
keywords Private setting; value omitted — source
doNotSaveCacheOnFilesystem false — source
robotsTXT Computed/structured; inspect source robots.txt file content: robots.txt is a plain text file that follows the Robots Exclusion Standard. A robots.txt file consists of one or more rules. Each rule blocks (or allows) access for a given crawler to a specified file path in that website. source
beforeNavbar Computed/structured; inspect source Add some code before the navbar HTML source
trendingOnLastDays Computed/structured; inspect source Trending Days: For the result of trending videos, use the statistics contained in the last few days source
removeVideoList false — source
sortVideoListByDefault Computed/structured; inspect source Sort Video List By Default source
showVideoDownloadedLink false Show video Downloaded Link: Show the video source URL above the video description source
videosForKids true — source
autoConvertVideosToMP3 false — source
allowDownloadMP3 true — source
disableFeeds false — source
rssItunesCategory Computed/structured; inspect source RSS/Podcast iTunes Category: The Apple Podcasts / iTunes category used on the tag of the RSS feed source
ffmpegParameters "-c:v libx264 -preset veryfast -crf 23 -c:a aac -b:a 128k" FFmpeg conversion parameters: Output options used when FFmpeg converts a video (e.g. HLS to MP4 downloads). Only allowed options separated by spaces are accepted (codecs, preset, crf, bitrates, audio rate/channels, scale, faststart); anything else is rejected and the default profile is used. source
showHumanTimingOnVideoItem true Show human timing on video item: This will show the time since the video was uploaded in a human readable format, like "2 days ago" instead of the exact date and time source
showHumanTimingOnVideoItemDateFormat "Y-m-d H:i" Show human timing on video item date format: This will set the date format for the human timing, you can use any format supported by PHP date function, like "Y-m-d H:i:s" source
verifySSLCertificates false — source

Files and request surface

This inventory distinguishes implementation files from an API specification. Includes, templates, callbacks and CLI workers are not interchangeable HTTP endpoints. Request-field names below are direct source references, not a complete schema or permission declaration.

File Source role Direct request fields observed
CustomizeAdvanced.php plugin entry class rrating
LocalEncoderLogin.php class/helper implementation —
actionButton.php PHP page/include/worker; inspect caller playlist_id
actionButtonGallery.php PHP page/include/worker; inspect caller —
advancedCustom.json.php JSON entry point; inspect caller and guard —
autoHideNavbar.js browser/worker JavaScript; verify loader —
autoHideNavbarInSeconds.js browser/worker JavaScript; verify loader —
confirmRating.php PHP page/include/worker; inspect caller —
deleteThumbs.php PHP page/include/worker; inspect caller videos_id
getManagerVideosAddNew.js browser/worker JavaScript; verify loader —
getManagerVideosEdit.js browser/worker JavaScript; verify loader —
localEncoder.php PHP page/include/worker; inspect caller —
localEncoderLauncher.js browser/worker JavaScript; verify loader —
localEncoderLogin.json.php JSON entry point; inspect caller and guard action, challenge, code, verifier
localEncoderPromo.php PHP page/include/worker; inspect caller —
managerVideosEdit.php PHP page/include/worker; inspect caller —
managerVideosEditSEO.php PHP page/include/worker; inspect caller —
menuLeft.php PHP page/include/worker; inspect caller —
menuRight.php PHP page/include/worker; inspect caller —
mvideo.script.js browser/worker JavaScript; verify loader —
updateDiskUsage.php PHP page/include/worker; inspect caller —

Data and migrations

No CREATE TABLE names were extracted from available plugin SQL. The plugin can still use core tables, PHP-created schema or another component's data. Apply installation/update behavior through the owning plugin; this reference is not a script for running historical migrations manually.

Main-file named symbols

Visibility and implementation semantics must be checked in source. Nonempty string defaults are represented as . This is a symbol reference, not a stable public API promise.

Function or method Source
getPluginDependencies() 9
getTags() 17
getDescription() 24
getName() 30
getUUID() 34
getPluginVersion() 38
getDataObjectDeprecated() 42
getDataObjectExperimental() 53
getDataObjectAdvanced() 59
getEmptyDataObject() 186
showDirectUploadButton() 561
directUploadFiletypes() 578
navBar() 602
getHelp() 611
getModeYouTube($videos_id) 618
getEmbed($videos_id) 643
getFooterCode() 647
getLocalEncoderURL() 666
getUploadMenuButton() 675
getHTMLMenuRight() 686
getHTMLMenuLeft() 702
getVideoWhereClause() 710
getVideosManagerListButton() 723
getHeadCode() 732
onReceiveFile($videos_id) 759
afterNewVideo($videos_id) 764
createMP3($videos_id) 769
getManagerVideosAddNew() 776
getManagerVideosEdit() 782
getManagerVideosEditField($type='<string>') 788
saveVideosAddNew($post, $videos_id) 798
setDoNotShowAds($videos_id, $doNotShowAdsOnThisVideo) 813
setDoNotShowAdsOnChannel($videos_id, $doNotShowAdsOnThisChannel) 827
getDoNotShowAds($videos_id): bool 837
getDoNotShowAdsChannel($videos_id): bool 843
setRedirectVideo($videos_id, $code, $url) 851
getRedirectVideo($videos_id) 865
setShortSummaryAndMetaDescriptionVideo($videos_id, $ShortSummary, $MetaDescription, $checkUserPermission = true) 871
getShortSummaryAndMetaDescriptionVideo($videos_id) 890
showAds($videos_id): bool 896
getGalleryActionButton($videos_id) 900
getWatchActionButton($videos_id) 905
autoConvert() 910
executeEveryHour() 943
__construct($iclass, $img = '') 960
getHref() 965
getClass() 969
getTitle() 973
getIclass() 977
getImg() 981
getOnclick() 985
setHref($href): void 989
setClass($class): void 993
setTitle($title): void 997
setIclass($iclass): void 1001
setImg($img): void 1005
setOnclick($onclick): void 1009

Supporting PHP declarations

These symbols are grouped by source file; inspect the class declaration and visibility before calling them.

LocalEncoderLogin.php

Declared classes: LocalEncoderLogin.

Named symbol Source
__construct($directory = null) 9
issue($usersId, $passwordVersion, $challenge) 15
consume($code, $verifier) 45
path($code) 67

Diagnostics and validation

  1. Check the installed/enabled version and the dependencies/settings above.
  2. Identify the actual failing page, request, callback or worker and correlate its timestamp with the AVideo log.
  3. Follow the linked method and caller. Check business-state changes and output artifacts as well as HTTP status.
  4. Reproduce the relevant workflow in a test environment. External provider, Encoder, live-server, storage, payment and authenticated flows require their real integrations.

Shared diagnostic workflow. This page is not a security audit or a claim of end-to-end validation.

Clone this wiki locally