function tpollsUninstall($self)
{
    tcssmerger::i()->deletestyle(dirname(__FILE__) . '/stars.min.css');
    tjsonserver::i()->unbind($self);
    tlocalmerger::i()->deleteplugin(tplugins::getname(__FILE__));
    $jsmerger = tjsmerger::i();
    $jsmerger->lock();
    $jsmerger->deletefile('default', '/plugins/polls/polls.client.min.js');
    $jsmerger->deletetext('default', 'poll');
    $jsmerger->unlock();
    $adminmenus = tadminmenus::i();
    $adminmenus->deletetree($adminmenus->url2id('/admin/plugins/polls/'));
    litepublisher::$classes->delete('tpolltypes');
    litepublisher::$classes->delete('tpollsman');
    litepublisher::$classes->delete('tpullpolls');
    litepublisher::$classes->delete('tadminpolltemplates');
    litepublisher::$classes->delete('tadminpolltypes');
    litepublisher::$classes->delete('tadminpolloptions');
    litepublisher::$classes->delete('tadminpolls');
    $manager = tdbmanager::i();
    $manager->deletetable($self->table);
    $manager->deletetable($self->users1);
    $manager->deletetable($self->users2);
    $manager->deletetable($self->votes);
    $dir = litepublisher::$paths->data . 'polls';
    tfiler::delete($dir, true, true);
}
function uloginUninstall($self)
{
    tusers::i()->unbind('tregserviceuser');
    turlmap::unsub($self);
    $man = tdbmanager::i();
    $man->deletetable($self->table);
    if ($man->column_exists('users', 'phone')) {
        $man->alter('users', "drop phone");
    }
    $alogin = tadminlogin::i();
    $alogin->widget = $self->deletepanel($alogin->widget);
    $alogin->save();
    $areg = tadminreguser::i();
    $areg->widget = $self->deletepanel($areg->widget);
    $areg->save();
    $tc = ttemplatecomments::i();
    $tc->regaccount = $self->deletepanel($tc->regaccount);
    $tc->save();
    $js = tjsmerger::i();
    $js->lock();
    $js->deletefile('default', '/plugins/ulogin/resource/ulogin.popup.min.js');
    $js->deletefile('default', '/plugins/ulogin/resource/' . litepublisher::$options->language . '.ulogin.popup.min.js');
    $js->unlock();
    tcssmerger::i()->deletefile('default', '/plugins/ulogin/resource/ulogin.popup.css');
    tjsonserver::i()->unbind($self);
    litepublisher::$classes->delete('emailauth');
}
function tpagenator3000Uninstall($self)
{
    $name = basename(dirname(__FILE__));
    $js = tjsmerger::i();
    $js->lock();
    $js->deletefile('default', "/plugins/{$name}/paginator3000.min.js");
    $js->deletetext('default', 'pagenator');
    $js->unlock();
    tthemeparser::i()->unbind($self);
    ttheme::clearcache();
    tcssmerger::i()->deletestyle(dirname(__FILE__) . '/paginator3000.css');
}
function update590()
{
    $js = tjsmerger::i();
    $js->lock();
    if ($i = array_search('/js/jquery/ui/tabs.min.js', $js->items['admin']['files'])) {
        array_insert($js->items['admin']['files'], '/js/jquery/ui/effect.min.js', $i);
    } else {
        $js->add('admin', '/js/jquery/ui/effect.min.js');
    }
    $js->unlock();
    tcssmerger::i()->add('admin', '/js/litepublisher/css/form.inline.min.css');
}
function tregservicesUninstall($self)
{
    $name = basename(dirname(__FILE__));
    tcommentform::i()->unbind($self);
    turlmap::unsub($self);
    foreach ($self->items as $id => $classname) {
        litepublisher::$classes->delete($classname);
    }
    litepublisher::$classes->delete('tregserviceuser');
    litepublisher::$classes->delete('toauth');
    tfiler::delete(litepublisher::$paths->data . 'regservices', true, true);
    tusers::i()->unbind('tregserviceuser');
    tdbmanager::i()->deletetable('regservices');
    $css = tcssmerger::i();
    $css->deletestyle("/plugins/{$name}/regservices.min.css");
}
function update597()
{
    litepublisher::$site->jquery_version = '1.11.2';
    litepublisher::$site->jqueryui_version = '1.11.4';
    litepublisher::$site->save();
    $js = tjsmerger::i();
    $js->lock();
    $js->after('default', '/js/plugins/jquery.cookie.min.js', '/js/plugins/tojson.min.js');
    $js->after('default', '/js/litepublisher/litepublisher.utils.min.js', '/js/litepublisher/ready2.min.js');
    $js->after('default', '/js/litepublisher/ready2.min.js', '/js/litepublisher/css-loader.min.js');
    $js->after('default', '/js/litepublisher/css-loader.min.js', '/js/litepublisher/json-rpc.min.js');
    $js->unlock();
    $css = tcssmerger::i();
    //$css->add('default', '/js/litepublisher/css/hover.css');
    if (litepublisher::$classes->exists('ulogin')) {
        $ulogin = ulogin::i();
        $ulogin->panel = str_replace(' ready2', ' $.ready2', $ulogin->panel);
        $ulogin->save();
        $alogin = tadminlogin::i();
        $alogin->widget = $ulogin->addpanel($alogin->widget, $ulogin->panel);
        $alogin->save();
        $areg = tadminreguser::i();
        $areg->widget = $ulogin->addpanel($areg->widget, $ulogin->panel);
        $areg->save();
        $tc = ttemplatecomments::i();
        $tc->regaccount = $ulogin->addpanel($tc->regaccount, $ulogin->button);
        $tc->save();
    }
    $t = ttemplate::i();
    $t->footer = str_replace('2014', '2015', $t->footer);
    $template = ttemplate::i();
    $t->data[$js->basename] = $js->revision;
    $t->data[$css->basename] = $css->revision;
    $t->save();
    //$a = tprefetchtxt::i()->items;
    $data = new tdata();
    $data->basename = 'prefetch.txt';
    $data->load();
    $a = $data->data['items'];
    litepublisher::$classes->delete('tprefetchtxt');
    litepublisher::$classes->add('appcache_manifest', 'appcache.manifest.class.php');
    $c = appcache_manifest::i();
    $c->items = $a;
    $c->save();
    tredirector::i()->add('/prefetch.txt', $c->url);
}
function update587()
{
    litepublisher::$site->jqueryui_version = '1.11.0';
    litepublisher::$site->save();
    $js = tjsmerger::i();
    foreach ($js->items as $section => $items) {
        foreach ($items['files'] as $i => $filename) {
            $js->items[$section]['files'][$i] = str_replace('-$site.jqueryui_version/jquery.ui.', '/', $filename);
        }
    }
    $js->save();
    $css = tcssmerger::i();
    foreach ($css->items as $section => $items) {
        foreach ($items['files'] as $i => $filename) {
            $filename = str_replace('-$site.jqueryui_version/', '/', $filename);
            $css->items[$section]['files'][$i] = str_replace('jquery-ui-$site.jqueryui_version.custom.min.css', 'jquery-ui.min.css', $filename);
        }
    }
    $css->save();
}
function texcerptslideUninstall($self)
{
    $self->tags->unbind($self);
    tjsmerger::i()->deletetext('default', 'excerptslide');
    tcssmerger::i()->deletetext('default', 'excerptslide');
}
 public function getmerger()
 {
     return tcssmerger::i();
 }