summaryrefslogtreecommitdiffstats
path: root/docs/PLUGINS
blob: 1b853337e0ceabead756194b1159f6bd787e4245 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
-------------------------------------------------------------------------------
-----------------        PLUGINS - Ampache v.3.6         ----------------------
-------------------------------------------------------------------------------

Plugins are placed in modules/plugins; the name of the file must be
<Name>.plugin.php, e.g. Dummy.plugin.php. The file must declare a
corresponding class and the name of the class must be prefixed with
Ampache, e.g. AmpacheDummy.

The following public variables must be declared:
    name (string)
    description (string)
    version (int) - This plugin's version
    min_ampache (int) - Minimum Ampache DB version required
    max_ampache (int) - Maximum Ampache DB version supported

The following public methods must be implemented:
    install
    uninstall
    load

The following public methods may be implemented:
    upgrade

Finally, for the plugin to actually be useful one or more of the following hooks
should be implemented as a public method:
    get_metadata(Array $metadata)
        The passed array contains the best metadata we've got.
    save_rating(Rating $rating, int $new_value)
    save_songplay(Song $song)