Jump to content

Запрет поста изображение в галерею без альбома.

Featured Replies

Posted
comment_93433

Добрый день. У меня на сайте должна в большом объеме использоваться галерея изображений, но у нее есть один минус. Пользователи часто забывают создать альбом и постят напрямую в категорию User Albums. Учитывая планируемый объем контента, это засорит всю галерею. Хуже всего, что я не могу сам взять, выделить изображения и переместить их в какой-нибудь альбом. Хотелось бы запретить юзерам возможность постить без создания альбома или добавления в уже существующий. Кто-нибудь знает как сделать эти поля required? Чтобы изображения просто сами по себе не загружались без альбома.  

Как вариант, думаю можно сделать какое-нибудь условие, проверяющее выбран ли альбом и заключить в это условие кпопку "Finish", чтобы она отображалась только при выбранном/созданном альбоме, но я понятия не имею как это сделать.

  • Author
comment_93464

Все, пофиксил самостоятельно) Вот фикс, если кому-нибудь нужно.

В шаблоне imageInformation.phtml замените все после 

<div class='ipsAreaBackground_reset ipsPad ipsClearfix'> 

на приведенный ниже код.

<div class='ipsAreaBackground_reset ipsPad ipsClearfix'>
			{{if $category->allow_albums AND ( $canCreate or count( \IPS\gallery\Album::loadByOwner() ) )}}
				<div data-role='albumChoice' class='ipsPos_left {{if $album}}ipsHide{{endif}}'>
					{{if $canCreate}}
						<a href='{url="app=gallery&module=gallery&controller=submit&do=submit&_step=album&chooseAlbum=true&albumLocation=new&category={$category->_id}"}' data-action='createAlbum' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-forceReload data-ipsDialog-title='{lang="create_album"}' class='ipsButton ipsButton_light ipsButton_verySmall'><i class='fa fa-plus'></i> {lang="create_an_album"}</a> {{if count( \IPS\gallery\Album::loadByOwner() )}}&nbsp;&nbsp;{lang="or"}&nbsp;&nbsp; {{endif}}
					{{endif}}
					{{if count( \IPS\gallery\Album::loadByOwner() )}}
						<a href='{url="app=gallery&module=gallery&controller=submit&do=submit&_step=album&chooseAlbum=true&albumLocation=existing&category={$category->_id}"}' data-ipsDialog data-ipsDialog-title='{lang="choose_existing_album"}' data-ipsDialog-forceReload class='ipsButton ipsButton_light ipsButton_verySmall'><i class='fa fa-picture-o'></i> {lang="add_to_existing_album"}</a>
					{{endif}}
				</div>
				<div data-role='albumChosen' class='ipsPos_left {{if !$album}}ipsHide{{endif}} ipsType_break'>
					<i class='fa fa-picture-o'></i> &nbsp;<span data-role='text'>{lang="new_album" pluralize="$album['images']" sprintf="$album['name']"}</span> <a href='{url="app=gallery&module=gallery&controller=submit&do=submit&category={$category->_id}&_step=album" seoTemplate="gallery_submit"}' data-action='changeAlbum' class='ipsType_small'>({lang="change_album"})</a>
					<a href='{url="app=gallery&module=gallery&controller=submit&do=submit&category={$category->_id}&_step=image_information&finish=1" seoTemplate="gallery_submit"}' class='ipsPos_right ipsButton ipsButton_important ipsButton_verySmall' style="margin-left: 550px;" data-action='finish'><i class='fa fa-check'></i> {lang="image_info_finish"}</a>
						<section class='ipsColumns ipsColumns_collapsePhone ipsSpacer_top' data-role='editForm'>
						{$form|raw}
						</section> 
				</div>
			{{else}}
				<div class='ipsPos_left'>
					<i class='fa fa-picture-o'></i> {lang="adding_to_category_x" sprintf="$category->_title"}
				</div>
			{{endif}}

			<ul class='ipsMenu ipsMenu_auto ipsHide' id='elImageTools_menu'>
				<li class='ipsMenu_item'><a href='#'>{lang="set_tags"}</a></li>
				<li class='ipsMenu_item'><a href='#'>{lang="set_copyright"}</a></li>
				<li class='ipsMenu_item'><a href='#'>{lang="notify_me"}</a></li>
			</ul>
		</div>
	</div>
	

</div>

Код скрывает кнопки поста изображений, если вы не выбрали или не создали альбом. Возможности поста в голую категорию нет, если кого-то не устраивает так, то придется искать другой фикс. Для меня же - идеальное решение.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.