mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-28 21:39:47 +08:00
Merge branch 'master' of github.com:yiisoft/yii2 into email-swift-2
This commit is contained in:
@@ -17,3 +17,24 @@ body {
|
||||
font-size: 21px;
|
||||
padding: 14px 24px;
|
||||
}
|
||||
|
||||
/* add sorting icons to gridview sort links */
|
||||
a.asc:after, a.desc:after {
|
||||
position: relative;
|
||||
top: 1px;
|
||||
display: inline-block;
|
||||
font-family: 'Glyphicons Halflings';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
a.asc:after { content: /*"\e113"*/"\e151"; }
|
||||
a.desc:after { content: /*"\e114"*/"\e152"; }
|
||||
|
||||
.sort-numerical a.asc:after { content: "\e153"; }
|
||||
.sort-numerical a.desc:after { content: "\e154"; }
|
||||
|
||||
.sort-ordinal a.asc:after { content: "\e155"; }
|
||||
.sort-ordinal a.desc:after { content: "\e156"; }
|
||||
|
||||
@@ -17,3 +17,24 @@ body {
|
||||
font-size: 21px;
|
||||
padding: 14px 24px;
|
||||
}
|
||||
|
||||
/* add sorting icons to gridview sort links */
|
||||
a.asc:after, a.desc:after {
|
||||
position: relative;
|
||||
top: 1px;
|
||||
display: inline-block;
|
||||
font-family: 'Glyphicons Halflings';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
a.asc:after { content: /*"\e113"*/"\e151"; }
|
||||
a.desc:after { content: /*"\e114"*/"\e152"; }
|
||||
|
||||
.sort-numerical a.asc:after { content: "\e153"; }
|
||||
.sort-numerical a.desc:after { content: "\e154"; }
|
||||
|
||||
.sort-ordinal a.asc:after { content: "\e155"; }
|
||||
.sort-ordinal a.desc:after { content: "\e156"; }
|
||||
|
||||
@@ -18,3 +18,24 @@ body {
|
||||
font-size: 21px;
|
||||
padding: 14px 24px;
|
||||
}
|
||||
|
||||
/* add sorting icons to gridview sort links */
|
||||
a.asc:after, a.desc:after {
|
||||
position: relative;
|
||||
top: 1px;
|
||||
display: inline-block;
|
||||
font-family: 'Glyphicons Halflings';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
a.asc:after { content: /*"\e113"*/"\e151"; }
|
||||
a.desc:after { content: /*"\e114"*/"\e152"; }
|
||||
|
||||
.sort-numerical a.asc:after { content: "\e153"; }
|
||||
.sort-numerical a.desc:after { content: "\e154"; }
|
||||
|
||||
.sort-ordinal a.asc:after { content: "\e155"; }
|
||||
.sort-ordinal a.desc:after { content: "\e156"; }
|
||||
|
||||
@@ -259,16 +259,16 @@ class View extends Component
|
||||
|
||||
$output = '';
|
||||
if ($this->beforeRender($viewFile)) {
|
||||
Yii::trace("Rendering view file: $viewFile", __METHOD__);
|
||||
$ext = pathinfo($viewFile, PATHINFO_EXTENSION);
|
||||
if (isset($this->renderers[$ext])) {
|
||||
if (is_array($this->renderers[$ext])) {
|
||||
if (is_array($this->renderers[$ext]) || is_string($this->renderers[$ext])) {
|
||||
$this->renderers[$ext] = Yii::createObject($this->renderers[$ext]);
|
||||
}
|
||||
/** @var ViewRenderer $renderer */
|
||||
$renderer = $this->renderers[$ext];
|
||||
$output = $renderer->render($this, $viewFile, $params);
|
||||
} else {
|
||||
Yii::trace("Rendering view file: $viewFile", __METHOD__);
|
||||
$output = $this->renderPhpFile($viewFile, $params);
|
||||
}
|
||||
$this->afterRender($viewFile, $output);
|
||||
|
||||
@@ -17,7 +17,7 @@ use yii\helpers\Html;
|
||||
*
|
||||
* ```php
|
||||
* // a button group with items configuration
|
||||
* echo ButtonGroup::::widget([
|
||||
* echo ButtonGroup::widget([
|
||||
* 'buttons' => [
|
||||
* ['label' => 'A'],
|
||||
* ['label' => 'B'],
|
||||
@@ -25,7 +25,7 @@ use yii\helpers\Html;
|
||||
* ]);
|
||||
*
|
||||
* // button group with an item as a string
|
||||
* echo ButtonGroup::::widget([
|
||||
* echo ButtonGroup::widget([
|
||||
* 'buttons' => [
|
||||
* Button::widget(['label' => 'A']),
|
||||
* ['label' => 'B'],
|
||||
|
||||
@@ -158,7 +158,7 @@ class ActiveDataProvider extends BaseDataProvider
|
||||
throw new InvalidConfigException('The "query" property must be an instance of Query or its subclass.');
|
||||
}
|
||||
$query = clone $this->query;
|
||||
return $query->limit(-1)->offset(-1)->count('*', $this->db);
|
||||
return (int) $query->limit(-1)->offset(-1)->count('*', $this->db);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -88,6 +88,11 @@ class GridView extends BaseListView
|
||||
* @var boolean whether to show the footer section of the grid table.
|
||||
*/
|
||||
public $showFooter = false;
|
||||
/**
|
||||
* @var string|boolean the HTML content to be displayed when [[dataProvider]] does not have any data.
|
||||
* If false, the grid view will still be displayed (without body content though).
|
||||
*/
|
||||
public $empty = false;
|
||||
/**
|
||||
* @var array|Formatter the formatter used to format model attribute values into displayable texts.
|
||||
* This can be either an instance of [[Formatter]] or an configuration array for creating the [[Formatter]]
|
||||
|
||||
@@ -66,7 +66,7 @@ class FallbackMessageFormatter
|
||||
* @param array $args Arguments to insert into the format string
|
||||
* @return string The formatted string, or `FALSE` if an error occurred
|
||||
*/
|
||||
public function format(array $args)
|
||||
public function format($args)
|
||||
{
|
||||
return static::formatMessage($this->_locale, $this->_pattern, $args);
|
||||
}
|
||||
@@ -79,7 +79,7 @@ class FallbackMessageFormatter
|
||||
* @param array $args The array of values to insert into the format string
|
||||
* @return string The formatted pattern string or `FALSE` if an error occurred
|
||||
*/
|
||||
public static function formatMessage($locale, $pattern, array $args)
|
||||
public static function formatMessage($locale, $pattern, $args)
|
||||
{
|
||||
if (($tokens = static::tokenizePattern($pattern)) === false) {
|
||||
return false;
|
||||
|
||||
@@ -139,7 +139,7 @@ abstract class BaseListView extends Widget
|
||||
$pageCount = $pagination->pageCount;
|
||||
if (($summaryContent = $this->summary) === null) {
|
||||
$summaryContent = '<div class="summary">'
|
||||
. Yii::t('yii', 'Showing <b>{totalCount, plural, =0{0} other{{begin}-{end}}}</b> of <b>{totalCount}</b> {totalCount, plural, one{item} other{items}}.')
|
||||
. Yii::t('yii', 'Showing <b>{totalCount, plural, =0{0} other{{begin, number, integer}-{end, number, integer}}}</b> of <b>{totalCount, number, integer}</b> {totalCount, plural, one{item} other{items}}.')
|
||||
. '</div>';
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -17,6 +17,9 @@ class Customer extends ActiveRecord
|
||||
|
||||
public $status2;
|
||||
|
||||
public static $afterSaveInsert = null;
|
||||
public static $afterSaveNewRecord = null;
|
||||
|
||||
public static function tableName()
|
||||
{
|
||||
return 'tbl_customer';
|
||||
@@ -31,4 +34,11 @@ class Customer extends ActiveRecord
|
||||
{
|
||||
$query->andWhere('status=1');
|
||||
}
|
||||
|
||||
public function afterSave($insert)
|
||||
{
|
||||
static::$afterSaveInsert = $insert;
|
||||
static::$afterSaveNewRecord = $this->isNewRecord;
|
||||
parent::afterSave($insert);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -295,10 +295,14 @@ class ActiveRecordTest extends DatabaseTestCase
|
||||
|
||||
$this->assertNull($customer->id);
|
||||
$this->assertTrue($customer->isNewRecord);
|
||||
Customer::$afterSaveNewRecord = null;
|
||||
Customer::$afterSaveInsert = null;
|
||||
|
||||
$customer->save();
|
||||
|
||||
$this->assertEquals(4, $customer->id);
|
||||
$this->assertFalse(Customer::$afterSaveNewRecord);
|
||||
$this->assertTrue(Customer::$afterSaveInsert);
|
||||
$this->assertFalse($customer->isNewRecord);
|
||||
}
|
||||
|
||||
@@ -309,10 +313,15 @@ class ActiveRecordTest extends DatabaseTestCase
|
||||
$this->assertTrue($customer instanceof Customer);
|
||||
$this->assertEquals('user2', $customer->name);
|
||||
$this->assertFalse($customer->isNewRecord);
|
||||
Customer::$afterSaveNewRecord = null;
|
||||
Customer::$afterSaveInsert = null;
|
||||
|
||||
$customer->name = 'user2x';
|
||||
$customer->save();
|
||||
$this->assertEquals('user2x', $customer->name);
|
||||
$this->assertFalse($customer->isNewRecord);
|
||||
$this->assertFalse(Customer::$afterSaveNewRecord);
|
||||
$this->assertFalse(Customer::$afterSaveInsert);
|
||||
$customer2 = Customer::find(2);
|
||||
$this->assertEquals('user2x', $customer2->name);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user