Dosya İndirme

Bu bölümün görüntülenmesi attachment.tpl dosyasında yapılandırılabilir. Bu bölümde, komut dosyası kullanılarak yüklenen indirilebilir dosyaların görüntülenmesi yapılandırılır. Aşağıdaki etiketleri kullanabilirsiniz:

İzin ve Kontrol Etiketleri

Etiket Açıklama
[allow-download] ve [/allow-download] Web sitesi kullanıcısının dosya indirmesine izin verilirse, içinde bulunan metni görüntüler.
[not-allow-download] ve [/not-allow-download] Web sitesi kullanıcısının dosya indirmesine izin verilmezse, içinde bulunan metni görüntüler.
[count] ve [/count] Komut dosyası ayarlarında dosya indirme sayacı etkinleştirilmişse, içinde bulunan metni görüntüler.
[allow-online] ve [/allow-online] Yüklenen belge çevrimiçi görüntülemek için desteklenen bir formata sahipse, içinde bulunan metni görüntüler.

Dosya Bilgisi Etiketleri

Etiket Açıklama
{id} Yüklenen dosyanın benzersiz kimliğini (ID) görüntüler. Bu dosya hakkında bilgiler veritabanında saklanır.
{name} Yüklenen dosyanın adını veya makalenin metninde [аttachment=...] etiketinde ad olarak belirtilen metni görüntüler.
{extension} Ekli dosyanın uzantısını görüntüler.
{link} Dosya indirme URL'si.
{size} Dosya boyutu.
{md5} Yüklenen dosyanın MD5 sağlama toplamı.
{online-view-link} Belgeyi tarayıcıda çevrimiçi görüntülemek için URL bağlantısını görüntüler.

Tarih ve İstatistik Etiketleri

Etiket Açıklama
{date} Dosya yükleme tarihini, komut dosyanızda belirtilen tarih biçiminde görüntüler.
{date=date format} Tarihi belirtilen biçimde görüntüler. Hem tam tarihi hem de ayrı parçalarını görüntülemenizi sağlar. Tarih biçimi PHP biçimine göre ayarlanır. Örneğin, {date=d} etiketi makale veya yorum yayınının gününü görüntüler ve {date=F} etiketi ayın adını görüntüler. {date=d-m-Y H:i} tam tarihi ve saati görüntüler.
{count} Dosyanın indirilme sayısı.

Örnek Kullanımlar

Temel Dosya İndirme Şablonu

<div class="attachment">
    <h4>Ek Dosya: {name}</h4>
    <div class="attachment-info">
        <p>Dosya türü: {extension}</p>
        <p>Boyut: {size}</p>
        <p>Yüklenme tarihi: {date=d.m.Y H:i}</p>
        [count]<p>İndirilme sayısı: {count}</p>[/count]
    </div>
    
    [allow-download]
        <div class="download-links">
            <a href="{link}" class="download-btn">İndir</a>
            [allow-online]<a href="{online-view-link}" class="view-btn" target="_blank">Çevrimiçi Görüntüle</a>[/allow-online]
        </div>
    [/allow-download]
    
    [not-allow-download]
        <div class="restricted-download">
            Bu dosyayı indirebilmek için lütfen <a href="/index.php?do=register">kayıt olun</a> veya <a href="/index.php?do=login">giriş yapın</a>.
        </div>
    [/not-allow-download]
</div>

Gelişmiş Dosya İndirme Şablonu

<div class="file-attachment card" id="attachment-{id}">
    <div class="card-header">
        <span class="file-extension badge badge-primary">{extension}</span>
        <h5 class="file-title">{name}</h5>
    </div>
    
    <div class="card-body">
        <div class="row">
            <div class="col-md-9">
                <ul class="file-details list-unstyled">
                    <li><i class="fas fa-weight-hanging"></i> <strong>Dosya boyutu:</strong> {size}</li>
                    <li><i class="fas fa-calendar-alt"></i> <strong>Yüklenme tarihi:</strong> {date=d MMMM Y, H:i}</li>
                    [count]<li><i class="fas fa-download"></i> <strong>İndirilme:</strong> {count} kez</li>[/count]
                    <li><i class="fas fa-fingerprint"></i> <strong>MD5:</strong> <small>{md5}</small></li>
                </ul>
            </div>
            
            <div class="col-md-3 text-right">
                [allow-download]
                    <div class="download-actions">
                        <a href="{link}" class="btn btn-success btn-block mb-2">
                            <i class="fas fa-download"></i> İndir
                        </a>
                        [allow-online]
                            <a href="{online-view-link}" class="btn btn-info btn-block" target="_blank">
                                <i class="fas fa-eye"></i> İçeriği Görüntüle
                            </a>
                        [/allow-online]
                    </div>
                [/allow-download]
                
                [not-allow-download]
                    <div class="access-restricted alert alert-warning">
                        <i class="fas fa-exclamation-triangle"></i> Dosya indirmek için oturum açmanız gerekiyor.
                    </div>
                [/not-allow-download]
            </div>
        </div>
    </div>
</div>

Mobil Uyumlu Dosya İndirme Şablonu

<div class="mobile-attachment">
    <div class="file-header">
        <div class="file-icon">
            <i class="file-type-icon {extension}"></i>
            <span class="file-ext">.{extension}</span>
        </div>
        <div class="file-info">
            <h4 class="file-name">{name}</h4>
            <div class="file-meta">
                <span class="file-size">{size}</span>
                [count]<span class="file-downloads">{count} indirilme</span>[/count]
            </div>
        </div>
    </div>
    
    [allow-download]
    <div class="file-actions">
        <a href="{link}" class="download-button">
            <i class="fas fa-download"></i>
            <span>İndir</span>
        </a>
        [allow-online]
        <a href="{online-view-link}" class="view-button" target="_blank">
            <i class="fas fa-eye"></i>
            <span>Görüntüle</span>
        </a>
        [/allow-online]
    </div>
    [/allow-download]
    
    [not-allow-download]
    <div class="file-restricted">
        <p>Bu dosyayı indirmek için giriş yapmalısınız</p>
        <a href="/index.php?do=login" class="login-button">Giriş Yap</a>
    </div>
    [/not-allow-download]
</div>

<style>
/* Dosya tipi ikonlarını ayarla */
.file-type-icon.pdf { background-color: #f40f02; }
.file-type-icon.doc, .file-type-icon.docx { background-color: #2a5699; }
.file-type-icon.xls, .file-type-icon.xlsx { background-color: #207245; }
.file-type-icon.zip, .file-type-icon.rar { background-color: #fea21b; }
.file-type-icon.txt { background-color: #444; }
.file-type-icon.jpg, .file-type-icon.jpeg, .file-type-icon.png { background-color: #26B99A; }
</style>