Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1
  • 2

ТЕМА: [РЕШЕНО] Форма Edit Article

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1899

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
Всем привет. Решил повозится с вопросом Как изменить вид Кнопки при Редактировании Материала. То есть Есть кнопка Добавить объявление, она находится в Site форме, при редактировании материала она так же и выводится (Добавить объявление). Как я понял в Себлод не предусмотрено изменить название кнопки при редактировании и создании Материала.

Посмотрев GET запрос в адресной строке я понял что запускается Views Edit , и я подумал а нельзя ли как то засунуть туда кнопку и изменить её value на Сохранить.

Вобщем то к чему пришел я, если мы создаем свой шаблон в нем папку site это будет шаблон на этот вид Views Edit.

Все поля в том числе и кнопки мы выводим просто Полем например $cck->renderField.

Дальше я файр багом нашел код самой кнопки в мозиле, у меня он выглядит так:
<input type="submit" id="ads_button" name="ads_button" value="Edit" class="button " onclick="CCK_Submit('form.save');return false;"/>

Ну value я пока что просто поставил для теста. Вставил я этот код в свой шаблон протестировал все работает, для теста я вставил такой же код ниже первого но с value="Creat" тоже работает. Начал думать каким образом написать условие , при котором При создании материала будет выводится Creat а при редактировании Edit.

Ну вобщем то ничего путнего в голову мне не пришло кроме как проверка на Пустоту ID материала.

То есть если оно пустое выводим Creat если не пустое выводим Edit.

Посмотрев на это все я понял что эти два кода можно не городить, а просто создать Две кнопки в Себлоде , и выводить их полями обычными. Осталось дело за малым написать условие.

И так вопрос - Как написать это условие , вижу это это как if (id=empty) { echo "1";}else{echo "2";}, вот как верно написать в скобках условие не знаю, так как не программист.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1901

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
Может кому понадобится, понимаю что не профи, и возможно данный вариант далек от идеала, но пока что работает и хорошо.Суть создаем как я и говорил две кнопки Создать и Изменить к примеру.Так же создаем(берем готовое по умолчанию) поле Article ID, его тоже выводим в нашу форму Site в админке себлода. Итого получаем три поля

1. Submit = Creat
2. Submit = Edit
3. Text = Article

И просто пишем услови
<?php 
 
		if ($cck->getValue( 'art_id' )){
 
			echo $cck->renderField( 'ads_edit' );
 
		}else{
 
			echo $cck->renderField( 'ads_creat' );
 
		}
 
?>

В шаблоне поле ID не выводится а просто висит в конструкции. При создании материала оно Пустое, при редактировании мы уже редактируем материал который сохранен в базе и имеет свой ID. Соответственно в первом случае когда ID нету выводится вторая кнопка, при Редактировании когда ID есть выводится первая кнопка.

Если что то не так напишите плиз.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1917

  • admin
  • admin аватар
  • Не в сети
  • Администратор
  • Сообщений: 668
  • Спасибо получено: 194
  • Репутация: 66
Все правильно пишешь.
Как вариант еще можно использовать 2 формы ТК с различными кнопками - одну для создания объявлений, вторую - для редактирования. Этот вариант позволяет обойтись без php и при редактировании материала скрыть/показать целый ряд доп. полей.
С уважением,
Юрий Посохов
www.seblod.pro
Реквизиты для поддержки проекта seblod.pro:
WMR: R244179985703, WMZ: Z130736735723, WME: E359359968529
PayPal: moscowfly(cобаCHка)gmail.сом
Яндекс.Деньги: 410011637395363

Для ваших проектов рекомендую хостинг от Beget! Стабильная работа сайтов Joomla, отличная поддержка. БЕСПЛАТНЫЙ тестовый месяц без ограничений! Регистрируясь по реферальной ссылке Вы также поддерживаете наш проект! http://beget.ru?id=21871
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1925

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
вот за это как то я у вас спрашивал , вы сказали что одна форма ТК - один тип Содержимого , это касалось ТК Users, у меня там была проблема с тем что я у меня не редактировался а создавался материал, по этому то я и начал искать решение другим способом.

По поводу моего варианта есть маленькая обработка, мой вариант не совсем идеален, при тестировании вывалились некоторые неисправности, по этому вод модифицированный код, их два у меня варианта и тот и тот работает на каком остановится не знаю:
<?php
$articleid = JFactory::getApplication()->input->getCmd('id', '');
//$articleid = JRequest::getInt( 'id', '', 'get' );
 
	if (empty($articleid)){
		echo "test1";		
	}else{
		echo "test2";
	}	
?>

Вот вверху у меня одна строчка за комментирована, и первый и второй вариант работает, как более идеален не знаю.

При самом первом варианте в этой теме у меня не во всех полях происходило Сохранение значения поля при Редактировании, то есть я создал объявление , поставил цену 1000, потом сохранил материал и забыл что цена 1500, зашел в редактирование Материала изменил на 1500р, сохранить а остается все равно 1000. Это было вызвано тем что я использовал поле Article ID. После того как я удалил из ТК это поле все заработало. По этому пришлось искать другой вариант для проверки Пустоты или Заполненности ID, вот такой вариант пока что работает.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1933

  • admin
  • admin аватар
  • Не в сети
  • Администратор
  • Сообщений: 668
  • Спасибо получено: 194
  • Репутация: 66
sorrrrry пишет:
вот за это как то я у вас спрашивал , вы сказали что одна форма ТК - один тип Содержимого , это касалось ТК Users, у меня там была проблема с тем что я у меня не редактировался а создавался материал, по этому то я и начал искать решение другим способом.

форма одна, но полей в ней может быть сколь угодно много и показывать их/скрывать можно в настройках пункта меню - тем самым в каждом пункте меню могут быть формы с разным набором полей.
При самом первом варианте в этой теме у меня не во всех полях происходило Сохранение значения поля при Редактировании, то есть я создал объявление , поставил цену 1000, потом сохранил материал и забыл что цена 1500, зашел в редактирование Материала изменил на 1500р, сохранить а остается все равно 1000. Это было вызвано тем что я использовал поле Article ID.
если честно, не совсем понимаю как это взаимосвязано - наличие в форме поля article id, в которое не вносятся вручную изменения и проблемы с сохранением "не во всех полях"... Попробуйте сделать поле article id readonly и посмотрите, сохранятся ли проблемы
С уважением,
Юрий Посохов
www.seblod.pro
Реквизиты для поддержки проекта seblod.pro:
WMR: R244179985703, WMZ: Z130736735723, WME: E359359968529
PayPal: moscowfly(cобаCHка)gmail.сом
Яндекс.Деньги: 410011637395363

Для ваших проектов рекомендую хостинг от Beget! Стабильная работа сайтов Joomla, отличная поддержка. БЕСПЛАТНЫЙ тестовый месяц без ограничений! Регистрируясь по реферальной ссылке Вы также поддерживаете наш проект! http://beget.ru?id=21871
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1935

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
если честно, не совсем понимаю как это взаимосвязано - наличие в форме поля article id, в которое не вносятся вручную изменения и проблемы с сохранением "не во всех полях"... Попробуйте сделать поле article id readonly и посмотрите, сохранятся ли проблемы

=============

Я его делал Скрытым и все, я выводил его в Форму в позицию Mainbody НО не выводил в шаблон, потом отключал просто свой шаблон и пользовался стандартным никак только его убрал все заработало.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1938

  • admin
  • admin аватар
  • Не в сети
  • Администратор
  • Сообщений: 668
  • Спасибо получено: 194
  • Репутация: 66
В форме наличие поля id вообще не требуется - id у материала будет создан в любом случае, а в content его уже можно добавить, для целей использования в кастомном шаблоне.
С уважением,
Юрий Посохов
www.seblod.pro
Реквизиты для поддержки проекта seblod.pro:
WMR: R244179985703, WMZ: Z130736735723, WME: E359359968529
PayPal: moscowfly(cобаCHка)gmail.сом
Яндекс.Деньги: 410011637395363

Для ваших проектов рекомендую хостинг от Beget! Стабильная работа сайтов Joomla, отличная поддержка. БЕСПЛАТНЫЙ тестовый месяц без ограничений! Регистрируясь по реферальной ссылке Вы также поддерживаете наш проект! http://beget.ru?id=21871
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1941

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
второй пост сверху
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1949

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
Правильно ли я понимаю - нужно создать пункты меню:

Создать материал - Form: Test
Редактировать материал - Form:Test

И их уже настраивать?
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1950

  • admin
  • admin аватар
  • Не в сети
  • Администратор
  • Сообщений: 668
  • Спасибо получено: 194
  • Репутация: 66
Да
С уважением,
Юрий Посохов
www.seblod.pro
Реквизиты для поддержки проекта seblod.pro:
WMR: R244179985703, WMZ: Z130736735723, WME: E359359968529
PayPal: moscowfly(cобаCHка)gmail.сом
Яндекс.Деньги: 410011637395363

Для ваших проектов рекомендую хостинг от Beget! Стабильная работа сайтов Joomla, отличная поддержка. БЕСПЛАТНЫЙ тестовый месяц без ограничений! Регистрируясь по реферальной ссылке Вы также поддерживаете наш проект! http://beget.ru?id=21871
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1951

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
тогда получается что мне надо в поля Live вводить какие то значения , которые как я понимаю будут браться из GET запроса, то есть из адресной строки.

А каким образом их вводить, я просто Live еще не разу не трогал, и не совсем понимаю что и как. Как я понял для категорий надо вводить catid а как для остальных полей, каким образом туда передвать значение?
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1952

  • admin
  • admin аватар
  • Не в сети
  • Администратор
  • Сообщений: 668
  • Спасибо получено: 194
  • Репутация: 66
зачем тебе live из адресной строки? что тебе нужно получить?
С уважением,
Юрий Посохов
www.seblod.pro
Реквизиты для поддержки проекта seblod.pro:
WMR: R244179985703, WMZ: Z130736735723, WME: E359359968529
PayPal: moscowfly(cобаCHка)gmail.сом
Яндекс.Деньги: 410011637395363

Для ваших проектов рекомендую хостинг от Beget! Стабильная работа сайтов Joomla, отличная поддержка. БЕСПЛАТНЫЙ тестовый месяц без ограничений! Регистрируясь по реферальной ссылке Вы также поддерживаете наш проект! http://beget.ru?id=21871
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1953

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
ну вот я создал два пункта меню Один для создания , один для редактирования, и там и там тип Form:Test щас они работают одинаково и тот и тот создает просто материалы, а как заставить тот что для редактирования редактировать материал?

Вот зашел я в Созданный материал, при нажатии на кнопку Редактировать в Меню открывается Создание материала а как сделать что б открывалось редактирование?
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1954

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
либо каким образом кастомно можно поле сделать readonly, мне просто при Редактировании материала надо 8 полей сделать только для чтения , хотел вывести просто текст getText из Simple поля - не выводится( Value выводится цифрами, текст не хочет
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1959

  • admin
  • admin аватар
  • Не в сети
  • Администратор
  • Сообщений: 668
  • Спасибо получено: 194
  • Репутация: 66
В настройках пункта меню Form в Advanced settings у полей можно менять вид - form, readonly, hidden, очищать значения в БД, а также устанавливать live значения.
Но live тебе здесь не нужен.
Ты настраиваешь в каждом пункте меню форму в нужном тебе виде.
Откуда-то у тебя есть переход на создание материала - он будет вести на один пункт меню (один вид формы).
В форме материала у тебя есть кнопка (можно сделать div блок в freetext со стилем кнопки), например, в content,"изменить статью" на которой установлен link->form в настройках которого есть ссылка на пункт второго меню - в этом случае материал будет редактироваться в нужной форме при нажатии на эту кнопку. Чтобы все "красиво" доработать можно еще скрыть карандаш джумловский в материалах (в настройках Seblod), и на кнопку изменения материала повесить в кастомном шаблоне проверку - показывать ее только определенным группам пользователей и автору - чтобы кнопку не видели те, кому ее видеть не нужно. ВСЕ
С уважением,
Юрий Посохов
www.seblod.pro
Реквизиты для поддержки проекта seblod.pro:
WMR: R244179985703, WMZ: Z130736735723, WME: E359359968529
PayPal: moscowfly(cобаCHка)gmail.сом
Яндекс.Деньги: 410011637395363

Для ваших проектов рекомендую хостинг от Beget! Стабильная работа сайтов Joomla, отличная поддержка. БЕСПЛАТНЫЙ тестовый месяц без ограничений! Регистрируясь по реферальной ссылке Вы также поддерживаете наш проект! http://beget.ru?id=21871
Последнее редактирование: 5 года 5 мес. назад от admin.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1964

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
спасибо, щас попробую, что то вроди как и понял, я просто немного не так представлял эту работу, не совсем конечно все понял но щас поиграюсь. Еще раз спасибо.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1965

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
Вобщем то все сработало, одно беспокоит как оно сработало я так и не понял, просто саму логику не понял методом тыка сделал, вы написали (link->content) но так у меян не заработало перешло опять на создание нового а вот, link->form, и потом я выбрал пункт меню Изменить материал какой создавал предварительно , вот так заработало, нужные поля теперь отключаются , либо только читаются вобщим все как надо происходит.
Спасибо еще раз, этого я не мог долго понять.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1966

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
Не подскажете по какой причине Селект Динамик , который выбирает категории не делается readonly, скрыть (hidden) можно, вывести значение (value) можно , а вот readonly не хочет. Simle поля все поддались (только для чтения), селект нет.
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1968

  • admin
  • admin аватар
  • Не в сети
  • Администратор
  • Сообщений: 668
  • Спасибо получено: 194
  • Репутация: 66
На скорую писал, конечно link->form.
Почему с динамиком не срабатывает не знаю, смотреть надо. Возможно недоработка - сейчас попробовал у себя сделать его readonly - тоже самое
С уважением,
Юрий Посохов
www.seblod.pro
Реквизиты для поддержки проекта seblod.pro:
WMR: R244179985703, WMZ: Z130736735723, WME: E359359968529
PayPal: moscowfly(cобаCHка)gmail.сом
Яндекс.Деньги: 410011637395363

Для ваших проектов рекомендую хостинг от Beget! Стабильная работа сайтов Joomla, отличная поддержка. БЕСПЛАТНЫЙ тестовый месяц без ограничений! Регистрируясь по реферальной ссылке Вы также поддерживаете наш проект! http://beget.ru?id=21871
Администратор запретил публиковать записи гостям.

[РЕШЕНО] Форма Edit Article 5 года 5 мес. назад #1969

  • sorrrrry
  • sorrrrry аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 296
  • Спасибо получено: 5
  • Репутация: 2
Ну да, я ну я его вывел value, там значение в span выводится в css его стилизовал в принципы меня устроило. Теперь осталось каким то образом написать проверку на Автора статьи, тут я конечно не осилю, вчера пробовал и из com_content вытягивать её , там тоже как я понял она есть , при редактировании своего материала,
// First test if the permission is available.
		if ($user->authorise('core.edit.own', $asset)) {
			// Now test the owner is the user.
			$ownerId	= (int) isset($data['created_by']) ? $data['created_by'] : 0;
			if (empty($ownerId) && $recordId) {
				// Need to do a lookup from the model.
				$record		= $this->getModel()->getItem($recordId);
 
				if (empty($record)) {
					return false;
				}
 
				$ownerId = $record->created_by;
			}
 
			// If the owner matches 'me' then do the test.
			if ($ownerId == $userId) {
				return true;
			}
		}

такого плана, но так и не получилось у меня ничего.
Администратор запретил публиковать записи гостям.
  • Страница:
  • 1
  • 2

roundtheme