Přihlásit se

formulář výchozí hodnota

04. říj 2015 21:54 #123736
formulář výchozí hodnota od Ernst
Joomla Expert
Napsal jsem si formulář v quickpoznamka.tpl
Code:
<div id="lovefactory-dialog" title="{jtext _='dialog_quickpoznamka_dialog_title'}"> <div class="lovefactory-dialog-quickpoznamka lovefactory-view"> <div class="lovefactory-dialog-content"> <form action="{jroute task='message.send'}" method="post"> <table> <tr> <th><label>{jtext _='dialog_quickpoznamka_label_to'}</label></th> <td>{$username}</td> </tr> <tr> <th><label for="text">{jtext _='dialog_quickpoznamka_label_message'}</label></th> <td><textarea rows="5" cols="10" id="text" name="message[text]" ></textarea></td> </tr> </table> <input type="hidden" name="message[user_id]" value="{$userId}"> </form> </div> <div class="lovefactory-dialog-buttons"> <a href="#" class="dialog-button dialog-button-submit ui-state-hover"><i class="factory-icon icon-poznamka"></i>{jtext _='dialog_quickpoznamka_button_submit'}</a> <a href="#" class="dialog-button dialog-button-close"><i class="factory-icon icon-cross-button"></i>{jtext _='dialog_button_cancel'}</a> </div> </div> </div>

Poradí mi někdo jak proměnné text nastavit výchozí hodnotu? Value = "" tam použít nemohu

04. říj 2015 22:37 - 04. říj 2015 22:37 #123737
Odpověď od Bong
Moderátor
Sice tomu vůbec nerozumim, ale nestačilo by:
Code:
<textarea rows="5" cols="10" id="text" name="message[text]" >počáteční hodnota</textarea>

I'm sorry, my responses are limited...you must ask the right questions.
Poděkovali: Ernst

04. říj 2015 22:50 #123738
Odpověď od Ernst
Joomla Expert
Stačilo, díky

07. říj 2015 20:20 - 07. říj 2015 20:20 #123841
Odpověď od Ernst
Joomla Expert
když výchozí hodnotu chci dát jako proměnnou, napíšu to takhle:
Code:
<textarea rows="5" cols="10" id="text" name="message[text]" >{$username}</textarea>

ještě mohu použít $user_id.
Ale nevím jak si naplnit proměnnou, ve které by byl výchozí text.

To $sername a $user_id jsou nějaké speciální proměnné?

07. říj 2015 22:23 #123843
Odpověď od Cony
Moderátor
To se musíte podívat do view, kde se tato šablona vyvolává...

07. říj 2015 22:57 #123845
Odpověď od Ernst
Joomla Expert
děkuji
podívám se na to, ale příliš jsem se tomu zatím nevěnoval, protože jsem řešil to, o čem jsme si psali před chvíli.

V podstatě výchozí hodnota má být ta poznámka z databáze, pokud pro tuto dvojici uživatelů již existuje záznam. V podstatě tedy editace poznámky v databázi

08. říj 2015 18:30 #123858
Odpověď od Ernst
Joomla Expert
Tak to studuji.
ve views je to voláno ze souboru default_interact.tpl
a v tom je:
Code:
<!-- poznamka button --> <li>{jhtml _='LoveFactory.Quickpoznamka' userId=$profile->user_id test="12345"}</li>

to test jsem si tam doplnil jen na zkoušku

Ta guickpoznamka.tpl je:
Code:
<div id="lovefactory-dialog" title="{jtext _='dialog_quickpoznamka_dialog_title'}"> <div class="lovefactory-dialog-quickpoznamka lovefactory-view"> <div class="lovefactory-dialog-content"> <form action="{jroute task='poznamka.send'}" method="post"> <table> <tr> <th><label>{jtext _='dialog_quickpoznamka_label_to'}</label></th> <td>{$username}</td> </tr> <tr> <th><label for="text">{jtext _='dialog_quickpoznamka_label_message'}</label></th> <td><textarea rows="7" cols="12" id="text" name="message[text]" >{$test}</textarea></td> </tr> </table> <input type="hidden" name="message[user_id]" value="{$userId}"> </form> </div> <div class="lovefactory-dialog-buttons"> <a href="#" class="dialog-button dialog-button-submit ui-state-hover"><i class="factory-icon icon-poznamka"></i>{jtext _='dialog_quickpoznamka_button_submit'}</a> <a href="#" class="dialog-button dialog-button-close"><i class="factory-icon icon-cross-button"></i>{jtext _='dialog_button_cancel'}</a> </div> </div> </div>

a já si myslel, že tam tu proměnnou test budu moci použít, ale tak to zjevně není

11. říj 2015 23:18 #123880
Odpověď od Cony
Moderátor
Jak jsem ji psal dříve, toto není standard Joomly. Komponenta používán pro šablony template systém Smarty.
Zkuste si projí dokumentaci k Smarty . Dokumentace přímo k šablonám Love facory je zde .

19. říj 2015 23:52 #124034
Odpověď od Ernst
Joomla Expert
tak jsem si to přečetl, vše našel a před
$smarty->display($layout . '.tpl');
jsem dal
$smarty->assign('prpoz', $parametr), který jsem si předtím požadovaně naplnil, dejme tomu '1234'

když mám v tpl
<td><textarea rows="7" cols="12" id="text" name="message[text]"> {$prpoz} </textarea></td>

tak se tam 1234 nepředvyplní.

pokud uvedu
$smarty->assign('prpoz','1234'), tak se tam to 1234 předvyplní

Nějak nechápu. poradíte?

20. říj 2015 00:47 #124037
Odpověď od Cony
Moderátor

ernst napsal: $smarty->assign('prpoz', $parametr), který jsem si předtím požadovaně naplnil, dejme tomu '1234'

No tady bude asi zakopanej pes. Jak přesně "požadovaně naplnil"?

20. říj 2015 09:09 #124039
Odpověď od Ernst
Joomla Expert
ano máte pravdu, ale momentálně to nechápu
Code:
$user = intval(JFactory::getUser()->id); $on= intval($this->profile->user_id); $db = JFactory::getDbo(); $query = $db->getQuery(true); $conditions = array($db->quoteName('id_ja') . ' = '.$user .' and '.$db->quoteName('id_on') . ' = '.$on); $query->select(array('id_ja','id_on','poznamka')) ->from($db->quoteName('#__lovefactory_poznamka')) ->where($conditions); $db->setQuery($query); $row = $db->loadRow(); $parametr=$row[2]; // $parametr='123456'; var_dump($parametr); $smarty->assign('prpoz', $parametr);

pokud tam nechám ten řádek $parametr='123456'; tak to funguje, pokud
$parametr=$row[2];, což je taky řetězec, tak ne

20. říj 2015 09:22 #124041
Odpověď od Ernst
Joomla Expert
jediný, co mně napadá je, že to pole poznámka je textarea

20. říj 2015 10:39 #124042
Odpověď od Ernst
Joomla Expert
zkusmo jsem si změnil v databázi to pole poznámka na char nebo varchar nebo text a výsledek je pořád stejný.
Jsem z toho nešťastný a nefunguje to.

Poradíte?

20. říj 2015 11:57 #124044
Odpověď od Cony
Moderátor
A var_dump ukaze co?

20. říj 2015 12:10 #124046
Odpověď od Ernst
Joomla Expert
ukáže správný string (buď ten z databáze nebo na místě přiřazený)
gettype také ukáže, že obojí je string
dal jsem raději i
$parametr = trim($row[2]);
nic nepomáhá, nerozumím tomu.
že by něco s dědičností? To ale nedává smysl

Powered by Fórum