I'm not sure that you understood my problem (or I didn't understand your answer). I'm talking about pagination template, not the config you give to the pagination instance.
The two templates I have are located in app/config/pagination.php, and the active template is defined in the 'active' config key in that file. (Which is 'default' by default)
This is what I want to be able to change. But if you set the 'active' property in the config you pass to your pagination instance, it set the active link, and not the template to use.
The 'active' value is just to set the template definition you want to load by default, i.e. if you don't explictly ask for one. It is not there to set at runtime, but to default your default.
In the default pagination config file (in fuel/core), there are 3 templates defined: 'default', 'bootstrap' and 'bootstrap3'.
You assume here that the config is only used to pass parameters. This is not the case, all variables that are used to generate the pagination are part of the config array. And that includes all the keys that provide the HTML, as defined in the config file.
For example, in apps that use bootstrap, we use font-awesome instead of HTML entities for the markers, so we do something like:
(note: this is simplyfied for sake of the example).
The 'name' is part of the config to override the 'active' definition is the config, if that would not be there, Pagination would load the active template as the basis, and we want it to use the bootstrap3 template as the basis.
This works fine for simple adjustments. If you have an entirely different template, it is better to define it in your app/config/pagination.php config file, and set 'active' to load it by default.