Roxen.git / server / etc / modules / Variable.pmod / module.pmod

version» Context lines:

Roxen.git/server/etc/modules/Variable.pmod/module.pmod:1: - // $Id: module.pmod,v 1.112 2008/12/18 15:04:58 grubba Exp $ + // $Id: module.pmod,v 1.113 2008/12/19 12:17:32 grubba Exp $      #include <module.h>   #include <roxen.h>      // Locale macros   //<locale-token project="roxen_config"> LOCALE </locale-token>      #define LOCALE(X,Y) \    ([string](mixed)Locale.translate("roxen_config",roxenp()->locale->get(),X,Y))   
Roxen.git/server/etc/modules/Variable.pmod/module.pmod:1475:    res = transform_from_form(module_id);    if (res) low_set(res);    } else {    res = default_value();    if (res) low_set(res);    }    }    return res;    }    +  //! Fetch the unsorted list of choices. +  protected array low_get_choice_list() +  { +  return indices(conf->otomod); +  } +     array get_choice_list()    { -  array res = indices(conf->otomod); -  // FIXME: Sort on priority as well? +  array res = low_get_choice_list(); +  // Sort order: +  // priority: descending, +  // title: ascending, +  // module_id: ascending. +  sort(res->module_local_id(), res);    sort(map(res, _title), res); -  +  res = reverse(res); +  sort(res->query("_priority"), res); +  res = reverse(res);    return res;    }       protected string _name(RoxenModule val)    {    return val?val->module_local_id():"";    }       protected string _title(RoxenModule val)    {
Roxen.git/server/etc/modules/Variable.pmod/module.pmod:1539:    }   }      //! Select a module that provides the specified interface.   class ProviderChoice   {    inherit ModuleChoice;    constant type = "ProviderChoice";    protected string provides;    -  array get_choice_list() +  protected array low_get_choice_list()    { -  array res = conf->get_providers(provides); -  // FIXME: Sort on priority as well? -  sort(map(res, _title), res); -  return res; +  return conf->get_providers(provides);    }       //! @param default_id    //! The @[RoxenModule.module_local_id] of the default value.    //! @param provides    //! The provider string to match modules against.    //! @param conf    //! The current configuration.    protected void create(string default_id, int flags,    string std_name, string std_doc,