arnouxor/alienosor

This package is abandoned and no longer maintained. No replacement package was suggested.
There is no license information available for the latest version (v2.0.18) of this package.

Optimisez vos appels Ajax / Basic ou REST sous Codeigniter

v2.0.18 2017-10-02 07:25 UTC

README

Alienosor vous permet de nettoyer vos controllers en vous forçant à en sortir le code métier

  • Sécurité : Vous force à controller les variables entrantes
  • Propreté : Vous force à avoir le code métier dans des libraries / models
  • Facilité : Il vérifie les variables, gère les retour et d'autres petites choses

Et tout ça avec un simple : $this->alienosor->process({params})

Installation

composer require arnouxor/alienosor

Then in a controller you need to load the third party library

$this->load->add_package_path(FCPATH . 'vendor/arnouxor/alienosor');
$this->load->library('alienosor');
$this->load->remove_package_path(FCPATH . 'vendor/arnouxor/alienosor');

Appel Ajax

   public function ajax_search()
    {
         $config = array(
            ['field' => 'searchText', 'label' => '', 'rules' => 'trim|required|integer'],
        );

        // appel d'alienosor
        $this->alienosor->process($config, "AJAX", array(
            ["type" => "library", "file" => "myfirst_lib", "method" => "method1", "params" => array("searchText")],
            ["type" => "model", "file" => "myfirst_model", "method" => "method2", "params" => array("searchText", "__LAST_RESULT", "mycustomvariable")]
        ));
        
        // le retour est géré automatiquement
    }

Appel REST

En utilisant https://github.com/maltyxx/restserver

public function get()
    {
        $response = $this->restserver->protocol();
        
        $config = array(
            ['field' => 'name', 'label' => '', 'rules' => 'trim|min_length[0]|max_length[100]'],
        );
        
        // appel d'alienosor
        $results = $this->alienosor->process(
            $config, 
            "BASIC", 
            [
                ["type" => "model", "file" => "artist_model", "method" => "search", "params" => ["name"]]
            ]
        );
        
        $this->restserver->response($results, 201);
    }

Transformation

Vous pouvez appeler une méthode de transformation qui transformera un des paramètres avant de l'envoyer à la méthode voulue.

$config = [
    ['field' => 'myData', 'rules' => 'trim|alpha_dash', 'transformation' => 'myMethod'],
];