<?php
global $gdb;

$grid = new \grid( 'pp_articles' );
$grid -> gdb_opt      = $gdb;
$grid -> sql          = 'SELECT *'
                            . 'FROM ( '
                              . 'SELECT '
                                . 'id, date_add, date_modify, status, '
                                . '( SELECT title FROM pp_articles_langs AS pal, pp_langs AS pl WHERE lang_id = pl.id AND article_id = pa.id AND title != \'\' ORDER BY o ASC LIMIT 1 ) AS title, '
                                . '( SELECT login FROM pp_users AS pu WHERE pu.id = pa.modify_by ) AS user '
                              . 'FROM '
                                . 'pp_articles AS pa WHERE status != -1 '
                              . ') AS q1 '
                          . 'WHERE '
                            . '1=1 [where] '
                          . 'ORDER BY '
                            . '[order_p1] [order_p2]';
$grid -> sql_count    = 'SELECT '
                            . 'COUNT(0) FROM ( '
                              . 'SELECT '
                                . 'id, date_add, date_modify, status, '
                                . '( SELECT title FROM pp_articles_langs AS pal, pp_langs AS pl WHERE lang_id = pl.id AND article_id = pa.id AND title != \'\' ORDER BY o ASC LIMIT 1 ) AS title, '
                                . '( SELECT login FROM pp_users AS pu WHERE pu.id = pa.modify_by ) AS user '
                              . 'FROM '
                                . 'pp_articles AS pa WHERE status != -1 '
                            . ') AS q1 '
                          . 'WHERE '
                            . '1=1 [where] ';
$grid -> debug        = true;
$grid -> order        = [ 'column' => 'date_add', 'type' => 'DESC' ];
$grid -> search       = [
                            [ 'name' => 'Tytuł', 'db' => 'title', 'type' => 'text' ],
                            [ 'name' => 'Aktywny', 'db' => 'status', 'type' => 'select', 'replace' => [ 'array' => [ 0 => 'nie', 1 => 'tak' ] ] ],
                            [ 'name' => 'Data dodania', 'db' => 'date_add', 'type' => 'date_range' ],
                            [ 'name' => 'Data modyfikacji', 'db' => 'date_modify', 'type' => 'date_range' ]
                        ];
$grid -> columns_view = [
                          [ 
                            'name' => 'Lp.',
                            'th' => [ 'class' => 'g-lp' ],
                            'td' => [ 'class' => 'g-center' ],
                            'autoincrement' => true 
                          ],
                          [
                            'name'  => 'Tytuł',
                            'db'    => 'title',
                            'sort'  => true,
                            'php'   => 'echo "[title]"; echo "<small class=\'text-muted\'>" . \admin\factory\Articles::article_pages( [id] ) . "</small>";'
                          ],
                          [
                            'name' => 'Aktywny',
                            'db' => 'status',
                            'replace' => [ 'array' => [ 0 => '<span style="color: #FF0000;">nie</span>', 1 => 'tak' ] ],
                            'td' => [ 'class' => 'g-center' ],
                            'th' => [ 'class' => 'g-center', 'style' => 'width: 150px;' ],
                            'sort' => true
                          ],
                          [
                            'name'  => 'Data dodania',
                            'db'    => 'date_add',
                            'td'    => [ 'class' => 'g-center' ],
                            'th'    => [ 'class' => 'g-center', 'style' => 'width: 220px;' ],
                            'php'   => 'echo date( "Y-m-d H:i", strtotime( "[date_add]" ) );'
                          ],
                          [
                            'name'  => 'Data modyfikacji',
                            'db'    => 'date_modify',
                            'td'    => [ 'class' => 'g-center' ],
                            'th'    => [ 'class' => 'g-center', 'style' => 'width: 220px;' ],
                            'php'   => 'echo date( "Y-m-d H:i", strtotime( "[date_modify]" ) );'
                          ],
                          [
                            'name'  => 'Modyfikowany przez',
                            'db'    => 'user',
                            'td'    => [ 'class' => 'g-center' ],
                            'th'    => [ 'class' => 'g-center', 'style' => 'width: 220px;' ],
                          ],
                          [
                            'name'  => 'Akcja',
                            'db'    => 'id',
                            'td'    => [ 'class' => 'g-center' ],
                            'th'    => [ 'class' => 'g-center', 'style' => 'width: 120px;' ],
                            'php'   => 'echo "<a href=\'#\' class=\'button\' url=\'/" . \admin\factory\Articles::article_url( [id] ) . "\'>wybierz</a>";'
                          ]
                        ];
echo $grid -> draw();
?>
<style type="text/css">
  body.sb-top.sb-top-sm .navbar.navbar-fixed-top + #sidebar_left + #content_wrapper {
    padding-top: 0;
  }
</style>
<script type="text/javascript">
  function getUrlParam(paramName) 
  {
    var reParam = new RegExp('(?:[\?&]|&amp;)' + paramName + '=([^&]+)', 'i');
    var match = window.location.search.match(reParam);

    return (match && match.length > 1) ? match[1] : '';
  }
    
  $( function() 
  {
    $( '#sidebar_left, .navbar-fixed-top' ).hide();
    
    var funcNum = getUrlParam('CKEditorFuncNum');
    
    $( 'body' ).on( 'click', '.button', function()
    {
       window.opener.CKEDITOR.tools.callFunction(funcNum, $( this ).attr( 'url' ) );
       window.close();
    });
  });
</script>