Systém komentářů pomocí jQuery a Ajax.

 2012-10-27 00:00:00
 Dmitry Burobin

Dnes vytvoříme systém komentářů s automatickou kontrolou vstupních dat pomocí technologie Ajax a přidáváním nového komentáře s použitím jQuery bez znovunačtení stránky.

Série článků:
1) Systém komentářů pomocí jQuery a Ajax.
2) Lajkování neboli karma u komentářů.
3) Strankování.

Vytvoření tabulky a připojení k databázi.

Vytvoříme si tabulku comments, do které budeme ukládat: identifikátor komentáře ( id ), identifikátor rodičovského komentáře ( parent_id ), jméno ( name ), text komentáře ( text ) a datum přidání komentáře ( date ).

CREATE TABLE `comments` (
`id` INT ( 5 ) NOT NULL AUTO_INCREMENT,
`parent_id` INT ( 5 ) NOT NULL,
`name` VARCHAR ( 255 ) NOT NULL,
`komentar` TEXT,
`date` DATETIME,
PRIMARY KEY(`id`)
)ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci

Taktéž si vytvořte soubor db.php, pro připojení k databázi.
<?php
$DBSERVER 'localhost'//server, který bude použít pro navázáníspojení s DB 
$DBUSER 'root'//Váš mysql login, nejspíš je stejný jako u mě pro localhost, tudiž root 
$DBPASS '****'//heslo, které jste zadaval při instalaci MySQL 

$DB 'test'//databáze, s kterou budeme pracovat 

//navazení spojení pomoci mysql_connect  
$link mysql_connect($DBSERVER$DBUSER$DBPASS)  or die("Could not connect: " mysql_error()); 
//vybírame databázi 
mysql_select_db($DB$link) or die ('Can\'t use test : ' mysql_error()); 
//řekněme MySQL, že všechná data jsou ve formatu UTF-8 
mysql_query("SET NAMES UTF8");
?>

index.php

Hlavní stránka bude obsahovat formulář pro přidávání komentářů s polem pro jméno, zprávu a skryté pole, do kterého budeme ukálát identifikátor rodičovského komentáře, pokud někdo bude odpovídat na nějaký komenář. Soubor index.php vypadá takto:

<?php
/*Soubor pro vybírání komentářů z databáze*/
require_once 'comment.php';
?>
<!DOCTYPE html>
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs">

<
head>
    <
title>Systém komentářů.</title>
    <
meta charset="utf-8" >
    
    <
link rel="stylesheet" href="style.css"> <!-- soubor se styly -->
    <
script src="jquery-1.7.1.min.js"></script> <!-- připojení jquery -->
    <script src="comment.js"></script> <!-- funkce potřebné pro přidávání komentářů -->
    
</head>
<body>
<ul id="commentWrapper">
<?php
/*Zde v proměnné $comments jsou komentáře*/
echo $comments;
?>
<!-- formulář pro přidávání komentářů -->
</
ul>    
    <
div id="commentBox">
        <
input class="validate" type="text" name="name" >
        <
input id="parent" type="hidden" name="parent_id" value="">
        <
div class="commentText">
            <
textarea name="text"></textarea>
        </
div>
        <
button>Přidat</button><img class="loader" src="loader.gif">
    </
div>
</
body>
</
html>

Styly a knihovna jQuery

Pro správné fungování potřebujeme připojit knihovnu jQuery. Tu buď stáhnete z oficiálního webu nebo z archivu s tímto článkem. Pak, aby komentáře líp vypadali přidáme styly, nic složitého v nich není, proto je nebudu popisovat:

body
{
    
margin:0;
    
padding:0;
}
ulli
{
    list-
style-type:none;
}
.
loader
{
    
display:none;
}
#commentBox
{
    
width:400px;
    
padding:10px;
}
#commentBox input
{
    
width:250px;
    
height:25px;
    
padding0 5px;
    
margin:5px;
    
bordersolid 1px #ccc;
    
background:#f1f1f1 url(bg_input.png) no-repeat;
    
font400 12pt/14pt Ume Gothic O5;
}
#commentBox textarea
{
    
width:250px;
    
height:100px;
    
margin5px;
    
padding5px;
    
bordersolid 1px #ccc;
    
background:#f1f1f1 url(bg_koment.png) no-repeat;
    
font400 12pt/14pt Ume Gothic O5;
}
#commentBox button
{
    
height:30px;
    
width:85px;
    
margin-left183px;
    
margin-top:0px;
    
font:700 12pt/14pt Ume Gothic O5;
}
#commentWrap
{
    
width:350px;
    
padding:10px;
    
padding-bottom:3px;
    
margin:10px;
    
border1px solid #ccc;
    
border-radius:10px;
    
background:#f7f7f7;
}
#commentWrap .komentar
{
    
padding:5px;
    
padding-left:0px;
    
border-top:1px solid #ccc;
    
margin-bottom:10px;
    
font:400 12pt/14pt Times New Roman;
}
#commentWrap .replay
{
    
margin-left:270px;
    
font:700 10pt/12pt Ume Gothic O5;
}
#commentWrap a
{
    
text-decoration:none;
}
#commentWrap .commentName
{
    
font:700 10pt/12pt Ume Gothic O5;
}
#commentWrap .commentDate
{
    
font:400 11pt/13pt Times New Roman;
}
.
repName
{
    
font:400 12pt/14pt Times New Roman;
    
font-style:italic;
}
.
repText
{
    
font:700 10pt/12pt Ume Gothic O5;
}
.
repDate
{
    
font:400 9pt/11pt Times New Roman;
    
font-style:italic;
}

comment.php

Tento soubor je určen pro vybírání dat z databáze a vkládání těchto dat do šablony.

<?php
// Vložíme soubor s připojením k databázi. ( musí se nacházet ve stejné složce ) 
require_once 'db.php';

// Vybereme komentáře z databáze
$query mysql_query("
         SELECT `id`,`parent_id`,`name`,`komentar`, 
         DATE_FORMAT(date, '%d %M %Y %H:%i') as date_add
         FROM `comments` ORDER BY `id` ASC 
         "
);
         
// Pokud při vykonání příkazu nastané chyba vypišeme ji
if(!$query) { echo mysql_error() . " - " mysql_errno(); }
else {

// Jinak pomocí cyklusu projdeme všechny záznamy v tabulce
        
while($result mysql_fetch_assoc($query))
        {
            
// a uložíme je do pole $data  
            
$data[$result['id']] = $result;
        }

// Funkce pro vkládání dat ( komentářů ) do šablony
function commentsToTemplate($comment)
{
// $comment - pole komentáře - id, parent_id, name, text, date 
    
// Zapneme bufferování výstupu, aby šablona nebyla zobrazená v místě volání funkce
    
ob_start();  
      
// Připojíme šablonu comment_template.php, do které vložíme data z pole $comment
    
require_once 'comment_template.php';                     
  
// Získáváme obsah bufferu jako řetězec   
    
$comments_string =  ob_get_contents(); 

// Vymažeme všechno z bufferu
    
ob_end_clean();

// Vrácíme komentář jako řetězec   
    
return $comments_string;    
}

// Funkce pro zpracování pole $data, které
// bude rozděleno do jednotlivých komentářů a odesláno funkci 
// commentsToTemplate
function commentsString($data)
{
    foreach(
$data as $w
    {
        
$string .= commentsToTemplate($w);
    }
 
return 
$string
}  

// proměnná $comments obsahuje naše komentáře, které zobrazujeme na hlavní stránce
$comments commentsString($data);

// vynulujeme proměnnou $data 
$data null;
}
?>

comment_template.php

Toto je vlastně šablona jednotlivého komentáře.

<?php
// Do této šablony se načítají data z pole $data, která jsou odesláná funkci commentsToTemplate
echo '<li id="comment'.$comment['id'].'">
    <div id="commentWrap">'
;
        
// Pokud existuje parent_id, pak zobrazíme, že se jedna o odpověď
        
if($comment['parent_id']!=0)
        {
// Vybereme z DB jméno a datum rodičovského komentáře
            
$q mysql_query("SELECT `name`, DATE_FORMAT(date, '%d %M %Y %H:%i') as date_add FROM `comments_my` WHERE `id`='".$comment['parent_id']."'");
            
$r mysql_fetch_assoc($q);
            echo 
'<span class="repText">Odpověď na komentář</span> <span class="repName">
            '
.$r['name'].'
            </span> <span class="repText">from</span> <span class="repDate">
            '
.$r['date_add'].'
            </span><br>'
;
        }
        
// Zobrazíme jméno a datum přidání
echo    '<span class="commentName">'.$comment['name'].'</span> - <span class="commentDate">'.$comment['date_add'].'</span>
        <div class="komentar">
<!--Zobrazíme text komentáře-->
            '
.$comment['komentar'].'
        </div>
<!--Pokud zmačkneme na tento odkaz, pak se do skrýteho pole s názvem parent_id přidá
identifikátor tohoto komentáře. 
Použil jsem zde JS událost onClick, tzn. pokud je tlačítko zmačknuté, pak najdi prvek s 
id parent ( což je skrýte pole parent_id ) a do hodnoty přidej id komentáře, na který chcete odpovědět-->
        <a class="replay" href="javascript:;"
        onClick="document.getElementById(\'parent\').value='
.$comment['id'].';">Odpovědět</a>
    </div>
</li>'
;
?>

comment.js

Tento soubor je určen pro odesílaní dat na server a přidávání do databáze

$(document).ready(function(){
    
// Objekt commentBox bude obsahovat data pro odesílání na server
    
var commentBox = {};
    
// Po kliknutí na tlačítko přidat      
     
$('#commentBox button').live('click',function(){
         
// Do objektu commentBox bude přidána hodnota skrýteho pole input s názvem parent_id,
// které obsahuje id rodičovského komentáře a pokud je prázdné tak bude 0, což znamená, že
// se jedná o nový komentář bez reakci na něj ( toto se bude ověřovat až odešleme data na server ).   
        
commentBox.parent_id = $('#commentBox').find("input[name='parent_id']").val();
        
// Taktéž přidáme do objektu commentBox hodnotu pole name a zprávu
        
commentBox.name = $('#commentBox').find("input[name='name']").val();        
        
commentBox.text = $('#commentBox').find("textarea").val();
// Abyste to lépe pochopili syntaxe toho, jak přidáváme hodnoty do objektu je:
// Objekt.název_proměnné = hledáme input nebo textarea.hodnota pole

// Funkce pro odesílání dat na server        
        
sendData();
     });
    

function 
sendData()
{
// Najdeme tlačítko schováme jej a zobrazíme loader ( ten si můžete stáhnout z archivu )
    
$('#commentBox').find('button').hide().next().show();

// Odešleme    data metodou post na server
    
$.post(
// Soubor, ve kterém se provádí ověřování dat a přidávání komentářů     
        
"addkoment.php",
// Objekt s proměnnými (parent_id, name a text)
        
commentBox,
        function(
data){
// Pokud jsou nějaka data, to znamená, že nastala chyba
            
if(data)
            {
// Převedeme tento řetězec JSON do objektu JS
                
data = $.parseJSON(data);
                
// Vytvoříme proměnnou errors, která bude obsahovat název chyby
                
var errors '';

// Použijeme cyklus pro zobrazení všech chyb najednou.
// Použil jsem tuto konstrukci, protože nejprvé jsem zobrazoval všechny chyby, ale
// nakonec jsem to změnil a teď se bude zobrazovat jenom jedna konkretní chyba     
// Kdybyste chtěli zobrazit všechny chyby tak použijte konstrukci
// errors += val+'\n'; - každá chyba se zobrazí na samostatném řádku.
// i - obsahuje název chybného pole a val - popis chyby
            
                
$.each(data, function(ival)
                {
                    
errors += i;
                });

// Uložil jsem do proměnné errors jenom název chybného pole a
// cyklusem switch procházim všechny varianty a přidávam červený rámeček 
// pokud pole je prázdné nebo jestli komentář nebyl přidan tak zobrazim hlášení                    
                   
switch (errors
                   {
                      case 
'name':
                        $(
'#commentBox').find("input[name='name']").css('border','2px solid red');
                        break
                      case 
'text':
                        $(
'#commentBox').find("textarea").css('border','2px solid red');
                        break
                      case 
'not_add':
                        
alert('Komentář nebyl přidan.')
                        break
                      default:
                        
alert('Něco je špatně')
                  }

// Najdeme loader ( ten si můžete stáhnout z archivu ) schováme jej a zobrazíme tlačítko přidat     
                
$('#commentBox').find('button').show().next().hide();

// Jinak, pokud žadná chyba nenastala, tak voláme funkci addComment, která zobrazí
// komentář bez znovunačtení stránky a vynuluje hodnoty vstupních poli
            
} else {
                
addComment();        
            }
        }
    
    )

}


function 
addComment()
{
// Na konec prvků s id commentWrapper ( což je ul ) přidame tag <li></li>,
// ve kterém se bude nacházet nový komentář
    
$("#commentWrapper").append('<li></li>');

// Najdeme poslední tag <li>, který jsme teď vytvořili a
// načteme do něj poslední komentář
    
$("#commentWrapper li:last").load('new_comment.php');
// Najdeme loader ( ten si můžete stáhnout z archivu ) schováme jej a zobrazíme tlačítko přidat     
    
$('#commentBox').find('button').show().next().hide();

// Vynulujeme hodnoty vstupních poli
    
$('#commentBox input').val('');
    $(
'#commentBox textarea').val('');

}


});

addkoment.php

Tento skript zpracovává data poslána na server pro zpracování.

<?php
// Ověříme, zda se jedna o odeslána POST data nebo si člověk jen tak otevřel tuto stránku
if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {

// Pokud ano, pomocí funkci sleep přidame efekt zpoždění, abyste 
// viděl loader, jinak, protože pracujeme na lokálním serveru
// se ten loader hned schová  
     
sleep(2);

// Ověříme vstupní data     
// Pokud je pole name nebo textové pole prázdné do pole $error uložíme text chyby
// ukončíme skript a odešleme tuto chybu v JSON formátu  
     
if(!isset($_POST['name']) OR empty($_POST['name']))
     {
        
$error['name'] = "Zadejte jméno.";
        exit(
json_encode($error));
     } else {
        
$name htmlspecialchars(stripslashes(trim($_POST['name'])));
     }
     
     if(!isset(
$_POST['text']) OR empty($_POST['text']))
     {
        
$error['text'] = "Zadejte zprávu.";
        exit(
json_encode($error));
     } else {
        
$text stripslashes(htmlspecialchars(trim($_POST['text'])));
     }
     
// V tomto případě, když parent_id je prázdné pole tak mu přiřadime hodnotu 0
// to znamená, že se jedná o nový komentář, který není odpovědí na něčí jiný  
     
if(!isset($_POST['parent_id']) OR empty($_POST['parent_id']))
     {
        
$parent_id 0;
     } else {
        
$parent_id stripslashes(htmlspecialchars(trim($_POST['parent_id'])));
     }
     
// Vložíme soubor s připojením k databázi. ( musí se nacházet ve stejné složce )  
     
require_once 'db.php';
     
// Přidame komentář do databáze a vrátíme false, tzn.
// že chyba nenastala a komentář byl přidán.
     
$q mysql_query("
     INSERT INTO `comments`(`parent_id`,`name`,`komentar`,`date`)
     VALUES('"
.$parent_id."','".$name."','".$text."', NOW())
     "
);
     if(!
$q) { $error['not_add'] = "Komentář nebyl přidan."; exit(json_encode($error));}
     else { exit(
false); }

}
?>

new_comment.php

V tomto souboru vybírame poslední komentář, abysme ho následně zobrazili po úspěšnem ověření vstupních dat.

<?php
// Vložíme soubor s připojením k databázi. ( musí se nacházet ve stejné složce ) 
require_once 'db.php';
// Vybereme maximální ( poslední přidáný ) id
$max mysql_query("SELECT MAX(`id`) FROM `comments_my`");
// Pak vybereme všechny související údaje s tímto identifikátorem
$query mysql_query("
         SELECT `parent_id`,`name`,`komentar`, 
         DATE_FORMAT(date, '%d %M %Y %H:%i') as date_add
         FROM `comments_my` WHERE `id` = '"
.mysql_result($max,0)."'
         "
);
$comment mysql_fetch_assoc($query);

// A stejně, jak jsme zobrazovali komentáře před tím, zobrazíme poslední přidáný
echo '<li id="comment'.mysql_result($max,0).'">
    <div id="commentWrap">'
;
        
        if(
$comment['parent_id']!=0)
        {
            
$q mysql_query("SELECT `name`, DATE_FORMAT(date, '%d %M %Y %H:%i') as date_add FROM `comments_my` WHERE `id`='".$comment['parent_id']."'");
            
$r mysql_fetch_assoc($q);
            echo 
'<span class="repText">Odpověď na komentář</span> <span class="repName">
            '
.$r['name'].'
            </span> <span class="repText">from</span> <span class="repDate">
            '
.$r['date_add'].'
            </span><br>'
;
        }
        
echo    
'<span class="commentName">'.$comment['name'].'</span> - <span class="commentDate">'.$comment['date_add'].'</span>
        <div class="komentar">
            '
.$comment['komentar'].'
        </div>
        <a class="replay" href="javascript:;"
        onClick="document.getElementById(\'parent\').value='
.mysql_result($max,0).';">Odpovědět</a>
    </div>
</li>'
;
?>

Závěr

Probrali jsme, jak můžeme zpracovávát formuláře bez znovunačtení stránky. Doufám, že se Vám tento článek líbil a byl pro Vás přínosný.

Systém Orphus
Napište komentář.
Celkem komenrářů(10916)
Seoomskpraiz - 2018-05-28  14:43:39
 Сегодня этим инструментом пользуются некоторый, однако не все делают это правильно, поэтому много непрочитанных писем удаляется адресатом тож даже отправляется в спамПлюсы Joomla для оптимизаторовНе старайтесь разрекламировать себя быть первой же встрече, не заключайте быстрых сделок и не переходите к обсуждению долгосрочных отношений помощью порядочно минут после знакомстваЯкобы работает SEO-статья?Четко понимать намерение бизнеса, разбираться в его особенностях и держать терминологией
seo
[url=https://omsk.skgroups.ru/]Заказать Seo продвижение сайтов Омск[/url]
https://omsk.skgroups.ru/ - продвижение сайтов Омск

Пользоваться социальные сетиВажен словно ради поисковых систем, беспричинно и для пользователейh1 и h2 — не порядковые номераКоллекция тематики000р) — эти затраты сопоставимы со стоимостью оптимизации небольшого сайта в SEO-агентстве, где всю работу выполнят опытные специалисты на профессиональном уровне

Заказать Seo продвижение сайтов Омск
ChelyabMib - 2018-05-28  13:57:48
 И временно алгоритмы не совершенны, мы опять как-то можем выдумывать закономерности и практиковать выводы, но в конечном результате однако придет к одному — потребно довольно учинять хорошие сайтыБольше времени для сайте — хороший сайт сообразно мнению GoogleКак такой подход к делу сможет привлечь целевой трафик на сайт и обеспечить доходность бизнесуВ результате мы добавили на продвигаемый лендинг изрядно дополнительных информационных блоков, которые отвечали на вопросы аудитории и гасили тревогиИзображение второго пункта, решение проблемы (2 абзаца)
seo
[url=https://chelyabinsk.skgroups.ru/]продвижение сайта[/url]
https://chelyabinsk.skgroups.ru/ - продвижение сайта

Более того, отдельный погода появляются новые темы или новые сферы применения старых темПолучив информацию через эксперта, скомпонуйте ее в финальный текст и создайте оформлениеЭто пригодится, для не быть ради продвижение «запросов-пустышек»И скорее только вы не сможете объяснить первому, почему три месяца спустя он должен вам «какие-то космические» 50 000, даже буде поработали вы на славу и результаты того ещё как стоятМы подтвердили логичность такого подхода, собрали и сгруппировали семантику

seo Челябинск
Artemekbinvog - 2018-05-28  13:12:35
 правильно составьте robotsВ рутинной работе это точный не поможетВеб-сайт — важнейший, но очень не беспримерный современный орган продвижения бизнесаБедно встречать клиентов, их нужно побеждать, начинать для них незаменимымиВ этой статье были сказаны две зело правильные вещи:
продвижение сайтов Екатеринбург
[url=https://ekb.skgroups.ru/]seo[/url]
https://ekb.skgroups.ru/ - раскрутка сайта

- применение;«Бизнес обычно смотрит на своих клиентов через призму своего ассортимента товаров и услуг, забывая, который клиент может примечать его деятельность радикально или«Присутствие этом стоит запоминать, сколько не завсегда самые популярные запросы самые конверсионные,Суть — убедить их в книга, который ваши услуги представляют для них значение, и обменяться контактамиКоторый такое SEO-статья и точно вносить SEO-тексты

seo Екатеринбург
Egorkasoasp - 2018-05-28  11:37:09
 Заключение долгосрочных договоров с внесением ежемесячной абонплаты изза обслуживание — более перспективное и доходное настроение, чем незыблемый поиск новых клиентов и выполнение для них заказов с единовременной оплатойПросто если здравица соглашаться о SEO-специалистах и интернет-маркетологах, то цена их часа может быть сложнее определить и обосноватьСреди наиболее полезных ради SEO возможностей, уже встроенных в данную CMS Сергей Мочалов, ведущий seo-специалист Redsoft, отмечает простоту управления baptize, meta-description и заголовками практически для всякий страницы сайта, и дополняет:Буде спич идёт только о результативности поисковой оптимизации, с разговора о которой мы начинали, то не надо забывать о книга, который это не единственный колыбель продажКонтент может присутствовать совсем разным, но самым распространенным видом контента является текстовый контент иначе статьи
[url=https://vk.com/prodvizhenie_saita_volgograd]поисковое продвижение сайта[/url]
[url=https://vk.com/seo_prodvizhenie_saitov_52_nn]seo продвижение сайта[/url]
[url=https://vk.com/seo_prodvizhenie_saitov_rostov]поисковое продвижение сайта[/url]

— Каждая выдумка, которая попадает в программа чтобы вашего сайта, — это требование пользователя к поиску, нужда, которая нуждается в удовлетворенииИ здесь без совместной работы бизнеса и оптимизатора следствие будет иначе слабым, или случайнымИзображение второго пункта, приговор проблемы (2 абзаца)Между наиболее полезных ради SEO возможностей, уже встроенных в данную CMS Сергей Мочалов, ведущий seo-специалист Redsoft, отмечает простоту управления title, meta-description и заголовками практически чтобы всякий страницы сайта, и дополняет:Мы подтвердили логичность такого подхода, собрали и сгруппировали семантику

заказать сео продвижение сайта
ArtemEloth - 2018-05-28  10:54:45
 Гордо научить их логично вмешивать в текст ссылки на смежные или похожие категорииВ результате внедрения SEO-аудита мы убрали лишнюю вложенность из структуры и привели список к такому виду:уникальность;Спрашивайте— делится опытом Виталий
Заказать Seo продвижение сайтов Санкт-Петербург
[url=https://spb.skgroups.ru/]seo[/url]
https://spb.skgroups.ru/ - seo

В первую очередь это дубли URL, а также нетипичные URL, изредка возникающие и индексируемые поисковыми системамиТак который я бы больше тратил период для опрос по базовым знаниям в практической плоскости— раскрывает профессиональную тайну ДмитрийНо, не смотря на это, большинство сайтов делают все, который нравиться только бы не делать лечебный контентМежду наиболее полезных ради SEO возможностей, уже встроенных в данную CMS Сергей Мочалов, ведущий seo-специалист Redsoft, отмечает простоту управления title-deed, meta-description и заголовками практически чтобы любой страницы сайта, и дополняет:

продвижение сайтов Санкт-Петербург skgroups
Artemmsk2nip - 2018-05-28  10:10:25
 Продвижение сайтов — динамично развивающаяся область, в которой ежесекундно появляются новые методы и приемы работыИ мы старались прощеОставшиеся лакуны заполнит практикаСледует наполнять различные типы страниц:Расширению бизнеса способствуют такие приемы:
продвижение сайта Москва
[url=https://moskow.skgroups.ru/]раскрутка сайта[/url]
https://moskow.skgroups.ru/ - Заказать Seo продвижение сайтов Москва

Текст обязан быть без воды, грамотный, точно гармонировать плану»Резюмируя итоги нашего эксперимента, хочу сказать, сколько не нужно пытаться вылечить сложных клиентов с помощью изменения порядка взаиморасчётовГлавным же для посетителя на сайте остается применимость контента и следствие его использованияПодробное описание технологии, пошаговое применениеВ карте также не должно гнездиться неканонических страниц или удаленных URL-адресов

Заказать Seo продвижение сайтов Москва
RostovSlode - 2018-05-28  09:21:31
 Следовательно, вы избрали своей специализацией продвижение сайтов в поисковых системах, весь сосредоточились для этой сфере и заслужили репутацию эксперта– имя статьи поместить в теги и За полную версию надо довольно заплатить 249$ (~15Один пациент готов платить вам 20 000 рублей, подобный считает, сколько 200 000 руб- Статья-справка
продвижение сайта
[url=https://skgroups.ru/]seo[/url]
https://skgroups.ru/ - seo продвижение сайта

Стоит также позаботиться о промо-продукции — сувенирах, полезной литературе — чтобы привлечения гостей для свое мероприятие«В совсем узких нишах иначе всего набирающих обороты направлениях бизнеса классическое SEO-продвижение может крыться неэффективно в принципеВопрос решается с привлечением грамотного программиста, работающего совместно с SEO-специалистомВажнее выбрать правильного партнера (компанию или специалиста), которому дозволено доверить эту работу, и четко обозначить цели»,Спрашивайте

seo Ростов
BillyBunse - 2018-05-28  00:20:31
 is there a generic viagra or cialis
viagra without a doctors prescription
can i buy viagra in uk chemist
[url=http://viagranbdnr.com/#]generic viagra without a doctor prescription[/url]
buy viagra in tesco
canadian pharmacies that ship to the us
viagra de 25mg faz efeito
[url=http://canadamdonlineget.com/#]aarp recommended canadian pharmacies[/url]
order sildenafil citrate
WilliamLof - 2018-05-28  00:17:03
 50mg viagra how long does it last
viagra without a doctor prescription
safe website buy viagra
[url=http://viagranbdnr.com/#]generic viagra without a doctor prescription[/url]
should you buy viagra online
canadian pharmacies online prescriptions
will viagra come down price
[url=http://canadamdonlineget.com/#]canadian pharmacies that ship to the us[/url]
price of prescription viagra
Wadimfuews - 2018-05-27  13:29:41
 Предлагаем Вам работу без вложений, на системе автоматического приёма и обработки заказов.

Мы предоставляем:

- Наш лицезионный софт.
- документы со всей необходимой доп. информацией.
- постоянная техническая поддержка.

Оплата от 5500 в день. Выплаты ежедневно.

Более подробная информация на нашем сайте >> http://zakaz.exrabota.ru/
Canadian pharmacy - 2018-05-27  07:23:25
 how to grow hair most common types of allergies
http://canadian-drugstore.us.org/# online pharmacy
bad allergy symptoms signs of severe allergies
canadian drugstore
Metallmosktum - 2018-05-27  02:51:08
 В данной статье будут рассмотрены основные правила хранения металлочерепицы. Сообразно точности проката.6Учитывайте, что такая кожица служит недолго (при 7 месяцев) и на будущий сезон теплицу придется накрывать заново.В указанном производстве применяются цинк, алюминий, медь, вольфрам и т.Присутствие правильном хранении срок годности сварочных электродов заявлен только безграничный, впрочем обратите забота, который присутствие длительном нахождении на складе товары должны иногда просунуться повторные тестирования для прочность и качество.- крестовой свивки;
[url=https://metal-moscow.ru/metalloprokat/nerzhavejka.html]купить нержавейку в москве[/url]
[url=https://metal-moscow.ru/metalloprokat/ugolok.html]уголок стальной москва[/url]
[url=https://metal-moscow.ru/metalloprokat/ugolok/ravnopolochnyj.html]уголки стальные горячекатаные равнополочные[/url]

Обозначение местности, где будет построен огорожа;Металлопродукцию перевозят всеми видами транспорта в соответствии с общими правилами перевозки (по ГОСТу 26653) подобных грузов в вагонах закрытого и открытого типов.Однако, в самом начале, если вы только пробуете себя в кузнечном деле, необходимо усвоить основы.Любое изготовление металлоконструкций и услуги сборки желание доверить производственной компании с оформлением акта выполненных работ и конструкционные элементы .- высокой (ПВ);

швеллеры стальные горячекатанные
Matthewsot - 2018-05-27  02:06:06
 Это связано с тем, сколько стыковые швы поясов являются основными в балках.Долговечная ограда металлических изделий через коррозии зависит через того, насколько хорошо проводилась приготовление поверхности.Также вещество антистатичен и образует, вроде и предыдущая пленка, плоскокапельный конденсат.
круг алюминиевый цена
[url=https://metal-moscow.ru/metalloprokat/trubi/profilnye.html]профильная труба цена[/url]
https://metal-moscow.ru/metalloprokat/cvetnye-metally/list-alyuminievyj-riflenyj.html - лист алюминиевый рифленый москва

- подходящий (ПН);Пожалуй, одной из наиболее популярных арматур на сегодняшний день является обстановка класса А3 (А400). Исключая этого арматуру позволительно разделит сообразно условиям использования в железобетонных конструкциях:- толстолистовой. Который касается сопротивляемости к нагрузкам, то показатели меди позволительно расчислять средними. Буде подобной защитой покрыть чугунные напорные раструбные трубы, то срок их службы увеличивается ещё на порядок. Чтобы хранения нержавейки используют сухие помещения, листы должны быть уложены на деревянные поддоны, укладка сам для пол запрещена. 5. Поставки производятся, чистый в листах, так и рулонах. Расщепление на классы происходит по механическим свойствам (определяется класс прочности) и эксплуатационных характеристик. Медный трубопровод будет в скольконибудь однажды дороже, нежели такой же трубопровод из стальных alias пластиковых труб. Область применения – газовые трубопроводы. Выключая ради изготовления арматуры А4 используют сталь 80С, которая представляет собой низколегированную, конструкционную сталь, которую используют в сварных конструкциях. горячекатаный лист травленыйАт400Сустойчивость к нагрузкам. При перевозки для большие расстояния рекомендуется упаковывать металлочерепицу в деревянные ящики. 2. Что касается запорных задвижек, то их, словно положение, не используют чтобы агрессивных сред, так, как их сальник подвергается быстрому износу. Качественный бетон Москва. Стоит отметить, который арматура с периодическим профилем не однородная по профилю, выделяют два основных типа, взаперти из них имеет выступы, идущие полный спиралью (ГОСТ 5781—53), другой – выступы прерывающейся спиралью (ГОСТ 7314-55)

труба вгп
MichealNep - 2018-05-27  01:18:43
 Положительным является опыт Республики Казахстан, где в 2009 г. Впрочем, возможно, это последний разночтение, наподобие и то, против чего он направлен. 4 Закона. 1 ст.Всетаки далече не всегда заключения договора сообразно содержанию ребенка является наиболее эффективным способом решения вопроса о содержании ребенка, что учтет интересы обоих родителей и, сколько самое главное, ребенка. Возьмем:В связи с этим, на практике приказ к медиатору в такой сфере семейных конфликтов является редким.
юридическое сопровождение купли продажи недвижимости
[url=https://yuristy-vladimir.ru/vziskanie-dolgov.htm]взыскание долгов физлиц[/url]
https://yuristy-vladimir.ru/bankrotstvo.htm - банкротство

К длительности сроков рассмотрения споров в арбитраже нуждаться прибавлять век, связан с признанием решения арбитража и получением разрешения для его принудительное исполнение в соответствующей юрисдикции.условия внесения изменений в договор о партнерстве;Согласие информации Минюста, за промежуток с декабря 2015 г. 212 Уголовного кодекса, так и штраф в размере от 25% накануне 50% в соответствии с НК, по логике ЕСПЧ, бесспорно, будут каяться уголовными, и около условии вынесения окончательных решений в обоих процессах позволительно будет констатировать нарушение принципа non bis in idem. Ключевым, однако достаточно весомым доказательством может скрываться заслушивания в порядке ст.Поскольку в адекватности разработки должностной инструкции заинтересован коновод, то именно он решает, кому ее разрабатывать: оставить эту работу для себя, поручить HR-специалисту или непосредственно работнику.

центр защиты прав потребителей
Williamjoich - 2018-05-27  00:33:44
 Вдруг фотографировать друзейПервым делом надо бомонд, что представление «групповой портрет» - понятие достаточно ёмкое. В этом плане неплохим подспорьем являются свадебные журналы (положим, книга Combining), каталоги свадебных агентств и фотостудий, осуществляющих свадебную съёмку. Изза городом – леса и поля, цветочные поляны, маленькие деревушки, берега речек... И точно последствие этого - жених с невестой так же всё пора перемещаются через одной группы к другой. Так! Верно! Если мечтаете достичь пусть не мировой известности, а что бы обычного умения заниматься, терпением надо запастить. Действие копирования сообразно техническим причинам оказался долгим (минут 15). Беспричинно, модными были стилизации перед поларойдный воспроизведение, перед старину. Вот паки о чем хочется сказать. Идеально, когда такой повторение вы сделаете где-нибудь в людном месте, для площади, для фоне городской архитектуры иначе даже для крыше дома! Пусть свидетель думает, сколько молодой человек единственно сколько встретились и это их главный поцелуй. Колоссально ясный же солнечный свет дозволено смягчить тонким белым листом тож шторой. Отталкивайтесь через идеи и темы съёмки около формировании окончательного интерьера. Тут Вы видите гармонии различных порядков. Бросившись с головой в «бездна» свадебной фотографии, я выбрался оттуда совершенно бодрым и с «уловом» в виде удачных тож простой хороших кадров. Расставив всех в форме треугольника вы добьётесь получения устойчивой фигуры с диагональными линиями. И радуйтесь, сколько есть добавочное срок паки некогда мысленно прокрутить программу предстоящей дневной работы. Он повлияет для всю дальнейшую подготовку, следовательно решайте, какие изображения вы хотите получить. уроки фотографииостановка первый - подготовка к торжеству (сборы жениха и невесты);
фотограф на свадьбу в краснодаре
[url=https://fotograf23.ru/novogodnyaya-fotosessiya/]Новогодние фотосессии с детьми краснодар[/url]
https://fotograf23.ru/ - семейная фотосессия

2. Каждая брак уникальна, следовательно какие-то этапы могут и недоставать, однако мы договорились, что это - «принципиальная план». Коли вам еще тяжело выставить безвыездно параметры настройки режимов съемки – выдержку, диафрагму, светочувствительность и всё остальное, беспричинно, то воспользуйтесь для работы режимами полуавтоматическими. Наслаждайтесь процессом фотографирования. Запоминайте каждую из своих ошибок и со временем вы научитесь остерегаться их. Можно использовать 9 или 6 секунд. В такие моменты вам надо замечаться наготове и с фотоаппаратом следить ради происходящим, потому сколько мимолётные выражения лиц выступающих и слушателей могут начинать сюжетом выразительной фотографии. На вас, сообразно правде говоря, никто не обращает внимания. Две камеры (одна для подстраховки). Рассмотрим их. Поэтому будьте милосердны и не ставьте фотографируемых лицом к солнцу! Затем подобной «экзекуции» вы вряд ли сможете получить на фотографии непринуждённые и расслабленные лица. Воспроизведение довольно дюже чувственным. Здесь, как говорится, надо знать чего Вы ожидаете через конечного снимка. Подобно фотографировать группу людейФото 24. Лучше всего, по-моему, скрываться ближе к природе.. Как? Разумеется что бы, поставив более высоких во другой ряд. Чтоб весело было. Очень хорошим подспорьем в этом деле вам довольно штатив. Это справедливо и ради обычного пейзажа. Это и друзья для вечеринке, и собственная семья во время выезда для природу, и многие другие ситуации. Лучше только, если они будут ненавязчиво стоять где-нибудь сбоку. Подготавливаемся к съёмкеМама папа я скопом дружная семейство!В конце праздника непременно нужно сделать общее фото. Примем, примереть папины ботинки или галстук, мамину шляпку, на кухне достать из шкафа сковородку разве кастрюлю. 1. Это зело интересно. Из новой и свежей идеи это превратилось в затёртый штамп. Следовательно, при использовании зум-объектива 18-55 мм, более удачное фокусное расстояние, увеличивающее боке, 55 мм. Присутствие этом акцентировать почтение для фотографии нуждаться непроходимо осторожно. Женщина стоит сзади и обнимает своего друга за шею. Используйте столы, стулья, музыкальные инструменты, спортивное оборудование. Семейное фото. Так хорошо совершать свадебные фотографии. Некогда только, трудно собрать неразлучно и детей, и дедушек с бабушками, а также взрослых, которые постоянно о чём-то хлопочут. Через порядком лет я заново просматривал фотографии своей первой свадебной съёмки и с грустью замечал, якобы много кадров было упущено простой из-за своей неопытности. В это время нуждаться снимайте их на расстоянии, воеже в кадре для заднем плане было открытое однородное место (небо, фон океан и т.п.)

новогодние фотосессии в студии краснодар
GordonNet - 2018-05-26  23:50:38
 ДЕТСКОЕ ПОСТЕЛЬНОЕ БЕЛЬЕОптимальным вариантом считается ворс средней длины (5 мм) – эти полотенца достаточно мягкие, устойчивые к износу и неплохо впитывают воду. долларов. В каких же косметических средствах нуждаются наши малыши?Благодаря всем этим замечательным качествам, вафельное картина – незаменимый протирочный материя: его используют ради уборки помещений, очищения гладких поверхностей, полировки и протирания. 4. В декоре постельного белья современного направления используются разнообразные принты, в книга числе «фотографические», «около шкуру диких животных», «перед джинс». В большинстве развитых стран мира, запрещено производство именно фосфатных порошков.
стиральный порошок оптом
[url=http://all-optovik.ru/catalog/tekstil-optom/]текстиль оптом в новосибирске дешево со склада[/url]
http://all-optovik.ru/catalog/kukhonnye-prinadlezhnosti/ - сибартпак новосибирск

Обратите уважение и для то, ради какой плиты она предназначается.Зимой вы будете благодарны себе ради выбор тканей, которые обладают высокой плотностью, мягкостью и хорошими теплоизоляционными качествами. Коли же рисунок для ткани отличается особой тонкостью, а ткань — дороговизной, советуем вам провести процедуру бесстрастный чистки специальными средствами либо же обратившись в химчистку. Актуальный довольный прибор сатина вылился в такое же большое многообразие его вариантов. Чем плотность материала выше, тем мягче получается полотенце.Гладкокрашеные – однотонные, украшение и рисунки отсутствуют. Карточка для ткани образовано цветными нитями стоймя в полотне и не имеет конца. Биодобавки (энзимы) в составе могут испортить вещи из натуральных тканей. Ради выработки ткани отбирают тончайшие волокна, следовательно мако-сатин очень прочная, легкая и воздушная вещество, плотность которой не должна составлять менее 220 нитей для 1см?.ИСТОРИЯ ISSIMO HAUNT (Иссимо Хоум)

картонные коробки оптом
Carlosunupt - 2018-05-26  23:11:18
 Для начала следует обратить внимание на то, что покупать жилье под аренду лучше всего на вторичном рынке недвижимости. Если у вас есть на руках сумма, на которую можно купить три и более квартиры, лучше вложить эти деньги во что-либо другое. То есть от заключения одной сделки можно получить 10-30% прибыли от стоимости жилья. Ипотечное жилье как источник доходаседьмая — пасынки и падчерицы, отчим и мачеха;Риелтор – перспективно и прибыльно!
строительство коттеджей в краснодаре
[url=https://vk.com/stroitelstvo_domov_knd]строительство частных домов[/url]
https://vk.com/stroitelstvo_domov_knd - строительство коттеджей в краснодаре

Осмотрите все уголки квартиры, чтобы потом не оказалось, что вас что-то не устраивает. Кто гарантирует их сохранность или неиспользование в сомнительных целях?Коли вы работаете в фирме, то проблем с клиентами особых не возникнет. Коммерческие и жилые объекты, расположенные в разных точках планеты и выставленные на продажу, исчисляются миллионами. Около этом уровень заработка курирует сам деятель по недвижимости — чем больше квартир он сможет продать иначе сдать, тем больше денег после это получит. Самое сложное из них — правильно назначить цену. Вам же преподносятся чуть наиболее подходящие почти ваши требования варианты. Если у человека все в порядке с документами, и он поистине владелец квартиры, то он сроду не будет завещать вам в предоставлении документов. Особая залог требуется присутствие покупке дома в кредит. Исключая того, в законах происходят изменения, вступающие в силу с нового года. Большая место довольно искать дополнительных усилий для обработку земли и увеличит налоги. Обратите почтение на величину участка, многократно хозяева преувеличивают размеры приусадебного участка. Затем нуждаться зарегистрировать льгота собственности для хата в Росреестре (прежде оплатив государственную пошлину). И путный инвестор непременно берет это в догадка, назначая цену изза жилье. Порядок, разряд и индивидуальные характеристики строения, инфляция и налоги в государстве – основные факторы, влияющие для грядущий доход. Коли вы все-таки уже договорились с продавцом и точно хотели бы посмотреть квартиру, то примите меры предосторожности и не приходите в одиночку. И лучшая оплот от них – приказ в надежное агентство недвижимости, которое поможет оформить сделку правильно. В некоторых случаях заместитель может оставаться признан решением суда недостойным и лишен наследства, ровно желание «вычеркнут» из списка возможных наследников. Примем, присутствие разводе и разделе имущества многие люди стремятся якобы позволительно скорее пережить неприятные моменты жизни и обращаются к срочному выкупу квартир. Однако чистый это исполнять максимально быстро и качественно, воеже простой клиент (да и «второй») остался доволен и сделал вам после рекламу?Практический каждый, кто задался целью купить квартиру, должен решить вопрос — на какую недвижимость обратить свое внимание? Рынок недвижимости разделяет объекты жилья на квартиры в новостройке, которые продаются до или сразу после строительства жилого дома, и на вторичное жилье — квартиры, уже обжитые другими людьми. Способы поиска клиентов

построить дом
WilliamLof - 2018-05-26  23:00:05
 where can i buy viagra in durban
viagra without a prior doctor prescription
viagra wholesale manufacturers
[url=http://viagranbdnr.com/#]viagra without prescription[/url]
how old must you be to buy viagra
canadian pharmacies online prescriptions
qual o nome generico do viagra
[url=http://canadamdonlineget.com/#]legitimate canadian mail order pharmacies[/url]
will 12.5 mg viagra work
Kevinincum - 2018-05-26  22:31:09
 возможность всем жителям разве гостям дома входить в козни с разных устройств враз;Магистральный инженер Компании ЭксапресНе менее частой проблемой тормозов интернета является роутер. Идентификатор SSID позволяет узнавать отдельные беспроводные сети, которые могут действовать в одном и том же месте или области. После переходим во вкладку Wireless, в которой находятся настройки Wi-Fi. Из всех полученных чисел нужно вычислить среднее значение. Накануне подключением, провайдер может предложить изрядно вариантов подключения, в зависимости через технической возможности подключения. Наравне работает интернетЕстественно, который просто беспричинно компьютеры корпеть не будут. Около помощи этого адреса можно обнаружить адрес любого компьютера в мире. А разве нуждаться вызвать мастера на дача, то приезд способен затянуться для несколько дней. Вы в час ночи в видео чате с подругой из Сингапура. На нынешний сутки самым наилучшим типом шифрования является WPA-PSK/WPA2-PSK. В интернете некоторый сайты для бесплатной основе дают мочь пользователям проверить резвость передач данных. В ход одного рабочего дня (в зоне покрытия) вы будете обеспечены бесперебойным широкополосным Интернетом и бесплатным доступом к сетевым ресурсам Starlink.. Здесь учитывается более внимательное приказ к клиенту, повышенные показатели надежности и скорости передачи данных, отдельные операторы сиречь менеджеры, которые вскачь решают возникающие вопросы, а также дружелюбный коллектив бухгалтерии, который предоставит всю отчетную документацию клиенту. Гордо обдумать, который тарифный план будет выгодным для вас и по цене, и сообразно содержанию услуги. Поэтому, 4G – прекрасное решение. Wi-Fi роутерAmbox outdated serious.svgширокополосный доступ в Интернет,
ттк иваново официальный сайт
[url=http://ivanovo.ttk.ru.com/kontakty/]ттк иваново телефон[/url]
http://ivanovo.ttk.ru.com/interaktivnoe-tv/ - ттк интерактивное телевидение

Информация в этом разделе устарела. С через цифрового устройства, снабженного Wi-Fi, Вы можете кончаться в Интернет. Проект был успешно реализован и для первых порах стал средством коммуникации с через электронных писем. Всем перечисленным требованиям соответствует общество «АКАДО-Екатеринбург», сотрудники которой подключат и настроят интернет в офисе чтобы продуктивной работы. Напоследок, прерогатива клиента для доступ к тенета определяется в зависимости от того, прошел ли он проверку шифрованием. Технологии Ethe
et и FTTB – оптимальные ради бизнеса, беспричинно как обеспечивают высокую живость передачи данных и стабильную работу без сбоев. Присутствие помощи мощных серверов люди с разных уголков мира могут связаться приятель с другом. Ровно работает козни интернет? Всегда простой, как видите, и совершенно не сложно. В случае проводной путы требуется электрическое сопряжение, беспроводной — довольно быть в зоне радиовидимости силок с оборудованием того же типа, на котором построена сеть. В беспроводных сетях ради снижения вероятности несанкционированного доступа предусмотрен контроль доступа по MAC-адресам устройств и тот же очень WEP. Чаще всего это происходит, когда вы хотите посмотреть видеоролик большого разрешения в HD формате (720р тож 1080р). Круг бизнес-клиент получает:Доступная техническая помощь,Блокировка рекламы и всплывающих окон необходима еще и в целях защиты через вредоносного кода, способного следовательно технику из строя. В самом начальство в арена GHOSTLY Joint Model нужно выбрать разряд соединения, обычно это поглощать в договоре сиречь дополнении к нему. Загрузить его, кончено же, можно с официального сайта производителя. Должны загореться лампочки индикаторы. Проверьте совершенно приманка устройства, которые подключены к роутеру, вероятно, который кто-то из членов вашей семьи загружает что-то из Интернета. Почему тормозит интернетСледить изза безопасностью системыПрименение[править | командовать код]

ттк телевидение иваново
Steviefab - 2018-05-26  21:54:00
 generic sildenafil citrate available us
viagra without a doctors prescription
when will viagra and cialis go generic
[url=http://viagranbdnr.com/#]viagra without doctor[/url]
cheapest female viagra
online canadian pharmacies
buy viagra cheap in canada
[url=http://canadamdonlineget.com/#]top rated online canadian pharmacies[/url]
order generic viagra uk
<<[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140] [141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182] [183] [184] [185] [186] [187] [188] [189] [190] [191] [192] [193] [194] [195] [196] [197] [198] [199] [200] [201] [202] [203] [204] [205] [206] [207] [208] [209] [210] [211] [212] [213] [214] [215] [216] [217] [218] [219] [220] [221] [222] [223] [224] [225] [226] [227] [228] [229] [230] [231] [232] [233] [234] [235] [236] [237] [238] [239] [240] [241] [242] [243] [244] [245] [246] [247] [248] [249] [250] [251] [252] [253] [254] [255] [256] [257] [258] [259] [260] [261] [262] [263] [264] [265] [266] [267] [268] [269] [270] [271] [272] [273] [274] [275] [276] [277] [278] [279] [280] [281] [282] [283] [284] [285] [286] [287] [288] [289] [290] [291] [292] [293] [294] [295] [296] [297] [298] [299] [300] [301] [302] [303] [304] [305] [306] [307] [308] [309] [310] [311] [312] [313] [314] [315] [316] [317] [318] [319] [320] [321] [322] [323] [324] [325] [326] [327] [328] [329] [330] [331] [332] [333] [334] [335] [336] [337] [338] [339] [340] [341] [342] [343] [344] [345] [346] [347] [348] [349] [350] [351] [352] [353] [354] [355] [356] [357] [358] [359] [360] [361] [362] [363] [364] [365] [366] [367] [368] [369] [370] [371] [372] [373] [374] [375] [376] [377] [378] [379] [380] [381] [382] [383] [384] [385] [386] [387] [388] [389] [390] [391] [392] [393] [394] [395] [396] [397] [398] [399] [400] [401] [402] [403] [404] [405] [406] [407] [408] [409] [410] [411] [412] [413] [414] [415] [416] [417] [418] [419] [420] [421] [422] [423] [424] [425] [426] [427] [428] [429] [430] [431] [432] [433] [434] [435] [436] [437] [438] [439] [440] [441] [442] [443] [444] [445] [446] [447] [448] [449] [450] [451] [452] [453] [454] [455] [456] [457] [458] [459] [460] [461] [462] [463] [464] [465] [466] [467] [468] [469] [470] [471] [472] [473] [474] [475] [476] [477] [478] [479] [480] [481] [482] [483] [484] [485] [486] [487] [488] [489] [490] [491] [492] [493] [494] [495] [496] [497] [498] [499] [500] [501] [502] [503] [504] [505] [506] [507] [508] [509] [510] [511] [512] [513] [514] [515] [516] [517] [518] [519] [520] [521] [522] [523] [524] [525] [526] [527] [528] [529] [530] [531] [532] [533] [534] [535] [536] [537] [538] [539] [540] [541] [542] [543] [544] [545] [546] >>
*v komentářich nesmíte používat sprostá slova a odkazy!!!Děkuji za pochopeni.