* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2010 Free Software Foundation http://fsf.org
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
-if (!defined('STATUSNET')) {
+if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
class AutocompletePlugin extends Plugin
{
+ const PLUGIN_VERSION = '2.0.0';
function __construct()
{
parent::__construct();
function onEndShowScripts($action){
if (common_logged_in()) {
- $current_user = common_current_user();
- $js_string = <<<EOT
-<script type="text/javascript">
-var current_user = { id: '$current_user->id' };
-</script>
-EOT;
- $action->raw($js_string);
- $action->script('plugins/Autocomplete/jquery-autocomplete/jquery.autocomplete.pack.js');
- $action->script('plugins/Autocomplete/Autocomplete.js');
+ $action->element('span', array('id' => 'autocomplete-api',
+ 'data-url' => common_local_url('autocomplete')));
+ $action->script($this->path('js/autocomplete.go.js'));
}
}
- function onEndShowStatusNetStyles($action)
+ function onRouterInitialized($m)
{
- if (common_logged_in()) {
- $action->cssLink('plugins/Autocomplete/jquery-autocomplete/jquery.autocomplete.css');
- }
+ $m->connect('main/autocomplete/suggest',
+ ['action' => 'autocomplete']);
}
+ function onPluginVersion(array &$versions)
+ {
+ $versions[] = array('name' => 'Autocomplete',
+ 'version' => self::PLUGIN_VERSION,
+ 'author' => 'Craig Andrews',
+ 'homepage' => 'https://git.gnu.io/gnu/gnu-social/tree/master/plugins/Autocomplete',
+ 'rawdescription' =>
+ // TRANS: Plugin description.
+ _m('The autocomplete plugin adds autocompletion for @ replies.'));
+ return true;
+ }
}
-?>