X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FYammerImport%2FYammerImportPlugin.php;h=41d8d08a663b58f9d381405b861f5290c05bd870;hb=5f3dbc3e98fd15ca81fd487532a0efaa95043988;hp=a3520d8a86b38bda0366c660d328a691d51fc5ab;hpb=14a3697a619ae22034aad4e6cb8d11a0ad7ff623;p=quix0rs-gnu-social.git diff --git a/plugins/YammerImport/YammerImportPlugin.php b/plugins/YammerImport/YammerImportPlugin.php index a3520d8a86..41d8d08a66 100644 --- a/plugins/YammerImport/YammerImportPlugin.php +++ b/plugins/YammerImport/YammerImportPlugin.php @@ -22,9 +22,7 @@ * @maintainer Brion Vibber */ -if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } - -set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/extlib/'); +if (!defined('STATUSNET')) { exit(1); } class YammerImportPlugin extends Plugin { @@ -36,8 +34,10 @@ class YammerImportPlugin extends Plugin */ function onRouterInitialized($m) { - $m->connect('admin/import/yammer', - array('action' => 'importyammer')); + $m->connect('panel/yammer', + array('action' => 'yammeradminpanel')); + $m->connect('panel/yammer/auth', + array('action' => 'yammerauth')); return true; } @@ -48,7 +48,58 @@ class YammerImportPlugin extends Plugin */ function onEndInitializeQueueManager(QueueManager $qm) { - $qm->connect('importym', 'ImportYmQueueHandler'); + $qm->connect('yammer', 'YammerQueueHandler'); + + return true; + } + + /** + * Set up all our tables... + */ + function onCheckSchema() + { + $schema = Schema::get(); + + $tables = array('Yammer_state', + 'Yammer_user', + 'Yammer_group', + 'Yammer_notice', + 'Yammer_notice_stub'); + foreach ($tables as $table) { + $schemaDef = call_user_func(array($table, 'schemaDef')); + $schema->ensureTable(strtolower($table), $schemaDef); + } + + return true; + } + + /** + * If the plugin's installed, this should be accessible to admins. + */ + function onAdminPanelCheck($name, &$isOK) + { + if ($name == 'yammer') { + $isOK = true; + return false; + } + + return true; + } + + /** + * Add the Yammer admin panel to the list... + */ + function onEndAdminPanelNav($nav) + { + if (AdminPanelAction::canAdmin('yammer')) { + $action_name = $nav->action->trimmed('action'); + + $nav->out->menuItem(common_local_url('yammeradminpanel'), + _m('Yammer'), + _m('Yammer import'), + $action_name == 'yammeradminpanel', + 'nav_yammer_admin_panel'); + } return true; } @@ -68,9 +119,25 @@ class YammerImportPlugin extends Plugin switch ($lower) { case 'sn_yammerclient': case 'yammerimporter': - case 'yammerimqueuehandler': - case 'importyammeraction': - require_once "$base/$lower.php"; + case 'yammerrunner': + case 'yammerapikeyform': + case 'yammerauthinitform': + case 'yammerauthverifyform': + case 'yammerprogressform': + case 'yammerqueuehandler': + require_once "$base/lib/$lower.php"; + return false; + case 'yammeradminpanelaction': + $crop = substr($lower, 0, strlen($lower) - strlen('action')); + require_once "$base/actions/$crop.php"; + return false; + case 'yammer_state': + case 'yammer_notice_stub': + case 'yammer_common': + case 'yammer_user': + case 'yammer_group': + case 'yammer_notice': + require_once "$base/classes/$cls.php"; return false; default: return true;