Skip to content

Technical Plugin TopMenu

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

Technical: TopMenu plugin

Stores and renders responsive top-navigation entries.

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: 2.2.
  • Source revision: 7d48f2dfc0289236718a3f9fba7c5ffecff4a37f.
  • Entry class file: TopMenu.php.

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

Dependencies

No literal dependency declaration was extracted. This does not prove the plugin is standalone.

Hook integration

Override Implementation
getTags() TopMenu.php:12
updateScript() TopMenu.php:53
getHeadCode() TopMenu.php:65
getHTMLMenuRight() TopMenu.php:71
getPluginMenu() TopMenu.php:76
getHTMLMenuLeft() TopMenu.php:82
getPermissionsOptions() TopMenu.php:97
getGalleryActionButton($videos_id) TopMenu.php:107
getNetflixActionButton($videos_id) TopMenu.php:113
getWatchActionButton($videos_id) TopMenu.php:119
getVideosManagerListButton() TopMenu.php:184
getFooterCode() TopMenu.php:206

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
show_menu_items true — source
compactMenuIfIsGreaterThen Computed/structured; inspect source — source
showBackToTopButton true — 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
HTMLMenuLeft.php PHP page/include/worker; inspect caller —
HTMLMenuRight.php PHP page/include/worker; inspect caller —
Objects/Menu.php class/helper implementation —
Objects/MenuItem.php class/helper implementation —
TopMenu.php plugin entry class —
actionButtonGallery.php PHP page/include/worker; inspect caller —
actionButtonNetflix.php PHP page/include/worker; inspect caller —
addVideoInfo.php PHP page/include/worker; inspect caller videos_id
addVideoInfoSave.json.php JSON entry point; inspect caller and guard menu_item_id, url, videos_id
floatBackToTop.php PHP page/include/worker; inspect caller —
floatMenu.php PHP page/include/worker; inspect caller —
index.php PHP page/include/worker; inspect caller id
install/install.sql schema/migration SQL —
menuDelete.json.php JSON entry point; inspect caller and guard menuId
menuItemDelete.json.php JSON entry point; inspect caller and guard menuItemId
menuItemSave.json.php JSON entry point; inspect caller and guard icon, item_order, item_status, menuId, menuItemId, menuSeoUrlItem, mobileicon, text, title, url
menuItemSort.json.php JSON entry point; inspect caller and guard itens
menuItems.json.php JSON entry point; inspect caller and guard menuId, sort
menuSave.json.php JSON entry point; inspect caller and guard icon, menuId, menuName, menu_order, status, type
menus.json.php JSON entry point; inspect caller and guard sort
page/editor.php PHP page/include/worker; inspect caller —
seo.php PHP page/include/worker; inspect caller id, menuSeoUrlItem

Data and migrations

Tables named in available CREATE TABLE statements: topMenu, topMenu_items. 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
getTags() 12
getDescription() 17
getName() 23
getUUID() 27
getPluginVersion() 31
getEmptyDataObject() 35
updateScript() 53
getHeadCode() 65
getHTMLMenuRight() 71
getPluginMenu() 76
getHTMLMenuLeft() 82
getidBySeoUrl($menuSeoUrlItem) 87
getPermissionsOptions() 97
canAdminTopMenu() 103
getGalleryActionButton($videos_id) 107
getNetflixActionButton($videos_id) 113
getWatchActionButton($videos_id) 119
getExternalOptionName($menu_item_id) 125
setVideoMenuURL($videos_id, $menu_item_id, $url) 129
getVideoMenuURL($videos_id, $menu_item_id) 141
thereIsMenuItemsActive() 164
getVideosManagerListButton() 184
getFooterCode() 206

Supporting PHP declarations

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

Objects/Menu.php

Declared classes: Menu.

Named symbol Source
getSearchFieldsNames() 39
getTableName() 43
setMenuName($menuName) 47
setCategories_id($categories_id) 51
setUsers_groups_id($users_groups_id) 55
setMenu_order($menu_order) 59
setStatus($status) 63
setPosition($position) 67
setType($type) 71
setIcon($icon) 75
setmenuSeoUrl($menuSeoUrl) 79
getAllActive($type=false) 83
save() 110
delete() 146

Objects/MenuItem.php

Declared classes: MenuItem.

Named symbol Source
getSearchFieldsNames() 12
getTableName() 16
getAllFromMenu($menu_id, $activeOnly = false, $sort = true) 20
setTitle($title) 75
setImage($image) 80
setUrl($url) 84
setClass($class) 88
setStyle($style) 92
setItem_order($item_order) 96
setTopMenu_id($topMenu_id) 100
setStatus($status) 104
setText($text) 108
setIcon($icon) 112
setClean_url($clean_url) 116
setmenuSeoUrlItem($menuSeoUrlItem) 120
save() 124
delete() 145
clearRequestCache() 152
getTitle() 157
getText() 161
getUrl() 165

addVideoInfo.php

Named symbol Source
createMenuSaveForm($menu, $menuType) 18

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