<?php echo _title;?> www.prochazka.zde.cz
www.ccsinfo.com/CEH
Server si právě čte 131 lidí, dnes je úterý, 26. Listopad 2024   
Kategorie: Programy, PHP, RS SunLight

List_Download verze 1.1.0.

icons pic Modul pro RS (redakční systém) SunLight CMS 7.5.x. na zobrazení katalogu všech souboru, které jdou určeny na stažení.

Instalace je velice jednoduchá. Stažený soubor uložíte na Váš web do adresáře: \plugins\hcm. Tam vytvoříte adresář hacesoft a do něho uložíte soubor list_download.php a pager.php. Pager.php je objekt staženy z: blog.jakubmaly.cz/programovani/php/strankovani-v-php-a-mysql-pohodlne-a-univerzalne Do aktuálního template soubory nakopírujete CSS formátování. Objekt list_download obsahuje několik konstant které lze měnit.
- První je nazev_tabulky, sem zadejte název tabulky pro HCM modul download.php.
- Cesta_k_obrazkum je konstanta ukazující na adresář kde se nacházejí obrázky hodnocení souboru.
- Pocet_zaznamu_na_stranku je konstanta říkající skriptu kolik záznamů je žádáno na jednu stránku.
Pokud chcete měnit způsob zobrazení stránkování, doporučuji si prostudovat manuál k objektu pager.php. Tento skript pouze zobrazí data z databáze, které jsou plněna modulem download.php download.php Modul list_download.php neobsahuje žádnou administraci. Neumožňuje hodnotit jednotlivé soubory. Toto bude umožněno v dalším HCM modulu.

Do odpovídající sekce nebo stránky, kde zamýšlíte použít výpis, nakopírujte následující kód:

HTML5 code
[ hcm ]hacesoft/list_download[ /hcm ]

Stáhnout HCM modul: list_download verze 1.1.0.php.

CSS profil HCM modulu:

CSS code
thead{background: #ccc url(../images/bar.gif) repeat-x left center;border-top: 1px solid #a5a5a5;border-bottom: 1px solid #a5a5a5;}
caption {font-size: 1.2em;font-weight: bold;margin: 1em 0;}
col {border-right: 1px solid #ccc;}
.DownloadOdd, .ObecnaOdd {background-color:#edf5ff;}
#DownloadHover:hover {background-color: #A8E8DB;color: #fff;}
.DownloadListTable, .ObecnaTable{border-collapse: collapse;width: 50em;border: 1px solid #666;}
.DownloadListTable th, .DownloadListTable td,ObecnaTable td {padding: 0.1em 1em;}
col#Downloadvelikostelikost, col#ObecnaCol {border: none;}
col#DoubleCol {border-right: 3px solid #ccc;}

HCM kód List_Download modulu:

PHP code
<?php
// Autor www.prochazka.zde.cz
// verze souboru  v1.1.0.
// dne 25.02.2013 - vytvoreni modulu
if(!defined('_core')) exit;

define("nazev_tabulky", "download");
define("cesta_k_obrazkum", "web/images/gif");
define("pocet_zaznamu_na_stranku", 15);
define("Nazev_strankovani", "page");
require_once _indexroot."plugins/hcm/hacesoft/pager.php";
require_once _indexroot."plugins/hcm/hacesoft/download.php";

function _HCM_hacesoft_list_download(){    
    $nazev_tabulky = _mysql_prefix."-".nazev_tabulky."-hac";
    $sBuffer ='<table cellspacing="0" cellpadding="0" class="DownloadListTable">';
    $list_download = new HCM_list_download('SELECT * FROM `'.$nazev_tabulky.'` ' ,Nazev_strankovani);
    $list_download->nazev_tabulky = nazev_tabulky;
    $list_download->cesta_k_obrazkum = cesta_k_obrazkum;
    $list_download->PageSize = pocet_zaznamu_na_stranku;
    $list_download->PagerAlign = "center";
    $list_download->DataBind(); //ziska z databaze pozadovanou cast vysledkove sady     //nastaveni modu FirstLast
    $firstLastMode = new FirstLastPagerMode();
    $firstLastMode->FirstPageText = "|<";
    $firstLastMode->LastPageText = ">|";
    $list_download->AddPagerMode($firstLastMode);
    $prevNextMode = new PrevNextPagerMode();
    $prevNextMode->NextPageText = "> Další";
    $prevNextMode->PrevPageText = "< Předchozí";
    $list_download->AddPagerMode($prevNextMode);
    $list_download->AddPagerMode(new DefaultPagerMode);
    $sBuffer .='<caption>'.$list_download->DrawPager()."</caption>";
    $sBuffer .= $list_download->DrawHeader();
    $sBuffer .= $list_download->vypis_list_download ();
    $sBuffer .="</table>";
    return $sBuffer;}

class HCM_list_download extends Pager{
    Private $order = "order";
    Private $sAdrScript;
    Private $rev ="&rev=1"; //0 = asc , 1 = desc
    Private $sRev="";
    Private $sOrder="";
    public $nazev_tabulky;
    public $cesta_k_obrazkum;
    public $lang;
    public $sRevS =""; //s = soubor
    public $sRevH =""; //h = hodnoceni
    public $sRevR =""; //r = rubrika
    public $sRevD =""; //d = stazeni
    public $sRevV =""; //v = velikost

    public function __construct($SelectCommand, $UrlParameterName){
        $this->list_download_lang();
        $this->sAdrScript = $this->GetAdrScript();
        $SelectCommand = $this->UpdateGetSql ($SelectCommand);
        parent::__construct($SelectCommand, $UrlParameterName);}
 
    private function UpdateGetSql($SelectCommand){
         if ($this->sOrder <>""){$sXrev="";
             if ($this->sRev == 1){$sXrev ="DESC";} else{$sXrev="ASC";}
            $SelectCommand = $SelectCommand." ORDER BY `".$this->sOrder."` ".$sXrev;
         }
    return $SelectCommand;}
    private function GetAdrScript(){
        if (isset($_GET["rev"])){$this->sRev = $_GET['rev'];}
        if (isset($_GET["order"])){$this->sOrder = $_GET['order'];}
        $hrefprefix = $_SERVER['SCRIPT_NAME'];
        $this->UrlParameterName = $this->order;
        $this->first=1;
        foreach ( $_GET as $key=>$value){
            if ($key == $this->UrlParameterName){
                if($value == "soubor"){if($this->sRev == 0){$this->sRevS = $this->rev;}else{$this->sRevS="";}}
                if($value == "hodnoceni"){if($this->sRev == 0){$this->sRevH = $this->rev;}else{$this->sRevH="";}}
                if($value == "rubrika"){if($this->sRev == 0){$this->sRevR = $this->rev;}else{$this->sRevR="";}}
                if($value == "stazeni"){if($this->sRev == 0){$this->sRevD = $this->rev;}else{$this->sRevD="";}}
                if($value == "velikost"){if($this->sRev == 0){$this->sRevV = $this->rev;}else{$this->sRevV="";}}
                continue;}
            if ($key == "rev"){continue;}  
            if ($this->first){
            $hrefprefix .= "?".$key."=".$value;
            $this->first = 0;}
        else $hrefprefix .= "&".$key."=".$value;}
    return $hrefprefix;}
   
    public function vypis_list_download (){
        $sBuffer="";
        $nBuffer =0;
        while ($obj = $this->GetOne()){
            $sClass ='';
            $sNameFile = $obj->soubor;
            $nStart = StrrPos($sNameFile, "/");
            if ($nStart !== false) {$sNameFile = SubStr($sNameFile, $nStart + 1, (StrLen($sNameFile) - $nStart) - 1);}            
            $picture = (round($obj->hodnoceni*2)/2)*10;
            $oDownload = new HCM_download($sNameFile,$sNameFile, _indexroot."web/download");
            $oDownload->DataBind();
            if ($nBuffer == 0){$sClass ='class="DownloadOdd"';$nBuffer=$nBuffer+1;}else $nBuffer=0;
            $sBuffer .='<tbody><tr '.$sClass.' id="DownloadHover"><td class="pager-body-file"><h4>';
            if (!isset($_GET[$oDownload->UrlParameterName])){
                $sBuffer .="<a class='download' href='".$oDownload->sAdrScript.'&'.$oDownload->UrlParameterName.'='.$oDownload->SPatchFile."'
                title='"
.$this->lang['download.voice.download'].$oDownload->SshowFile."'>".$oDownload->SshowFile."</a>";}
            unset ($oDownload);
            $sBuffer .='</h4><br /><span class="text-small">'.$this->lang['download.list.date'].$obj->datum.'</span><br />
            <span class="text-small">'
.$this->lang['download.list.date_download'].$obj->naposledy_stazen.'</span>';
            $sBuffer .='</td><td class="pager-body-rating"><a href="'.$this->sAdrScript.'&hodnot='.$sNameFile.'" ><img src="'.$this->cesta_k_obrazkum.'/'.$picture.'.gif" title="'.$this->lang['download.voice.rate'].$obj->hodnoceni.'" /></a>
            <br /><span class="text-small">('
.$obj->pocet_hodnotitelu.'x '.$this->lang['download.voice.ranking'].')</span></td>
            <td class="pager-body-sekce">'
.$obj->rubrika.'</td><td class="pager-body-download">'.$obj->stazeni.'</td><td class="pager-body-size">'.$obj->velikost.'</td></tr>';}
             $sBuffer .='</tbody>';
        return $sBuffer;}
   
    public function DrawHeader (){

        $sBuffer ='<colgroup><col id="DownloadSoubor" /><col id="DownloadHodnoceni" /><col id="DownloadRubrika" /><col id="DownloadStazeni" /><col id="Downloadvelikostelikost" /></colgroup> ';
        $sBuffer .='<thead><tr>';
        $sBuffer .= '<th scope="col"><a href="'.$this->sAdrScript.'&order=soubor'.$this->sRevS.'" title="'.$this->lang['download.header.files.alignmet'].'">'.$this->lang['download.header.files.name'].'</a></th>';
        $sBuffer .= '<th scope="col"><a href="'.$this->sAdrScript.'&order=hodnoceni'.$this->sRevH.'" title="'.$this->lang['download.header.rating.alignmet'].'">'.$this->lang['download.header.rating.name'].'</a></th>';
        $sBuffer .= '<th scope="col"><a href="'.$this->sAdrScript.'&order=rubrika'.$this->sRevR.'" title="'.$this->lang['download.header.category.alignmet'].'">'.$this->lang['download.header.category.name'].'</a></th>';
        $sBuffer .= '<th scope="col"><a href="'.$this->sAdrScript.'&order=stazeni'.$this->sRevD.'" title="'.$this->lang['download.header.contracted.alignmet'].'">'.$this->lang['download.header.contracted.name'].'</a></th>';
        $sBuffer .= '<th scope="col"><a href="'.$this->sAdrScript.'&order=velikost'.$this->sRevV.'" title="'.$this->lang['download.header.size.alignmet'].'">'.$this->lang['download.header.size.name'].'</a></th>';
    $sBuffer .= '</tr></thead>';
    return $sBuffer;}
   
    function list_download_lang(){
    $lang['download.files.number']="Nalezený software celkem: ";
    $lang['download.voice.rate']="Průměrné hodnocení: ";
    $lang['download.voice.ranking']="hodnoceno";
    $lang['download.list.date']="Datum vytvoření:  ";
    $lang['download.list.date_download']="Poslední stahnutí:  ";
    $lang['download.list.description']="Popis:  ";
    $lang['download.voice.download']="Stáhnout ";
    $lang['download.header.files.alignmet']="Seřadit podle název programu";
    $lang['download.header.rating.alignmet']="Seřadit podle hodnocení";
    $lang['download.header.category.alignmet']="Seřadit podle kategorie";
    $lang['download.header.contracted.alignmet']="Seřadit podle stažení";
    $lang['download.header.size.alignmet']="Seřadit podle velikost";
    $lang['download.header.files.name']="Název programu";
    $lang['download.header.rating.name']="Hodnocení";
    $lang['download.header.category.name']="Kategorie";
    $lang['download.header.contracted.name']="Stažení";
    $lang['download.header.size.name']="Velikost";
    return $this->lang = $lang;}      
}?>

print Formát pro tisk

Komentáře rss

Přidat komentář >

Nebyly přidány žádné komentáře.

Všechny informace jsou zahrnuty pod GPL licenci, pokud není explicitně uveden jiný typ licence.
Používání těchto stránek ke komerčním účelům lze jen se souhlasem autora.
Všechna práva vyhrazena (c) 1997 - 2024 hacesoft.
Jste návštevník číslo: 445337
Celkem zobrazeno stránek: 17748957
Přihlásit do administrace