Skip to content

Instantly share code, notes, and snippets.

@mjot
Created February 10, 2017 10:51
Show Gist options
  • Save mjot/6c7d415b5c723ed43f1da527258954a6 to your computer and use it in GitHub Desktop.
Save mjot/6c7d415b5c723ed43f1da527258954a6 to your computer and use it in GitHub Desktop.
<?php
namespace ShyimCron;
use Shopware\Components\Plugin;
use Shopware\Components\Plugin\Context\InstallContext;
use Shopware\Components\Plugin\Context\UninstallContext;
class ShyimCron extends Plugin {
public static function getSubscribedEvents()
{
return [
'Shopware_CronJob_MyCoolCron' => 'MyCoolCronRun'
];
}
public function install(InstallContext $context)
{
$this->addCron();
}
public function uninstall(UninstallContext $context)
{
$this->removeCron();
}
public function addCron()
{
$connection = $this->container->get('dbal_connection');
$connection->insert(
's_crontab',
[
'name' => 'MyCoolCron',
'action' => 'MyCoolCron',
'next' => new \DateTime(),
'start' => null,
'`interval`' => '100',
'active' => 1,
'end' => new \DateTime(),
'pluginID' => null
],
[
'next' => 'datetime',
'end' => 'datetime',
]
);
}
public function removeCron()
{
$this->container->get('dbal_connection')->executeQuery('DELETE FROM s_crontab WHERE `name` = ?', [
'MyCoolCron'
]);
}
public function MyCoolCronRun(\Shopware_Components_Cron_CronJob $job)
{
$this->container->get('pluginlogger')->info('Cron läuft');
return 'Yes its running!';
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment