URI: 
       Making direction optional (and setting defaults) for GroupBy Pages functionality. - hugo - [fork] hugo port for 9front
  HTML git clone git@git.drkhsh.at/hugo.git
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
   DIR README
   DIR LICENSE
       ---
   DIR commit 7e19fa40e7e28dc77be20f9bd94d9503490c378e
   DIR parent b15eb889e8c05885d6a58dc4f49eb5005e8b9c0b
  HTML Author: spf13 <steve.francia@gmail.com>
       Date:   Fri, 29 Aug 2014 23:51:29 -0400
       
       Making direction optional (and setting defaults) for GroupBy Pages functionality.
       
       Diffstat:
         M hugolib/pageGroup.go                |      17 ++++++++---------
       
       1 file changed, 8 insertions(+), 9 deletions(-)
       ---
   DIR diff --git a/hugolib/pageGroup.go b/hugolib/pageGroup.go
       @@ -62,7 +62,6 @@ func sortKeys(v []reflect.Value, order string) []reflect.Value {
                return v
        }
        
       -func (p Pages) GroupBy(key, order string) ([]PageGroup, error) {
        type PagesGroup []PageGroup
        
        func (p PagesGroup) Reverse() PagesGroup {
       @@ -73,12 +72,15 @@ func (p PagesGroup) Reverse() PagesGroup {
                return p
        }
        
       +func (p Pages) GroupBy(key string, order ...string) (PagesGroup, error) {
                if len(p) < 1 {
                        return nil, nil
                }
        
       -        if order != "asc" && order != "desc" {
       -                return nil, errors.New("order argument must be 'asc' or 'desc'")
       +        direction := "asc"
       +
       +        if len(order) > 0 && (strings.ToLower(order[0]) == "desc" || strings.ToLower(order[0]) == "rev" || strings.ToLower(order[0]) == "reverse") {
       +                direction = "desc"
                }
        
                ppt := reflect.TypeOf(&Page{})
       @@ -105,17 +107,14 @@ func (p PagesGroup) Reverse() PagesGroup {
                return r, nil
        }
        
       -func (p Pages) GroupByDate(format, order string) ([]PageGroup, error) {
       +func (p Pages) GroupByDate(format string, order ...string) (PagesGroup, error) {
                if len(p) < 1 {
                        return nil, nil
                }
        
       -        if order != "asc" && order != "desc" {
       -                return nil, errors.New("order argument must be 'asc' or 'desc'")
       -        }
       -
                sp := p.ByDate()
       -        if order == "desc" {
       +
       +        if !(len(order) > 0 && (strings.ToLower(order[0]) == "asc" || strings.ToLower(order[0]) == "rev" || strings.ToLower(order[0]) == "reverse")) {
                        sp = sp.Reverse()
                }