Клуб знакомств

Идеи для расширения функциональности phpBB 2.0.x
Thoral

Клуб знакомств

Сообщение Thoral »

требуется интегрировать в phpBB клуб знакомств.

описание функциональных возможностей:

• деление на главные категории:

- она ищет его
- он ищет её
- она ищет её
- он ищет его
- свинг-знакомства
- другое

• пользователь может добавить анкеты в желаемую подкатегорию. этот пользователь должен входить в определённую, строго установленную группу пользователей. других пользователей (рядовых) доступа в клуб быть не должно. подкатегориями выступают конкретный города.

• анкета состоит из полей:

- псевдоним пользователя и ID (скрыт) - берётся из базы форума;
- e-mail (из базы форума);
- текст сообщения пользователя (просто текст, без какого-либо ббкода или хтмл);
- контактный телефон;
- фото, если есть (из базы форума на основе Profile Photo MOD) или публикация ссылки на удалённое фото;

• классификация всех имеющихся анкет по городам и странам;

• вывод для конкретного пользователя только анкет из его родного города или любого другого города (по его выбору).

• возможность модерации


мод в принципе ненаворотистый,
существует ли приблизительный бесплатный аналог в природе?
если нет, возмётся кто-нибудь написать?
(баксов так за $30)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Thoral
есть ли ограничения по времени для написания и какой способ оплаты? =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Thoral

Сообщение Thoral »

ну, желательно вложиться до конца апреля,

оплата - через вебмани напрямую или через Rupay.com (множество различных вариантов вывода)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

кстати... еще вопрос... функциональность форума нужно оставить? или только клуб знакомств?
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Splurov
phpBB 1.4.4
Сообщения: 138
Зарегистрирован: 20 лет 5 месяцев
Откуда: Россия, Москва

Сообщение Splurov »

[R: R@m$e$ :U]
Ты готов сделать такой "мод" за 30$?
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Splurov
а почему нет? в первую очередь для общего развития себя =) а потом немного переделать, чтобы не ломали этого пользователя и выкладывать на общее обозрение...
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Thoral

Сообщение Thoral »

[R: R@m$e$ :U]

конечно, функциональность форума оставить обязательно,
клуб планируется открыть как раз при форуме специально для VIP-членов.

Splurov
а что, разве мало даю? ;)
ничего особенно сложного.. я бы сам сделал, но времени вобрез.
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Thoral
ну значит постораюсь успеть =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Thoral
осталось только модерация... и админка... и еще привязка к profile photo mod... дай линк на него... плз... модерация нужна, как панель модерации к форуму или только в админке, как обычное изменение пользователя, пойдет?
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5426
Зарегистрирован: 20 лет 3 месяца
Откуда: Питер
Благодарил (а): 177 раз
Поблагодарили: 749 раз

Сообщение Siava »

[R: R@m$e$ :U] писал(а):profile photo mod... дай линк на него... плз
http://www.opentools.de/board/viewtopic.php?t=276 :roll:

(оффтоп.. если сделаешь на этот мод модерацию из админки, то будет здорово :D )
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Siava
надеюсь мы об одном понятии "модерация из админки" говорим... я имею ввиду изменение пользователей... =) хотя можно поговорить и об иначе
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5426
Зарегистрирован: 20 лет 3 месяца
Откуда: Питер
Благодарил (а): 177 раз
Поблагодарили: 749 раз

Сообщение Siava »

[R: R@m$e$ :U]
Именно ;) Добавить в этот мод модерацию через admin_users.php :roll:

(правда это уже отдельная тема) :roll:
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Thoral
давай мыло... отправлю то, что сейчас получилось... скажешь, что не устраивает... ;)

Siava

Код: Выделить всё

############################################################## 
## MOD Title: Admin for 'Profile Photo MOD' 
## MOD Author: [R: R@m$e$ :U] < Ramses@FromRU.com > (Ramses) http://www.phpbbguru.net
## MOD Description: Add fields in user's edit in ACP for Profile Photo MOD by Acyd Burn
## MOD Version: 1.0.0 
## 
## Installation Level: Easy
## Installation Time: ~10 Minutes 
## Files To Edit: 
##      admin/admin_users.php
##      templates/subSilver/admin/user_edit_body.tpl
##      language/lang_english/lang_profilephoto.php
## Included Files: 
##      n/a
############################################################## 
## For Security Purposes, Please Check: http://www.phpbbguru.net/mods/ for the 
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code 
## to enter into your phpBB Forum. 
############################################################## 
## Author Notes: 
##      Find bug? Please write me...
## 
##      
## 
############################################################## 
## MOD History: 
## 
##   2005-03-29 - Version 1.0.0 
##      - First release... =)
## 
############################################################## 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
############################################################## 

# 
#-----[ OPEN ]------------------------------------------ 
# 

admin/admin_users.php

# 
#-----[ FIND ]------------------------------------------ 
# 

require($phpbb_root_path . 'includes/functions_validate.'.$phpEx);

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

// [start] Profile Photo MOD
if ( !file_exists($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_profilephoto.'.$phpEx) )
{
	include($phpbb_root_path . 'language/lang_english/lang_profilephoto.'.$phpEx);
}
else
{
	include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_profilephoto.' . $phpEx);
}
// [end] Profile Photo MOD

# 
#-----[ FIND ]------------------------------------------ 
# 

		$user_avatar_local = ( isset( $HTTP_POST_VARS['avatarselect'] ) && !empty($HTTP_POST_VARS['submitavatar'] ) && $board_config['allow_avatar_local'] ) ? $HTTP_POST_VARS['avatarselect'] : ( ( isset( $HTTP_POST_VARS['avatarlocal'] )  ) ? $HTTP_POST_VARS['avatarlocal'] : '' );

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 

		// [start] Profile Photo MOD
		$user_photo_remoteurl = ( !empty($HTTP_POST_VARS['photoremoteurl']) ) ? trim( $HTTP_POST_VARS['photoremoteurl'] ) : '';
		$user_photo_url = ( !empty($HTTP_POST_VARS['photourl']) ) ? trim( $HTTP_POST_VARS['photourl'] ) : '';
		$user_photo_loc = ( $HTTP_POST_FILES['photo']['tmp_name'] != "none") ? $HTTP_POST_FILES['photo']['tmp_name'] : '';
		$user_photo_name = ( !empty($HTTP_POST_FILES['photo']['name']) ) ? $HTTP_POST_FILES['photo']['name'] : '';
		$user_photo_size = ( !empty($HTTP_POST_FILES['photo']['size']) ) ? $HTTP_POST_FILES['photo']['size'] : 0;
		$user_photo_filetype = ( !empty($HTTP_POST_FILES['photo']['type']) ) ? $HTTP_POST_FILES['photo']['type'] : '';

		$user_photo = ( empty($user_photo_loc) ) ? $this_userdata['user_photo'] : '';
		$user_photo_type = ( empty($user_photo_loc) ) ? $this_userdata['user_photo_type'] : '';
		// [end] Profile Photo MOD

# 
#-----[ FIND ]------------------------------------------ 
# 

		//
		// Avatar stuff
		//

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 

		// [start] Profile Photo MOD
		//
		// Photo stuff
		//
		$photo_sql = "";
		if( isset($HTTP_POST_VARS['photodel']) )
		{
			if( $this_userdata['user_photo_type'] == USER_AVATAR_UPLOAD && $this_userdata['user_photo'] != "" )
			{
				if( @file_exists(@phpbb_realpath("./" . $board_config['photo_path'] . "/" . $this_userdata['user_photo'])) )
				{
					@unlink("./" . $board_config['photo_path'] . "/" . $this_userdata['user_photo']);
				}
			}
			$photo_sql = ", user_photo = '', user_photo_type = " . USER_AVATAR_NONE;
		}
		else if( ( $user_photo_loc != "" || !empty($user_photo_url) ) && !$error )
		{
			//
			// Only allow one type of upload, either a
			// filename or a URL
			//
			if( !empty($user_photo_loc) && !empty($user_photo_url) )
			{
				$error = TRUE;
				if( isset($error_msg) )
				{
					$error_msg .= "<br />";
				}
				$error_msg .= $lang['Only_one_photo'];
			}

			if( $user_photo_loc != "" )
			{
				if( file_exists(@phpbb_realpath($user_photo_loc)) && ereg(".jpg$|.gif$|.png$", $user_photo_name) )
				{
					if( $user_photo_size <= $board_config['photo_filesize'] && $user_photo_size > 0)
					{
						$error_type = false;

						//
						// Opera appends the image name after the type, not big, not clever!
						//
						preg_match("'image\/[x\-]*([a-z]+)'", $user_photo_filetype, $user_photo_filetype);
						$user_photo_filetype = $user_photo_filetype[1];

						switch( $user_photo_filetype )
						{
							case "jpeg":
							case "pjpeg":
							case "jpg":
								$imgtype = '.jpg';
								break;
							case "gif":
								$imgtype = '.gif';
								break;
							case "png":
								$imgtype = '.png';
								break;
							default:
								$error = true;
								$error_msg = (!empty($error_msg)) ? $error_msg . "<br />" . $lang['Photo_filetype'] : $lang['Photo_filetype'];
								break;
						}

						if( !$error )
						{
							list($width, $height) = @getimagesize($user_photo_loc);

							if( $width <= $board_config['photo_max_width'] && $height <= $board_config['photo_max_height'] )
							{
								$user_id = $this_userdata['user_id'];

								$photo_filename = $user_id . $imgtype;

								if( $this_userdata['user_photo_type'] == USER_AVATAR_UPLOAD && $this_userdata['user_photo'] != "" )
								{
									if( @file_exists(@phpbb_realpath("./../" . $board_config['photo_path'] . "/" . $this_userdata['user_photo'])) )
									{
										@unlink("./../" . $board_config['photo_path'] . "/". $this_userdata['user_photo']);
									}
								}
								@copy($user_photo_loc, "./../" . $board_config['photo_path'] . "/$photo_filename");

								$photo_sql = ", user_photo = '$photo_filename', user_photo_type = " . USER_AVATAR_UPLOAD;
							}
							else
							{
								$l_photo_size = sprintf($lang['Photo_imagesize'], $board_config['photo_max_width'], $board_config['photo_max_height']);

								$error = true;
								$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $l_photo_size : $l_photo_size;
							}
						}
					}
					else
					{
						$l_photo_size = sprintf($lang['Photo_filesize'], round($board_config['photo_filesize'] / 1024));

						$error = true;
						$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $l_photo_size : $l_photo_size;
					}
				}
				else
				{
					$error = true;
					$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $lang['Photo_filetype'] : $lang['Photo_filetype'];
				}
			}
			else if( !empty($user_photo_url) )
			{
				//
				// First check what port we should connect
				// to, look for a :[xxxx]/ or, if that doesn't
				// exist assume port 80 (http)
				//
				preg_match("/^(http:\/\/)?([\w\-\.]+)\:?([0-9]*)\/(.*)$/", $user_photo_url, $url_ary);

				if( !empty($url_ary[4]) )
				{
					$port = (!empty($url_ary[3])) ? $url_ary[3] : 80;

					$fsock = @fsockopen($url_ary[2], $port, $errno, $errstr);
					if( $fsock )
					{
						$base_get = "/" . $url_ary[4];

						//
						// Uses HTTP 1.1, could use HTTP 1.0 ...
						//
						@fputs($fsock, "GET $base_get HTTP/1.1\r\n");
						@fputs($fsock, "HOST: " . $url_ary[2] . "\r\n");
						@fputs($fsock, "Connection: close\r\n\r\n");

						unset($photo_data);
						while( !@feof($fsock) )
						{
							$photo_data .= @fread($fsock, $board_config['photo_filesize']);
						}
						@fclose($fsock);

						if( preg_match("/Content-Length\: ([0-9]+)[^\/ ][\s]+/i", $photo_data, $file_data1) && preg_match("/Content-Type\: image\/[x\-]*([a-z]+)[\s]+/i", $photo_data, $file_data2) )
						{
							$file_size = $file_data1[1]; 
							$file_type = $file_data2[1];

							switch( $file_type )
							{
								case "jpeg":
								case "pjpeg":
								case "jpg":
									$imgtype = '.jpg';
									break;
								case "gif":
									$imgtype = '.gif';
									break;
								case "png":
									$imgtype = '.png';
									break;
								default:
									$error = true;
									$error_msg = (!empty($error_msg)) ? $error_msg . "<br />" . $lang['Photo_filetype'] : $lang['Photo_filetype'];
									break;
							}

							if( !$error && $file_size > 0 && $file_size < $board_config['photo_filesize'] )
							{
								$photo_data = substr($photo_data, strlen($photo_data) - $file_size, $file_size);

								$tmp_filename = tempnam ("/tmp", $this_userdata['user_id'] . "-");
								$fptr = @fopen($tmp_filename, "wb");
								$bytes_written = @fwrite($fptr, $photo_data, $file_size);
								@fclose($fptr);

								if( $bytes_written == $file_size )
								{
									list($width, $height) = @getimagesize($tmp_filename);

									if( $width <= $board_config['photo_max_width'] && $height <= $board_config['photo_max_height'] )
									{
										$user_id = $this_userdata['user_id'];

										$photo_filename = $user_id . $imgtype;

										if( $this_userdata['user_photo_type'] == USER_AVATAR_UPLOAD && $this_userdata['user_photo'] != "")
										{
											if( file_exists(@phpbb_realpath("./../" . $board_config['photo_path'] . "/" . $this_userdata['user_photo'])) )
											{
												@unlink("./../" . $board_config['photo_path'] . "/" . $this_userdata['user_photo']);
											}
										}
										@copy($tmp_filename, "./../" . $board_config['photo_path'] . "/$photo_filename");
										@unlink($tmp_filename);

										$photo_sql = ", user_photo = '$photo_filename', user_photo_type = " . USER_AVATAR_UPLOAD;
									}
									else
									{
										$l_photo_size = sprintf($lang['Photo_imagesize'], $board_config['photo_max_width'], $board_config['photo_max_height']);

										$error = true;
										$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $l_photo_size : $l_photo_size;
									}
								}
								else
								{
									//
									// Error writing file
									//
									@unlink($tmp_filename);
									message_die(GENERAL_ERROR, "Could not write photo file to local storage. Please contact the board administrator with this message", "", __LINE__, __FILE__);
								}
							}
						}
						else
						{
							//
							// No data
							//
							$error = true;
							$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $lang['File_no_data'] : $lang['File_no_data'];
						}
					}
					else
					{
						//
						// No connection
						//
						$error = true;
						$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $lang['No_connection_URL'] : $lang['No_connection_URL'];
					}
				}
				else
				{
					$error = true;
					$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $lang['Incomplete_URL'] : $lang['Incomplete_URL'];
				}
			}
			else if( !empty($user_photo_name) )
			{
				$l_photo_size = sprintf($lang['Photo_filesize'], round($board_config['photo_filesize'] / 1024));

				$error = true;
				$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $l_photo_size : $l_photo_size;
			}
		}
		else if( $user_photo_remoteurl != "" && $photo_sql == "" && !$error )
		{
			if( !preg_match("#^http:\/\/#i", $user_photo_remoteurl) )
			{
				$user_photo_remoteurl = "http://" . $user_photo_remoteurl;
			}

			if( preg_match("#^(http:\/\/[a-z0-9\-]+?\.([a-z0-9\-]+\.)*[a-z]+\/.*?\.(gif|jpg|png)$)#is", $user_photo_remoteurl) )
			{
				$photo_sql = ", user_photo = '" . str_replace("\'", "''", $user_photo_remoteurl) . "', user_photo_type = " . USER_AVATAR_REMOTE;
			}
			else
			{
				$error = true;
				$error_msg = ( !empty($error_msg) ) ? $error_msg . "<br />" . $lang['Wrong_remote_photo_format'] : $lang['Wrong_remote_photo_format'];
			}
		}
		// [end] Profile Photo MOD

# 
#-----[ FIND ]------------------------------------------ 
# 

			$sql = "UPDATE " . USERS_TABLE . "
				SET " . $username_sql . $passwd_sql . "user_email = '" . str_replace("\'", "''", $email) . "', user_icq = '" . str_replace("\'", "''", $icq) . "', user_website = '" . str_replace("\'", "''", $website) . "', user_occ = '" . str_replace("\'", "''", $occupation) . "', user_from = '" . str_replace("\'", "''", $location) . "', user_interests = '" . str_replace("\'", "''", $interests) . "', user_sig = '" . str_replace("\'", "''", $signature) . "', user_viewemail = $viewemail, user_aim = '" . str_replace("\'", "''", $aim) . "', user_yim = '" . str_replace("\'", "''", $yim) . "', user_msnm = '" . str_replace("\'", "''", $msn) . "', user_attachsig = $attachsig, user_sig_bbcode_uid = '$signature_bbcode_uid', user_allowsmile = $allowsmilies, user_allowhtml = $allowhtml, user_allowavatar = $user_allowavatar, user_allowbbcode = $allowbbcode, user_allow_viewonline = $allowviewonline, user_notify = $notifyreply, user_allow_pm = $user_allowpm, user_notify_pm = $notifypm, user_popup_pm = $popuppm, user_lang = '" . str_replace("\'", "''", $user_lang) . "', user_style = $user_style, user_timezone = $user_timezone, user_dateformat = '" . str_replace("\'", "''", $user_dateformat) . "', user_active = $user_status, user_rank = $user_rank" . $avatar_sql . "
				WHERE user_id = $user_id";

# 
#-----[ IN-LINE FIND ]------------------------------------------ 
# 

$avatar_sql . 

# 
#-----[ IN-LINE AFTER, ADD ]------------------------------------------ 
# 

$photo_sql . 

# 
#-----[ FIND ]------------------------------------------ 
# 

		$user_avatar = $this_userdata['user_avatar'];

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 

		// [start] Profile Photo MOD
		$user_photo = $this_userdata['user_photo'];
		$user_photo_type = $this_userdata['user_photo_type'];
		// [end] Profile Photo MOD

# 
#-----[ FIND ]------------------------------------------ 
# 

		$s_hidden_fields = '<input type="hidden" name="mode" value="save" /><input type="hidden" name="agreed" value="true" /><input type="hidden" name="coppa" value="' . $coppa . '" />';
		$s_hidden_fields .= '<input type="hidden" name="id" value="' . $this_userdata['user_id'] . '" />';

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

		// [start] Profile Photo MOD
		if( $user_photo_type )
		{
			switch( $user_photo_type )
			{
				case USER_AVATAR_UPLOAD:
					$photo = '<img src="../' . $board_config['photo_path'] . '/' . $user_photo . '" alt="" />';
					break;
				case USER_AVATAR_REMOTE:
					$photo = '<img src="' . $user_photo  . '" alt="" />';
					break;
			}
		}
		else
		{
			$photo = "";
		}
		// [end] Profile Photo MOD

# 
#-----[ FIND ]------------------------------------------ 
# 

			'AVATAR' => $avatar,

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 

			// [start] Profile Photo MOD
			'PHOTO' => $photo,
			// [end] Profile Photo MOD

# 
#-----[ FIND ]------------------------------------------ 
# 

			'L_AVATAR_PANEL' => $lang['Avatar_panel'],

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 

			// [start] Profile Photo MOD
			'L_PHOTO_PANEL' => $lang['Photo_panel'],
			'L_PHOTO_EXPLAIN' => $lang['Photo_explain'],
			'L_DELETE_PHOTO' => $lang['Delete_Image'],
			'L_UPLOAD_PHOTO_FILE' => $lang['Upload_photo_file'],
			'L_UPLOAD_PHOTO_URL' => $lang['Upload_photo_URL'],
			'L_LINK_REMOTE_PHOTO' => $lang['Link_remote_photo'],
			// [end] Profile Photo MOD

# 
#-----[ FIND ]------------------------------------------ 
# 

		if( file_exists(@phpbb_realpath('./../' . $board_config['avatar_path'])) && ($board_config['allow_avatar_upload'] == TRUE) )

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 

		// [start] Profile Photo MOD
		if( file_exists(@phpbb_realpath('./../' . $board_config['photo_path'])) && ($board_config['allow_photo_upload'] == TRUE) )
		{
			if ( $form_enctype != '' )
			{
				$template->assign_block_vars('photo_local_upload', array() );
			}
			$template->assign_block_vars('photo_remote_upload', array() );
		}

		if( $board_config['allow_photo_remote'] == TRUE )
		{
			$template->assign_block_vars('photo_remote_link', array() );
		}
		// [end] Profile Photo MOD

# 
#-----[ OPEN ]------------------------------------------ 
# 

templates/subSilver/admin/user_edit_body.tpl

# 
#-----[ FIND ]------------------------------------------ 
# 

	<!-- END avatar_local_gallery -->

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

	<tr> 
	  <th class="thSides" colspan="2" height="12" valign="middle">{L_PHOTO_PANEL}</th>
	</tr>
	<tr align="center"> 
	  <td class="row1" colspan="2"> 
		<table width="70%" cellspacing="2" cellpadding="0" border="0">
		  <tr> 
			<td width="65%"><span class="gensmall">{L_PHOTO_EXPLAIN}</span></td>
			<td align="center"><span class="gensmall">{L_CURRENT_IMAGE}</span><br />
			  {PHOTO}<br />
			  <input type="checkbox" name="photodel" />
			  &nbsp;<span class="gensmall">{L_DELETE_PHOTO}</span></td>
		  </tr>
		</table>
	  </td>
	</tr>

	<!-- BEGIN photo_local_upload -->
	<tr> 
	  <td class="row1"><span class="gen">{L_UPLOAD_PHOTO_FILE}</span></td>
	  <td class="row2"> 
		<input type="hidden" name="MAX_PHOTO_FILE_SIZE" value="{PHOTO_SIZE}" />
		<input type="file" name="avatar" class="post" style="width: 200px"  />
	  </td>
	</tr>
	<!-- END photo_local_upload -->
	<!-- BEGIN photo_remote_upload -->
	<tr> 
	  <td class="row1"><span class="gen">{L_UPLOAD_PHOTO_URL}</span></td>
	  <td class="row2"> 
		<input class="post" type="text" name="photourl" size="40" class="post" style="width: 200px"  />
	  </td>
	</tr>
	<!-- END photo_remote_upload -->
	<!-- BEGIN photo_remote_link -->
	<tr> 
	  <td class="row1"><span class="gen">{L_LINK_REMOTE_PHOTO}</span></td>
	  <td class="row2"> 
		<input class="post" type="text" name="photoremoteurl" size="40" class="post" style="width: 200px"  />
	  </td>
	</tr>
	<!-- END photo_remote_link -->

# 
#-----[ OPEN ]------------------------------------------ 
# 

language/lang_english/lang_profilephoto.php

# 
#-----[ FIND ]------------------------------------------ 
# 

$lang['Photo_explain'] = "Displays a small graphic image in your Profile. Only one image can be displayed at a time, its width can be no greater than %d pixels, a height no greater than %d pixels and a file size no more than %dkB."; 

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

$lang['Admin_photo_explain'] = 'Here you can see and delete the user\'s current photo.';

# 
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 
# 
# EoM
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5426
Зарегистрирован: 20 лет 3 месяца
Откуда: Питер
Благодарил (а): 177 раз
Поблагодарили: 749 раз

Сообщение Siava »

[R: R@m$e$ :U]
мелкие замечания:
1. в админке не подставляются значения у переменных и выглядит так:

Код: Выделить всё

Показывает небольшое изображение в вашем профиле. Сюда можно загружать только графические изображения jpg, gif и png, шириной не больше %d, высотой не больше %d пикселов и размером не больше %dкб.
2. там же не отображается текст "Загрузить аватару с URL:" и его описание. (то есть пустое поле)
3. и при загрузке новой фотки ругается на аватару, как-будто фотка грузится вместо неё (что-то напутано)

Зато работает удаление фото через админку :D :lol:

Добавлено спустя 3 минуты 46 секунд:

Наверно надо рыть тут:

Код: Выделить всё

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

      // [start] Profile Photo MOD 
      if( $user_photo_type ) 
      { 
         switch( $user_photo_type ) 
         { 
            case USER_AVATAR_UPLOAD: 
               $photo = '<img src="../' . $board_config['photo_path'] . '/' . $user_photo . '" alt="" />'; 
               break; 
            case USER_AVATAR_REMOTE: 
               $photo = '<img src="' . $user_photo  . '" alt="" />'; 
               break; 
         } 
      } 
      else 
      { 
         $photo = ""; 
      } 
      // [end] Profile Photo MOD
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Зарегистрирован: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Siava
так.. я этим озадачился... но только переставил винду... поэтому сейчас поставлю сервер.... и посмотрю... у меня вроде все работает...

Добавлено спустя 1 час 41 минуту 15 секунд:

Siava
вроде исправился =)

Код: Выделить всё

############################################################## 
## MOD Title: Admin for 'Profile Photo MOD' [Update from 1.0.0 to 1.0.1]
## MOD Author: [R: R@m$e$ :U] < Ramses@FromRU.com > (Ramses) http://www.phpbbguru.net
## MOD Description: Add fields in user's edit in ACP for Profile Photo MOD by Acyd Burn
## MOD Version: 1.0.1 
## 
## Installation Level: Easy
## Installation Time: ~3 Minutes 
## Files To Edit: 
##      admin/admin_users.php
##      templates/subSilver/admin/user_edit_body.tpl
## Included Files: 
##      n/a
############################################################## 
## For Security Purposes, Please Check: http://www.phpbbguru.net/mods/ for the 
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code 
## to enter into your phpBB Forum. 
############################################################## 
## Author Notes: 
##      Find bug? Please write me...
## 
##      
## 
############################################################## 
## MOD History: 
## 
##   2005-03-30 - Version 1.0.1 
##      - Fix errors =)
##
##   2005-03-29 - Version 1.0.0 
##      - First release... =)
## 
############################################################## 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
############################################################## 

# 
#-----[ OPEN ]------------------------------------------ 
# 

admin/admin_users.php

# 
#-----[ FIND ]------------------------------------------ 
# 

			'L_PHOTO_EXPLAIN' => $lang['Photo_explain'],

# 
#-----[ REPLACE WITH ]------------------------------------------ 
# 

			'L_PHOTO_EXPLAIN' => $lang['Admin_photo_explain'],

# 
#-----[ FIND ]------------------------------------------ 
# 

			'L_UPLOAD_PHOTO_URL' => $lang['Upload_photo_URL'],

# 
#-----[ REPLACE WITH ]------------------------------------------ 
# 

			'L_UPLOAD_PHOTO_URL' => $lang['Upload_photo_url'],

# 
#-----[ OPEN ]------------------------------------------ 
# 

templates/subSilver/admin/user_edit_body.tpl

# 
#-----[ FIND ]------------------------------------------ 
# 

		<input type="file" name="avatar" class="post" style="width: 200px"  />

# 
#-----[ REPLACE WITH ]------------------------------------------ 
# 

		<input type="file" name="photo" class="post" style="width: 200px"  />

# 
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 
# 
# EoM
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y

Вернуться в «Запросы модов для phpBB 2.0.x»