function create_short_urls($article_url) { $selected_services = array('raw'); // preload shorturls, we have fetched before $shorturls = TwitterPluginDbAccess::load_short_urls($article_url, $selected_services); // remember already known shorturls $loaded_shorturls = $shorturls; $shorter = $this->get_urlshortener(); foreach ($selected_services as $service) { $shorter->put_shorturl($service, $article_url, $shorturls); } TwitterPluginDbAccess::save_short_urls($article_url, $shorturls, $loaded_shorturls); return $shorturls; }
static function install(&$obj) { global $serendipity; if ((int) $obj->get_config('tweetbackhistory_v') < 1) { $obj->set_config('tweetbackhistory_v', 2); serendipity_db_query("ALTER TABLE {$serendipity['dbPrefix']}tweetbackhistory CHANGE lasttweetid lasttweetid varchar(20) not null"); } if (!TwitterPluginDbAccess::table_created('tweetbackhistory')) { $q = "create table {$serendipity['dbPrefix']}tweetbackhistory (" . "entryid int(10) not null, " . "lasttweetid varchar(20) not null, " . "lastcheck int(10) not null, " . "primary key (entryid)" . ")"; $result = serendipity_db_schema_import($q); if ($result !== true) { return; } } if (!TwitterPluginDbAccess::table_created('tweetbackshorturls')) { $q = "create table {$serendipity['dbPrefix']}tweetbackshorturls (" . "service varchar(15) not null, " . "longurl varchar(255) not null, " . "shorturl varchar(50) not null, " . "primary key (service, longurl)" . ")"; $result = serendipity_db_schema_import($q); if ($result !== true) { return; } serendipity_db_schema_import("CREATE INDEX idx_tweetbackshorturls_longurl ON {$serendipity['dbPrefix']}tweetbackshorturls (longurl)"); serendipity_db_schema_import("CREATE INDEX idx_tweetbackshorturls_service ON {$serendipity['dbPrefix']}tweetbackshorturls (service)"); } // Clear old wrong entries! $q = "delete from {$serendipity['dbPrefix']}tweetbackshorturls where shorturl LIKE 'Error'"; $row = serendipity_db_query($q, true, 'num'); }