Помощь [help] букинг для диджея

Тема в разделе "DLE", создана пользователем bugerok, 16 окт 2008.

Информация :
Актуальная версия DataLife Engine 11.3
( Final Release v.11.3 | Скачать DataLife Engine | Скачать 11.3 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.2 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. bugerok

    bugerok

    Регистр.:
    9 апр 2008
    Сообщения:
    300
    Симпатии:
    42
    Добрый день.
    Подскажите плз как сделать страницу буккинга для диджеев
    Это такая страница, где есть информация о диджее и кнопка Буккинг (типа заказать диджея в клуб в такой то день в такое-то время)
    Вот пример Перейти по ссылке

    Я прикинул, какие моды подойдут.. Думал взять модуль Video, там где можно добавлять фильмы и переделать его под добавление диджеев, но вот когда добрался до кнопки буккинга - заказ диджевв, попал в стопор?
    Есть другие варианты выхода из траблы?
    Когда к примеру нажимаешь забукировать- вылезет окошко с несколькими полями и после отправки уйдет на мыло или в админку..все равно
    Может есть какойто инет-магазин под дле? ток вместо товаров продавать диджеев))
     
  2. $aSH

    $aSH

    Регистр.:
    3 ноя 2006
    Сообщения:
    536
    Симпатии:
    233
    зачем так сложно, я делал подобное на основе обычной обратной связи
     
  3. bugerok

    bugerok

    Регистр.:
    9 апр 2008
    Сообщения:
    300
    Симпатии:
    42
    опиши подробнее плз что где менял
     
  4. GauraStyle

    GauraStyle Kot

    Регистр.:
    13 фев 2007
    Сообщения:
    1.497
    Симпатии:
    918
    Хм, тоже такое интересует. Ты как вижу сайт незакончил, а у меня полностью готов, кроме такой формочки.
    Мож поделишся своим опытом или по крайней мере как ты и что замутил. Я то посмотрел класы и всё такое, но я не сильно шарю вот так ваять.
    Зарание благодарю.
    :ah:
     
  5. $aSH

    $aSH

    Регистр.:
    3 ноя 2006
    Сообщения:
    536
    Симпатии:
    233
    да не, закончить то закончил, прсто знакомый, который совладелец никак материал не даст.

    получился этакий долгострой =\


    модуль отсылает "заказ" на почту


    .htaccess
    после
    Код:
    RewriteEngine On
    
    вставить
    Код:
    RewriteRule ^prazdnik.html$ index.php?do=zakaz [L]
    


    zakaz.tpl // под мой дизайн
    Код:
    <script>
    function bg(w)
    	{
    	if (document.getElementById(event.srcElement.id).value == '')
    		{
    		document.getElementById('ya'+w).style.background='#F9E3E9';
    		document.getElementById('text'+w).innerHTML = "←&nbsp;поле не заполнено";
    		}
    	else
    		{
    		document.getElementById('ya'+w).style.background='#F0F9E2';
    		document.getElementById('text'+w).innerHTML = "";
    		}
    	}
    </script>
    
    
    <div class="zakazform">
    <div class="nametop blue">Сделать заказ</div>
    
    <div class="zblock tag">Не забывайте в комментарии указывать сроки Вашего мероприятия</div>
    
    <table id="addcom">
    [not-logged]
    	<tr>
    		<td class="addlefttop">Ваше имя</td>
    		<td class="addrighttop" id="ya1"><input type="text" onblur="bg(1);" name="name" id="name" maxlength="45" style="width:200px" />
    		<span id="text1">обязательное поле</span>
    		</td>
    	</tr>
    	<tr>
    		<td class="addlefttop">Почта</td>
    		<td class="addrighttop" id="ya2"><input type="text" onblur="bg(2);" name="email" id="email" maxlength="45" style="width:200px" />
    		<span id="text2">обязательное поле</span>
    		</td>
    	</tr>
    [/not-logged]
    	<tr>
    		<td class="addlefttop">К чему готовимся?</td>
    		<td class="addrighttop">
    			<select name="subject" id="subject" style="width:200px" />
    				<option selected value="Свадьба">Свадьба</option>
    				<option value="Детские праздники">Детский праздник</option>
    				<option value="Новый год">Новый год</option>
    				<option value="Деловые мероприятия">Деловое мероприятие</option>
    				<option value="Корпоратив">Корпоратив</option>
    				<option value="Другое">Другое</option>
    			</select>
    		<input type="hidden" name="recip" value="1">
    		</td>
    	</tr>
    	<tr>
    		<td class="addlefttop">Комментарий</td>
    		<td class="addrighttop" id="ya3"><textarea name="message" onblur="bg(3);" id="message" style="width:440px;height:100px;"  /></textarea>
    		<span id="text3">обязательное поле</span>
    		</td>
    	</tr>
    	<tr>
    		<td class="addlefttop">Дополнительно</td>
    		<td class="addrighttop">
    			<table id="zakaz">
    				<tr>
    					<td class="zleft">↓&nbsp;Аренда</td>
    					<td class="zright"> </td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_a1"> Ресторан</td>
    					<td class="zright"><input type="checkbox" name="other_a2"> Кафе</td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_a3"> Банкетный зал</td>
    					<td class="zright"><input type="checkbox" name="other_a4"> Столовая</td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_a5"> Теплоход / яхта</td>
    					<td class="zright"><input type="checkbox" name="other_a6"> Аренда лимузина / хаммера</td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_a7"> Свадебный кортеж</td>
    					<td class="zright"> </td>
    				</tr>
    				<tr>
    					<td class="zlefttop">↓&nbsp;Оформление зала</td>
    					<td class="zrightop"> </td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_b1"> Воздушные шары</td>
    					<td class="zright"><input type="checkbox" name="other_b2"> Фигуры из шаров</td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_b3"> Живые цветы</td>
    					<td class="zright"><input type="checkbox" name="other_b4"> Ледяные фигуры</td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_b5"> Фейерверки, салют</td>
    					<td class="zright"><input type="checkbox" name="other_b6"> Торты на заказ</td>
    				</tr>
    				<tr>
    					<td class="zlefttop">↓&nbsp;Сопровождение</td>
    					<td class="zrightop"> </td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_c1"> Фотосъемка</td>
    					<td class="zright"><input type="checkbox" name="other_c2"> Видеосъемка</td>
    
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other_c3"> Свет и звук (дискотека)</td>
    					<td class="zright"> </td>
    				</tr>
    				<tr>
    					<td class="zlefttop">↓&nbsp;Активный отдых</td>
    					<td class="zrightop"> </td>
    				</tr>
    				<tr>
    					<td class="zleft"><input type="checkbox" name="other" value="d1"> Пейнтбол</td>
    					<td class="zright"><input type="checkbox" name="other" value="d2"> Пикник на природе</td>
    				</tr>
    			</table>
    		</td>
    	</tr>
    	<tr>
    		<td class="addlefttop">{code}</td>
    		<td class="addrighttop" id="ya4"><input type="text" onblur="bg(4);" name="sec_code" id="sec_code" maxlength="7" style="width:50px" />
    		<span id="text4">обязательное поле</span>
    		</td>
    	</tr>
    </table>
    <input name="submit" type="submit" class="button" value="Отправить" />
    </div>
    


    engine.php
    после
    Код:
    switch ($do) {
    
    вставить
    Код:
    	case "zakaz" :
    		include ENGINE_DIR.'/modules/zakaz.php';
    		break;
    


    zakaz.php
    Код:
    <?php
    if(!defined('DATALIFEENGINE'))
    {
      die("Hacking attempt!");
    }
    
    if (!$user_group[$member_id['user_group']]['allow_feed']) {
    
    	$lang['feed_error'] = str_replace('{group}', $user_group[$member_id['user_group']]['group_name'], $lang['feed_error']);
    	msgbox ($lang['all_info'], $lang['feed_error']);
    
    } else {
    
    
    if (isset($_POST['send'])) {
    	$stop = "";
    	$zakaz = "\n\nЗаказчик еще хочет:\n";
    
    	if ($is_logged)
    	{
    		$name  = $member_id['name'];
    		$email = $member_id['email'];
    	} else {
    
    		$name = $db->safesql(strip_tags($_POST['name']));
    		$email = $db->safesql(strip_tags($_POST['email']));
    
    		$db->query("SELECT name from " . USERPREFIX . "_users where LOWER(name) = '".strtolower($name)."' OR LOWER(email) = '".strtolower($email)."'");
    
    		if ($db->num_rows() > 0) {
    	 		$stop = $lang['news_err_7'];
    	 	}
    
    		$name = strip_tags(stripslashes($_POST['name']));
    		$email = strip_tags(stripslashes($_POST['email']));
    
    
    	}
    
    	if (strip_tags(stripslashes($_POST['other_a1']))) $zakaz = $zakaz."- Арендовать ресторан\n";
    	if (strip_tags(stripslashes($_POST['other_a2']))) $zakaz = $zakaz."- Арендовать кафе\n";
    	if (strip_tags(stripslashes($_POST['other_a3']))) $zakaz = $zakaz."- Арендовать банкетный зал\n";
    	if (strip_tags(stripslashes($_POST['other_a4']))) $zakaz = $zakaz."- Арендовать столовую\n";
    	if (strip_tags(stripslashes($_POST['other_a5']))) $zakaz = $zakaz."- Арендовать тепоход/яхту\n";
    	if (strip_tags(stripslashes($_POST['other_a6']))) $zakaz = $zakaz."- Арендовать лимузин/хаммер\n";
    	if (strip_tags(stripslashes($_POST['other_a7']))) $zakaz = $zakaz."- Арендовать свадебный кортеж\n";
    
    	if (strip_tags(stripslashes($_POST['other_b1']))) $zakaz = $zakaz."- Оформление воздущными шарами\n";
    	if (strip_tags(stripslashes($_POST['other_b2']))) $zakaz = $zakaz."- Фигуру из шаров\n";
    	if (strip_tags(stripslashes($_POST['other_b3']))) $zakaz = $zakaz."- Оформление живыми цветами\n";
    	if (strip_tags(stripslashes($_POST['other_b4']))) $zakaz = $zakaz."- Ледяную фигуру\n";
    	if (strip_tags(stripslashes($_POST['other_b5']))) $zakaz = $zakaz."- Заказать фейверк\n";
    	if (strip_tags(stripslashes($_POST['other_b6']))) $zakaz = $zakaz."- Торт на заказ\n";
    
    	if (strip_tags(stripslashes($_POST['other_c1']))) $zakaz = $zakaz."- Требуется фотооператор\n";
    	if (strip_tags(stripslashes($_POST['other_c2']))) $zakaz = $zakaz."- Требуется видеооператор\n";
    	if (strip_tags(stripslashes($_POST['other_c3']))) $zakaz = $zakaz."- Требуется DJ\n";
    
    	if (strip_tags(stripslashes($_POST['other_d1']))) $zakaz = $zakaz."- Пейнтбол\n";
    	if (strip_tags(stripslashes($_POST['other_d2']))) $zakaz = $zakaz."- Пикник на природе\n";
    
    	if ($zakaz == "\n\nЗаказчик еще хочет:\n") $zakaz="";
    
    
    	$subject = strip_tags(stripslashes($_POST['subject']));
    	$message = strip_tags(stripslashes($_POST['message']));
    	$recip = intval($_POST['recip']);
    
    
     function check_email($value) {
      return eregi("^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$", $value);
     }
    
     if (empty($name)) {
       $stop .= $lang['feed_err_1'];
     }
    
     if (empty($email)) {
       $stop .= $lang['feed_err_2'];
     }
     elseif (!check_email($email)) {
       $stop .= $lang['feed_err_3'];
     }
    
     if (empty($subject)) {
       $stop .= $lang['feed_err_4'];
     }
    
     if (empty($message)) {
       $stop .= $lang['feed_err_5'];
     }
    
    	if ( $_POST['sec_code'] != $_SESSION['sec_code_session'] OR !$_SESSION['sec_code_session']) {
    	   $stop .= $lang['reg_err_19'];
    	}
        $_SESSION['sec_code_session'] = false;
    
    if ($stop) {
    
    msgbox ($lang['all_err_1'], "$stop<br><br><a href=\"javascript:history.go(-1)\">$lang[all_prev]</a>");
    
    } else { 
    
    	include_once ENGINE_DIR.'/classes/mail.class.php';
    	$mail = new dle_mail ($config);
    
        $recipient = $db->super_query("SELECT name, email, fullname FROM " . USERPREFIX . "_users WHERE user_id='".$recip."'");
     
        if (empty($recipient['fullname'])) $recipient['fullname'] = $recipient['name'];
    
    	 $row = $db->super_query("SELECT template FROM " . PREFIX . "_email where name='feed_mail' LIMIT 0,1");
    
    	 $row['template'] = stripslashes($row['template']);
    	 $row['template'] = str_replace("{%username_to%}",$recipient['fullname'], $row['template']);
    	 $row['template'] = str_replace("{%username_from%}",$name, $row['template']);
    	 $row['template'] = str_replace("{%text%}",$message.$zakaz, $row['template']);
    	 $row['template'] = str_replace("{%ip%}",$_SERVER['REMOTE_ADDR'], $row['template']);
    
         $mail->from = $email;
    
         $mail->send ($recipient['email'], $subject, $row['template']);
    
         if ($mail->send_error) msgbox ($lang['all_info'], $mail->smtp_msg);
     	 else msgbox($lang['feed_ok_1'], "$lang[feed_ok_2] ".$recipient['name']." $lang[feed_ok_3] <a href=\"{$config['http_home_url']}\">$lang[feed_ok_4]</a>");
    
    }
    
    } else {
    
    
    	$user = intval($_GET['user']);
    	
    	if (!$user)
         $db->query("SELECT name, user_group, user_id FROM " . USERPREFIX . "_users where user_group < '4' AND allow_mail = '1' ORDER BY user_group");
    	else
         $db->query("SELECT name, user_group, user_id FROM " . USERPREFIX . "_users where user_id = '$user' AND allow_mail = '1' ORDER BY user_group");
    
       if ($db->num_rows())
         {
         $empf = "<select name=\"recip\">";
         $i = 1;
         while ($row = $db->get_array()) {
          $str = $row['name']." (".stripslashes($user_group[$row['user_group']]['group_name']).")";
    
           if ($i == 1) {
             $empf .= "<option selected=\"selected\" value=\"".$row["user_id"]."\">".$str."</option>\n";
           } else {
             $empf .= "<option value=\"".$row["user_id"]."\">".$str."</option>\n";
           }
            $i++;
          }
      $empf .="</select>";
    
        $db->free();
    
    	$tpl->load_template('zakaz.tpl');
    
    	$path = parse_url($config['http_home_url']);
    	$tpl->set('{recipient}',$empf);
    	$tpl->set('{code}',"<span id=\"dle-captcha\"><img src=\"".$path['path']."engine/modules/antibot.php\" alt=\"{$lang['sec_image']}\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">{$lang['reload_code']}</a></span>");
    
    
    	if (!$is_logged) {
            $tpl->set('[not-logged]',"");
            $tpl->set('[/not-logged]',"");
    		}
    		else $tpl->set_block("'\\[not-logged\\](.*?)\\[/not-logged\\]'si","");
    
    $tpl->copy_template = "<form  method=\"post\" name=\"sendmail\" onsubmit=\"if(document.sendmail.subject.value == '' || document.sendmail.message.value == ''){alert('{$lang['comm_req_f']}');return false}\"action=\"\">\n".$tpl->copy_template."
    <input name=\"send\" type=\"hidden\" value=\"send\" />
    </form>";
    
    $tpl->copy_template .= <<<HTML
    <script language='JavaScript' type="text/javascript">
    function reload () {
    
    	var rndval = new Date().getTime(); 
    
    	document.getElementById('dle-captcha').innerHTML = '<img src="{$path['path']}engine/modules/antibot.php?rndval=' + rndval + '" border="0" width="120" height="50"><br /><a onclick="reload(); return false;" href="#">{$lang['reload_code']}</a>';
    
    };
    </script>
    HTML;
    
        $tpl->compile('content');
    	$tpl->clear();
    
    	}
    	else {msgbox ($lang['all_err_1'], $lang['feed_err_7']);}
      }
    
    }
    ?>
    
     
    Горбушка, bugerok и GauraStyle нравится это.
  6. GauraStyle

    GauraStyle Kot

    Регистр.:
    13 фев 2007
    Сообщения:
    1.497
    Симпатии:
    918
    А zakaz.php вставить куда?
    :ah:
     
  7. kwin

    kwin

    Регистр.:
    22 авг 2007
    Сообщения:
    413
    Симпатии:
    167
    engine/modules/
     
  8. $aSH

    $aSH

    Регистр.:
    3 ноя 2006
    Сообщения:
    536
    Симпатии:
    233
    GauraStyle

    ну прям не ожидал от тебя такого вопроса ))
     
  9. GauraStyle

    GauraStyle Kot

    Регистр.:
    13 фев 2007
    Сообщения:
    1.497
    Симпатии:
    918
  10. Dimaker

    Dimaker

    Регистр.:
    7 фев 2007
    Сообщения:
    205
    Симпатии:
    11
    http://veltime.com/form/form.phpнеподскажете как эту форму вклинить в дле , очень нужно... Чтобы при заходе со стрницы артиста он прописывался в форму
     
Статус темы:
Закрыта.