12871d13db2d654b8ce8bd6f95bb42530c1e5437

Author: k-kishida

Date: 2010-02-14 13:12:12 +0900

fixed to sort issues list.

diff --git a/app/controllers/issues_controller.php b/app/controllers/issues_controller.php index 03600de..a1111cf 100644 --- a/app/controllers/issues_controller.php +++ b/app/controllers/issues_controller.php @@ -96,10 +96,13 @@ class IssuesController extends AppController { $this->Queries->retrieve_query(); $limit = $this->_per_page_option(); + if (empty($this->params['named']['sort'])) { + $this->params['sort'] = 'Issue.id'; + $this->params['direction'] = 'desc'; + } $this->paginate = array('Issue' => array( - 'conditions' => $this->Queries->query_filter_cond, - 'order' => 'Issue.id DESC', - 'limit' => $limit, + 'conditions' => $this->Queries->query_filter_cond, + 'limit' => $limit, )); $this->sidebar_queries(); if(empty($this->Query->data)) { diff --git a/app/locale/jpn/LC_MESSAGES/default.po b/app/locale/jpn/LC_MESSAGES/default.po index 413b586..09594e0 100755 --- a/app/locale/jpn/LC_MESSAGES/default.po +++ b/app/locale/jpn/LC_MESSAGES/default.po @@ -469,6 +469,8 @@ msgid "%m/%d/%Y" msgstr "%Y年%m月%d日" msgid "%Y-%m-%d" msgstr "%Y年%m月%d日" +msgid "%H:%M:%S" +msgstr "%H:%M %p" # default_issue_status_rejected msgid "Rejected" diff --git a/app/models/setting.php b/app/models/setting.php index c562f75..d6e5c34 100644 --- a/app/models/setting.php +++ b/app/models/setting.php @@ -195,7 +195,8 @@ class Setting extends AppModel $this->{$v['Setting']['name']} = explode(',',$v['Setting']['value']); break; case 'issue_list_default_columns': - $this->{$v['Setting']['name']} = array_slice(array_map('trim',explode('- ',$v['Setting']['value'])),1); + $this->{$v['Setting']['name']} = Spyc::YAMLLoad($v['Setting']['value']); + // array_slice(array_map('trim',explode('- ',$v['Setting']['value'])),1); break; default: $this->{$v['Setting']['name']} = $v['Setting']['value']; diff --git a/app/views/elements/issues/list.ctp b/app/views/elements/issues/list.ctp index 0fb14d0..80e1b48 100755 --- a/app/views/elements/issues/list.ctp +++ b/app/views/elements/issues/list.ctp @@ -6,18 +6,27 @@ <!--<%= link_to image_tag('toggle_check.png'), {}, :onclick => 'toggleIssuesSelection(Element.up(this, "form")); return false;', :title => "#{l(:button_check_all)}/#{l(:button_uncheck_all)}" %> --></th> - <?php echo $html->tag('th', $paginator->sort('#', 'Issue.id')) ?> - <?php foreach ($queries->columns($query) as $column): ?> - <?php + <?php + // var_dump($paginator->sortKey()); + $sort_mark = ''; + if ($paginator->sortKey() == 'id' || $paginator->sortKey() == 'Issue.id') { + $sort_mark = '&nbsp;'.$html->image('sort_'.$paginator->sortDir().'.png', array('alt' => "Sort_desc")); + } + echo $html->tag('th', $paginator->sort('#', 'Issue.id').$sort_mark); + foreach ($queries->columns($query) as $column): + $sort_mark = ''; + if ($paginator->sortKey() == $queryColumn->sortable($column)) { + $sort_mark = '&nbsp;'.$html->image('sort_'.$paginator->sortDir().'.png', array('alt' => "Sort_desc")); + } echo $html->tag('th', strlen($queryColumn->sortable($column)) ? $paginator->sort(__($column, true), $queryColumn->sortable($column), array( 'direction' => $queryColumn->default_order($column), 'update' => 'content', 'url' => $paginator->params['url_param'] - )) : h(__($column, true)) - ) - ?> - <?php endforeach ?> + )).$sort_mark : h(__($column, true)) + ); + endforeach; + ?> <!-- <%= sort_header_tag('id', :caption => '#', :default_order => 'desc') %> <% query.columns.each do |column| %> diff --git a/app/views/helpers/candy.php b/app/views/helpers/candy.php index 2d1ec52..000ec0d 100644 --- a/app/views/helpers/candy.php +++ b/app/views/helpers/candy.php @@ -302,13 +302,13 @@ class CandyHelper extends AppHelper if (empty($this->Settings->date_format) || (strlen($this->Settings->date_format) < 2)) { $date_format = __('%m/%d/%Y', true); } else { - $date_format = $this->Settings->date_format; + $date_format = __($this->Settings->date_format, true); } if (empty($this->Settings->time_format)) { $time_format = __('%I:%M %p', true); } else { - $time_format = $this->Settings->time_format; + $time_format = __($this->Settings->time_format, true); } if ($include_date) { diff --git a/app/views/helpers/queries.php b/app/views/helpers/queries.php index ab4d262..208b527 100755 --- a/app/views/helpers/queries.php +++ b/app/views/helpers/queries.php @@ -57,7 +57,7 @@ class QueriesHelper extends AppHelper case 'assigned_to': return strlen($issue['Issue']['assigned_to_id']) ? $this->Candy->format_username($issue['AssignedTo']) : ''; case 'updated_on': - return $this->Candy->format_date($issue['Issue']['updated_on']); + return $this->Candy->format_time($issue['Issue']['updated_on']); case 'category': return $issue['Category']['name']; case 'fixed_version': diff --git a/app/views/helpers/query_column.php b/app/views/helpers/query_column.php index d4eaccd..13ee031 100755 --- a/app/views/helpers/query_column.php +++ b/app/views/helpers/query_column.php @@ -7,10 +7,10 @@ class QueryColumnHelper extends AppHelper 'sortable' => 'Tracker.position', ), 'status' => array( - 'sortable' => 'IssueStatus.position', + 'sortable' => 'Status.position', ), 'priority' => array( - 'sortable' => 'Enumeration.position', + 'sortable' => 'Priority.position', 'default_order' => 'desc', ), 'subject' => array( @@ -19,17 +19,17 @@ class QueryColumnHelper extends AppHelper 'author' => array( ), 'assigned_to' => array( - 'sortable' => 'User.lastname', + 'sortable' => 'AssignedTo.lastname', ), 'updated_on' => array( - 'sortable' => 'Issue.position', + 'sortable' => 'Issue.updated_on', 'default_order' => 'desc', ), 'category' => array( - 'sortable' => 'IssueCategory.name', + 'sortable' => 'Category.name', ), 'fixed_version' => array( - 'sortable' => 'Version.effective_date', + 'sortable' => 'FixedVersion.effective_date', 'default_order' => 'desc', ), 'start_date' => array(