public function test_truncate() { $containerMock = $this->getMockBuilder('Symfony\\Component\\DependencyInjection\\ContainerInterface')->disableOriginalConstructor()->getMock(); $containerMock->expects($this->any())->method('getParameter')->with('kernel.charset')->will($this->returnValue('UTF-8')); BackendModel::setContainer($containerMock); $this->assertEquals(TemplateModifiers::truncate('foo bar baz qux', 3, false, true), 'foo'); $this->assertEquals(TemplateModifiers::truncate('foo bar baz qux', 4, false, true), 'foo'); $this->assertEquals(TemplateModifiers::truncate('foo bar baz qux', 8, false, true), 'foo bar'); $this->assertEquals(TemplateModifiers::truncate('foo bar baz qux', 100, false, true), 'foo bar baz qux'); // Hellip $this->assertEquals(TemplateModifiers::truncate('foo bar baz qux', 5, true, true), 'foo…'); $this->assertEquals(TemplateModifiers::truncate('foo bar baz qux', 14, true, true), 'foo bar baz…'); $this->assertEquals(TemplateModifiers::truncate('foo bar baz qux', 15, true, true), 'foo bar baz qux'); }
/** * This is an alias for the template modifier since it can also be used here and people didn't find it. * * @param string|bool $status * @param bool $reverse show the opposite of the status * * @return string */ public static function showBool($status, $reverse = false) { return TemplateModifiers::showBool($status, $reverse); }
/** * * Get the mail stats * * @param $id * * @return array */ public static function getStatsMail($id) { $return = (array) BackendModel::getContainer()->get('database')->getRecord('SELECT i.*, UNIX_TIMESTAMP(i.start_time) AS date, COUNT(DISTINCT u.user_id) AS users FROM mailengine_stats_mail AS i LEFT JOIN mailengine_stats_mail_users AS u ON u.send_id = i.id WHERE i.id = ? GROUP BY i.id', array((int) $id)); $returnOpened = (array) BackendModel::getContainer()->get('database')->getRecord('SELECT i.*, COUNT(DISTINCT o.user_id) AS opened FROM mailengine_stats_mail AS i LEFT JOIN mailengine_stats_mail_opened AS o ON o.send_id = i.id WHERE i.id = ? GROUP BY i.id', array((int) $id)); //--Format date $return["date"] = BackendDataGridFunctions::getLongDate($return["date"]); $return["percentage"] = BackendTemplateModifiers::formatNumber(round($returnOpened["opened"] / $return['users'] * 100, 0)); return $return; }