ACC SHELL

Path : /srv/www/vhosts/centrumlb/administrace/libs/
File Upload :
Current File : /srv/www/vhosts/centrumlb/administrace/libs/platebnimetody.class.php

<?php


/**
 *
 * @version 1.0
 * @copyright 2012
 * @name Modul Platebni metody
 */
class PlatebniMetody {

    /**
     * Constructor
     */
    function __construct() {

    }

    /**
     *
     * @param type $id v adminu id kategorie, na vystupu seo-url
     * @param type $lang id jazyka
     * @param type $admin jedna se o hledani na frontendu(false) nebo backendu (true) ?
     * @return array
     */
    public function fetchSingle($id, $lang = false, $admin = true) {
	$id = intval($id);
	$lang = intval($lang) == 1 ? $lang : $_SESSION['jazyk'];
	$query = "SELECT
		    a.id, a.hloubka, a.parent_id, a.lft, a.rgt,
		    b.nazev AS nazev, b.id as id_popisu, b.stav AS stav, b.datum,
		    b.obsah,b.obrazek,
		    j.kod
                FROM platba a
                LEFT JOIN platba_popis b ON a.id = b.main_id
                LEFT JOIN jazyk j ON b.lang = j.id
                WHERE b.lang  =". $lang;
	$query .= isset($admin) ? " AND b.id = $id" : " AND b.seo_url = $id";
	$query .= " LIMIT 1";

	return dibi::query($query)->fetch();
    }

    /**
     *
     * @param type $lang id jazykove verze
     * @param type $onlyActive true pokud chci jen aktivni
     * @return type
     */
     public function fetchAll($lang = false, $onlyActive = false) {
	 if (!$lang) {
	     $lang = $_SESSION['jazyk'];
	 }

	 $active = $onlyActive == true ? 'AND b.stav = 1' : '';

	$query = "SELECT a.id, a.hloubka, b.nazev AS nazev, b.stav AS stav, b.datum, b.obsah, j.kod,
	    a.lft, a.rgt, a.parent_id, a.hloubka
                FROM platba a
                LEFT JOIN platba_popis b ON a.id = b.main_id
                LEFT JOIN jazyk j ON b.lang = j.id
                WHERE b.lang  = '" . $lang . "'
                $active
                ORDER BY a.lft ASC";

	return dibi::query($query)->fetchAll();
    }

    public function getAdminTable() {

	$result = $this->fetchAll();

	//NDebugger::dump($result);
	if (!$result) {
	    return false;
	}
	//Zjisteni minimalni a maximalni hodnoty pro kazdou kategorii
	$query = "SELECT parent_id, min(lft) lft, max(rgt) rgt FROM platba group by parent_id";
	$test = mysql_query($query);
	while ($test1 = mysql_fetch_assoc($test)) {
	    $showMove[$test1['parent_id']]['lft'] = $test1['lft'];
	    $showMove[$test1['parent_id']]['rgt'] = $test1['rgt'];
	}


	foreach ($result as $row) {
	    echo '<tr>';
	    echo '<td><input type="checkbox" name="checkbox[]" value="' . $row->id . '" id="" ></td>';

	    echo '<td>';
	    /*
	    if ($row->obrazek != null) {
		$foto_small = DISKOGRAFIE_F_M_PATH . $row->obrazek;
		$foto_large = DISKOGRAFIE_F_L_PATH . $row->obrazek;
		echo '<a href="#"><img class="vypis_nahled" src="' . $foto_small . '" alt="" title="' . $row->nazev . '" /></a>';
	    }
	     *
	     */
	    echo '</td>';


	    echo '<td><a href="platebnimetody_edit.php?id=' . $row->id . '">' . $row->nazev . '</a><br />';

	    $query = "SELECT kp.lang, j.nazev, j.obrazek, j.kod
                            FROM platba_popis kp
                            LEFT JOIN jazyk j ON j.id = kp.lang
                            WHERE kp.main_id = $row->id
                            ORDER BY j.id";
	    $langs = dibi::query($query)->fetchAll();

	    // jazykove mutace
	    $flags = Query::getLanguageFlags($row['id'], 'platba');
	    echo "<td>";
	    foreach ($flags as $f) {
		echo "<img class=\"vypis_jazyky\" src=\"images/flags/$f->obrazek\" alt=\"$f->nazev\" title=\"$f->nazev\" />";
	    }
	    echo "</td>";
	    // end of jazykove mutace

	    $stav = $row['stav'] == '1' ? "Ano" : "Ne";
	    echo '<td><a href="?platba&amp;id=' . $row->id . '&amp;stav=' . $stav . '">' . $stav . '</a></td>';

	    echo '<td>' . datum($row['datum']) . '</td>';

	    echo '<td>';
	    if ($showMove[$row['parent_id']]['lft'] != $row['lft']) {
		echo '<a href="?platba&amp;up=' . $row->id . '" title="Posun nahoru"><img src="images/iko/up.png" alt="Posun nahoru" /></a>';
	    }
	    if ($showMove[$row['parent_id']]['rgt'] != $row['rgt']) {
		echo '<a href="?platba&amp;down=' . $row->id . '" title="Posun dolů"><img src="images/iko/down.png" alt="Posun dolů" /></a>';
	    }
	    echo '</td>';

	    echo '<td>';
	    echo '<a href="platebnimetody_edit.php?id=' . $row->id . '" title="Editovat"><img src="images/iko/note_edit.png" alt="Editovat" /></a>';
	    echo '<a href="?platba&amp;smazat=' . $row->id . '" class="potvrzujiciLink"  title="Smazat"><img src="images/iko/remove.png" alt="Smazat" /></a></td>';
	    echo '</tr>';
	}
	return true;
    }

    /**
     *
     * @param type $id id dopravy
     * @param type $lang id jazyka //TODO
     * @return pole plateb, ktere jsou svazany s konkretni dopravou
     */
    public function getPrirazenePlatby($id=false, $lang=1) {
	if (!$id) {
	    return false;
	} else {
	    $query = "SELECT *
		      FROM platba_prirazeni a
		      WHERE a.id_dopravy = '" . $id . "'";

	    return dibi::query($query)->fetchAll();
	}
    }

    /**
     *
     * @param type $id id platebni metody, kterou chceme zrusit z konkretni dopravy
     */
    public function zrusitPrirazeni($id_dopravy, $id_platby) {
	dibi::query('DELETE FROM platba_prirazeni WHERE id_dopravy=%i', $id_dopravy, ' AND id_platby=%i', $id_platby);
    }

    /*
    public function smazatFotku($id) {
	$obrazek = dibi::select('obrazek')->from('platba_popis')->where('main_id=%i', $id)->fetchSingle();
	if ($obrazek == null) {
	    return true;
	}
	if (dibi::query('UPDATE platba_popis SET obrazek=NULL where main_id=%i', $id)) {
	    unlink(ROOT . platba_F_L_PATH . $obrazek);
	    unlink(ROOT . platba_F_M_PATH . $obrazek);
	    return true;
	} else {
	    return false;
	}
    }

    public function smazatSkladbu($id) {
	$row = dibi::query('SELECT file, priorita, id_diskografie FROM skladby WHERE id=%i', $id, ' LIMIT 1')->fetch();

	if (dibi::query('DELETE FROM skladby WHERE id=%i', $id)) {
	    dibi::query('DELETE FROM skladby_popis WHERE id_skladby=%i', $id);
	    unlink(ROOT . MUSIC_PATH . $row->file . '.ogg');
	    unlink(ROOT . MUSIC_PATH . $row->file . '.mp3');
	    unlink(ROOT . MUSIC_PATH . $row->file . '.wmv');
	    $this->nastavPrioritu($row->priorita, $row->id_diskografie);
	    return true;
	} else {
	    return false;
	}
    }
     *
     */
}

ACC SHELL 2018