<?php

class action{Name}Edit{Entity} extends cmsAction {
	
    public function run($id=false){

        if (!$id) { cmsCore::error404(); }

        $model = cmsCore::getModel($this->name);

        ${entity} = $this->model->get{Entity}($id);

        if (!${entity}) { cmsCore::error404(); }

        $errors = false;

        $form = $this->getForm('{form}');

        $is_submitted = $this->request->has('submit');				

        if ($is_submitted){

            ${entity} = $form->parse($this->request, $is_submitted);

            $errors = $form->validate($this, ${entity});

            if (!$errors){
                $model->update{Entity}($id, ${entity});
                $this->redirectToAction('{entities}');
            }

            if ($errors){
                cmsUser::addSessionMessage(LANG_FORM_ERRORS, 'error');
            }

        }

        $template = cmsTemplate::getInstance();

        return $template->render('backend/form_{entity}', array(
            'do' => 'edit',
            'form' => $form,
            'errors' => $errors,
            '{entity}' => ${entity}
        ));

    }
	
}