diff options
author | Brion Vibber <brion@pobox.com> | 2010-11-16 12:41:35 -0800 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2010-11-16 12:41:35 -0800 |
commit | 450707fec626e4e2b2eed4e46591fcf06368d0a1 (patch) | |
tree | ed4817f53147fa9f3837eb1cbe48bed953a2eb60 /plugins/LinkPreview | |
parent | fa6c6077d6e49d03b10da4339e3c97e0734897de (diff) |
Stub LinkPreview plugin
Diffstat (limited to 'plugins/LinkPreview')
-rw-r--r-- | plugins/LinkPreview/LinkPreviewPlugin.php | 94 | ||||
-rw-r--r-- | plugins/LinkPreview/linkpreview.js | 10 |
2 files changed, 104 insertions, 0 deletions
diff --git a/plugins/LinkPreview/LinkPreviewPlugin.php b/plugins/LinkPreview/LinkPreviewPlugin.php new file mode 100644 index 000000000..d887ca040 --- /dev/null +++ b/plugins/LinkPreview/LinkPreviewPlugin.php @@ -0,0 +1,94 @@ +<?php +/* + * StatusNet - the distributed open-source microblogging tool + * Copyright (C) 2010, StatusNet, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +if (!defined('STATUSNET')) { + exit(1); +} + +/** + * Some UI extras for now... + * + * @package LinkPreviewPlugin + * @maintainer Brion Vibber <brion@status.net> + */ +class LinkPreviewPlugin extends Plugin +{ + function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'LinkPreview', + 'version' => STATUSNET_VERSION, + 'author' => 'Brion Vibber', + 'homepage' => 'http://status.net/wiki/Plugin:LinkPreview', + 'rawdescription' => + _m('UI extensions previewing thumbnails from links.')); + + return true; + } + + /** + * Load JS at runtime if we're logged in. + * + * @param Action $action + * @return boolean hook result + */ + function onEndShowScripts($action) + { + $user = common_current_user(); + if ($user) { + $action->script('plugins/LinkPreview/linkpreview.js'); + } + return true; + } + + /** + * Autoloader + * + * Loads our classes if they're requested. + * + * @param string $cls Class requested + * + * @return boolean hook return + */ + function onAutoload($cls) + { + switch ($cls) + { + case 'LinkpreviewAction': + require_once dirname(__FILE__) . '/linkpreviewaction.php'; + return false; + default: + return true; + } + } + + /** + * Hook for RouterInitialized event. + * + * @param Net_URL_Mapper $m URL mapper + * + * @return boolean hook return + */ + function onStartInitializeRouter($m) + { + $m->connect('main/preview/link', + array('action' => 'linkpreview')); + + return true; + } +} diff --git a/plugins/LinkPreview/linkpreview.js b/plugins/LinkPreview/linkpreview.js new file mode 100644 index 000000000..37710e7d5 --- /dev/null +++ b/plugins/LinkPreview/linkpreview.js @@ -0,0 +1,10 @@ +/** + * (c) 2010 StatusNet, Inc. + */ + +$(function() { + $('#notice_data-text').change(function() { + var text = $(this).val(); + alert(text); + }); +}); |