Skip to content

Technical Plugin CloneSite

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

Technical: CloneSite plugin

Exposes site cloning/backup administration and remote-site integration.

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.1.
  • Source revision: 7d48f2dfc0289236718a3f9fba7c5ffecff4a37f.
  • Entry class file: CloneSite.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.

Literal runtime plugin references: MaintenanceMode. These calls do not mean every referenced plugin is mandatory.

Hook integration

Override Implementation
getTags() CloneSite.php:8
getPluginMenu() CloneSite.php:46
getStart() CloneSite.php:72
getFooterCode() CloneSite.php:81

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
cloneSiteURL "" — source
cloneSiteSSHIP "" — source
cloneSiteSSHUser "" — source
cloneSiteSSHPort "22" — source
cloneSiteSSHPassword Private setting; value omitted — source
useRsync true — source
MaintenanceMode false — source
myKey Private setting; value omitted — 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
CloneLog.php class/helper implementation —
CloneSite.php plugin entry class —
Objects/Clones.php class/helper implementation —
changeStatus.json.php JSON entry point; inspect caller and guard id
client.log.php PHP page/include/worker; inspect caller —
cloneClient.json.php JSON entry point; inspect caller and guard —
cloneServer.json.php JSON entry point; inspect caller and guard deleteDump, key, url, useRsync
clones.json.php JSON entry point; inspect caller and guard —
delete.json.php JSON entry point; inspect caller and guard id
functions.php PHP page/include/worker; inspect caller —
index.php PHP page/include/worker; inspect caller —
install/install.sql schema/migration SQL —

Data and migrations

Tables named in available CREATE TABLE statements: clone_SitesAllowed. 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() 8
getDescription() 15
getName() 31
getUUID() 36
getPluginVersion() 41
getPluginMenu() 46
getEmptyDataObject() 53
getStart() 72
getFooterCode() 81

Supporting PHP declarations

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

CloneLog.php

Declared classes: CloneLog.

Named symbol Source
__construct() 6
add($message) 18

Objects/Clones.php

Declared classes: Clones.

Named symbol Source
getSearchFieldsNames() 14
getTableName() 19
getFromURL($url) 24
updateLastCloneRequest() 39
loadFromURL($url) 58
thisURLCanCloneMe($url, $key) 73
addURL($url, $key) 103
save() 115
getId() 132
getUrl() 137
getStatus() 142
getKey() 147
getLast_clone_request() 152
setId($id) 157
setUrl($url) 162
setStatus($status) 168
setKey($key) 173
setLast_clone_request($last_clone_request) 178
toogleStatus() 183

functions.php

Named symbol Source
getCloneFilesInfo($dir, $subdir = "", $extensionsToCopy = ['<string>', '<string>', '<string>', '<string>', '<string>']) 2
detectNewFiles($serverArray, $clientArray) 34
isRsync() 52
isSshpass() 56

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.

Related test filenames (name matches only; not executed by generation):

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

Clone this wiki locally