Плагин для магазина

Хочу написать плагин, который будет добавлять запись через форму в таблицу, форма будет доступна на всех стр-х(index.html), как вызвать ее и через форму POST'ом вызвать метод добавления, надо ли писать отдельные action'ы или этих файлов достаточно, заранее спасибо

/callback

/callback/lib

/callback/lib/config/plugin.php

<?php

return array(

    'name' => 'Callback',

    'version' => '1.0',

    'handlers' => array(

      'form' => 'callbackForm',

      'append' => 'appendCall',

    ),

    'img' => 'img/plugin.png',

    'description' => 'Callback in shop'

);

?>



/callback/lib/shopCallback.plugin.php

<?php

class shopCallbackPlugin extends waPlugin

{

    public function callbackForm($params) 

    {

        $view = wa()->getView();

        $content = $view->fetch($this->path.'/templates/callback.html');

    }

    

    public function appendCall($params)

    {

        $model = new callbackModel();

        if (waRequest::method() == 'post') {

          $name = waRequest::post('name');

          $text = waRequest::post('phone');

          if ($name && $phone) {

            $model->insert(array(

              'name' => $name,

              'phone' => $phone,

              'status' => 0,

              'datetime' => date('Y-m-d H:i:s')

            ));

          }

        }

    }

}

?>



/callback/lib/models/callback.model.php

<?php

class callbackModel extends waModel

{

  protected $table = 'callback';

}

?>



/callback/templates/callback.html

<div class="vs_callback_form">

    <form name="callback" action="">

        <p><input type="text" name="name" placeholder="[`Name`]" /></p>

        <p><input type="text" name="phone" placeholder="[`Phone`]" /></p>

        <p><input type="submit" name="submit" value="[`Call`]" /></p>

    </form>

</div>

1 ответ

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите