]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/Sample/SamplePlugin.php
plugins onAutoload now only overloads if necessary (extlibs etc.)
[quix0rs-gnu-social.git] / plugins / Sample / SamplePlugin.php
index 913741226b4302cd2c63bc09f439659fe9a89d68..93654106137dc27d70e0036e288b6c61c33f0ce8 100644 (file)
@@ -101,7 +101,6 @@ if (!defined('STATUSNET')) {
  * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
  * @link      http://status.net/
  */
-
 class SamplePlugin extends Plugin
 {
     /**
@@ -129,7 +128,6 @@ class SamplePlugin extends Plugin
      *
      * @return boolean hook value; true means continue processing, false means stop.
      */
-
     function initialize()
     {
         return true;
@@ -143,7 +141,6 @@ class SamplePlugin extends Plugin
      *
      * @return boolean hook value; true means continue processing, false means stop.
      */
-
     function cleanup()
     {
         return true;
@@ -168,57 +165,15 @@ class SamplePlugin extends Plugin
      *
      * @return boolean hook value; true means continue processing, false means stop.
      */
-
     function onCheckSchema()
     {
         $schema = Schema::get();
 
         // For storing user-submitted flags on profiles
-
-        $schema->ensureTable('user_greeting_count',
-                             array(new ColumnDef('user_id', 'integer', null,
-                                                 true, 'PRI'),
-                                   new ColumnDef('greeting_count', 'integer')));
-
+        $schema->ensureTable('user_greeting_count', User_greeting_count::schemaDef());
         return true;
     }
 
-    /**
-     * Load related modules when needed
-     *
-     * Most non-trivial plugins will require extra modules to do their work. Typically
-     * these include data classes, action classes, widget classes, or external libraries.
-     *
-     * This method receives a class name and loads the PHP file related to that class. By
-     * tradition, action classes typically have files named for the action, all lower-case.
-     * Data classes are in files with the data class name, initial letter capitalized.
-     *
-     * Note that this method will be called for *all* overloaded classes, not just ones
-     * in this plugin! So, make sure to return true by default to let other plugins, and
-     * the core code, get a chance.
-     *
-     * @param string $cls Name of the class to be loaded
-     *
-     * @return boolean hook value; true means continue processing, false means stop.
-     */
-
-    function onAutoload($cls)
-    {
-        $dir = dirname(__FILE__);
-
-        switch ($cls)
-        {
-        case 'HelloAction':
-            include_once $dir . '/' . strtolower(mb_substr($cls, 0, -6)) . '.php';
-            return false;
-        case 'User_greeting_count':
-            include_once $dir . '/'.$cls.'.php';
-            return false;
-        default:
-            return true;
-        }
-    }
-
     /**
      * Map URLs to actions
      *
@@ -231,7 +186,6 @@ class SamplePlugin extends Plugin
      *
      * @return boolean hook value; true means continue processing, false means stop.
      */
-
     function onRouterInitialized($m)
     {
         $m->connect('main/hello',
@@ -256,14 +210,15 @@ class SamplePlugin extends Plugin
      *
      * @see Action
      */
-
     function onEndPrimaryNav($action)
     {
         // common_local_url() gets the correct URL for the action name
         // we provide
-
         $action->menuItem(common_local_url('hello'),
-                          _m('Hello'), _m('A warm greeting'), false, 'nav_hello');
+                          // TRANS: Menu item in sample plugin.
+                          _m('Hello'),
+                          // TRANS: Menu item title in sample plugin.
+                          _m('A warm greeting'), false, 'nav_hello');
         return true;
     }
 
@@ -274,8 +229,8 @@ class SamplePlugin extends Plugin
                             'author' => 'Brion Vibber, Evan Prodromou',
                             'homepage' => 'http://status.net/wiki/Plugin:Sample',
                             'rawdescription' =>
+                          // TRANS: Plugin description.
                             _m('A sample plugin to show basics of development for new hackers.'));
         return true;
     }
 }
-