<?php
namespace admin\controls;

class Layouts
{
  public static function layout_delete()
  {
    if ( \admin\factory\Layouts::layout_delete( \S::get( 'id' ) ) )
      \S::alert( 'Szablon został usunięty.' );
    header( 'Location: /admin/layouts/view_list/' );
    exit;
  }

  public static function layout_save()
  {
    $response = [ 'status' => 'error', 'msg' => 'Podczas zapisywania szablonu wystąpił błąd. Proszę spróbować ponownie.' ];
    $values = json_decode( \S::get( 'values' ), true );

    if ( $id = \admin\factory\Layouts::layout_save( $values['id'], $values['name'], $values['status'], $values['pages'], $values['html'], $values['css'], $values['js'], $values['m_html'],
            $values['m_css'], $values['m_js'], $values['categories'], $values['categories_default'] )
    )
      $response = [ 'status' => 'ok', 'msg' => 'Szablon został zapisany.', 'id' => $id ];

    echo json_encode( $response );
    exit;
  }

  public static function layout_edit()
  {
    return \Tpl::view( 'layouts/layout-edit', [
              'layout' => \admin\factory\Layouts::layout_details( \S::get( 'id' ) ),
              'menus' => \admin\factory\Layouts::menus_list(),
              'categories' => \admin\factory\ShopCategory::subcategories( null ),
              'dlang' => \front\factory\Languages::default_language()
            ] );
  }

  public static function view_list()
  {
    return \admin\view\Layouts::layouts_list();
  }
}
?>