First of all I'd like to thank the developers for such a great product that I've only found about a week ago for this project I'm having now. I'd also like to thank all this people here that help and leave very useful comments for everyone to learn.
I'm not native English speaker so please forgive my mistakes.
Now on to business.
I work for a small Portuguese agricultural association. We're non profit and non wealthy and non everything related to money as we're having much work just to survive and pay minimum wage to everyone. Having said that we try to be as professional as possible and we've (and many other associations that declined) been challenged by the Portuguese Government to build a network of information for young farmers and people in general that would like know more about how to start or improve they're agricultural business so that it may help our country recover from economic problem we're in. This network should be accessible to everyone and we though of a website with a social network like platform where all information about how to start or improve the agricultural business would be accessible to everyone. Information such as where to take courses, know more from other business that did well, have a directory of entities (public and private) that provide professional services specific to they're business, accounting and fiscal information by area, etc.
The first thing we need to do is a kind of survey to all our known agricultural associations throughout the Country so that they fill up a form with all the information to start building the site database. We've made all the contacts with them and they agreed on a set of questions that will be there.
Having said that I'm at a very early stage in the development (I'm not the greatest programmer, usually I'm more of a web designer) since I only started this week but I need to show something next Tuesday and I've spent most of this time searching for ways to do this. From what I saw and read I realized that ChronoForms is the tool. :-)
I ask for your help on pointing me in the right direction to solve some very difficult things for me as a beginner. ANY help is appreciated since I'm on very tight schedule and we already paid for the host and name (its 60 euros for the next 2 years and its already 1 month unused) and want to put this form online next week.
1) Could I make a group of check-boxes from a set of records on a specific table?
1a) if this is possible when selecting them how is the information saved on the form table?
2) Could I make a set of radio buttons make appear and disappear parts of the form?
3) Is it possible to add information like other offices besides headquarters linked to the entry of the "headquarters"?
3a) could this be saved in another table since most associations have 3-10 different locations where they have a "office" to help the farmers?! (they have several places since most our farmers are old people and poor and so they have a desk where they help once/twice a week with a laptop on every small village)
3b) could this be added a record per "office" and be related to the main "headquarters"?
3c) how could I list this after maintaining data integrity, I mean, the records from all offices from a headquarters be related to them?!
4) I've read a few things but still cannot understand the way the ACL works here, specifically for the following situations:
4a) How to prevent public from access the forms and edit data? I only want the user that created that data to access it plus a "regional coordinator". This last person will have special powers and be able to access and change information for all the entries that are under his control, in this case is the information about a district.
4b) How to be able to users edit the data with the form, what is mean is, how to access the data directly in the form by populating the form fields with a row of data?
4c) how can I make the public be able to read the data in the form of list just like it appears in the background.
I'll keep doing trial and error and reading everything I find. I'll be very active since this site will be a handful for me.
Thanks in advanced,
MB
I think that all of this can be done using ChronoForms (possibly with ChronoConnectivity too).
BUT it is a long list and some parts are quite complicated. I suggest that you do this in simple steps until you get more familiar with ChronoForms. It is much easier to understand and debug a form with a few inputs than one with 40 or 50. Get the form working then add more inputs!
1) Could I make a group of check-boxes from a set of records on a specific table?
Please see this FAQ
1a) if this is possible when selecting them how is the information saved on the form table?
That depends on what you need to save and what values/options you are adding to your checkboxes. It is possible to save the data but you need to plan what to save.
2) Could I make a set of radio buttons make appear and disappear parts of the form?
It is possible with JavaScript but takes some knowledge to get it to work correctly.
3) Is it possible to add information like other offices besides headquarters linked to the entry of the "headquarters"?
Yes, if I understand the question correctly. Again it is a question about planning the data structure.
3a) could this be saved in another table since most associations have 3-10 different locations where they have a "office" to help the farmers?! (they have several places since most our farmers are old people and poor and so they have a desk where they help once/twice a week with a laptop on every small village)
Yes, you can save data in another table and link it back. You may need some MySQL experience to get this to work.
3b) could this be added a record per "office" and be related to the main "headquarters"?
Yes, if I understand the question correctly.
3c) how could I list this after maintaining data integrity, I mean, the records from all offices from a headquarters be related to them?!
Sorry, I don't understand this question :-(
4) I've read a few things but still cannot understand the way the ACL works here, specifically for the following situations:
4a) How to prevent public from access the forms and edit data? I only want the user that created that data to access it plus a "regional coordinator". This last person will have special powers and be able to access and change information for all the entries that are under his control, in this case is the information about a district.
Have users register on the site and restrict access to the owner plus an admin group. You may need to read more about the Joomla! ACL.
4b) How to be able to users edit the data with the form, what is mean is, how to access the data directly in the form by populating the form fields with a row of data?
You can use the Owner's Joomla! ID to identify their record.
Bob
4c) how can I make the public be able to read the data in the form of list just like it appears in the background
.I'm already making the form.
I'm using J! 3.1.5 and for the moment default template.
Hosting is: Apache 2; PHP 5.3.27-1~dotdeb.0; MySQL 5.5.32-0.
One question how:
It seems to me a good idea to build a tabbed form since it will be long.How do I make a button in one tab to go a a specific other tab, instead of being "next tab" i want to make a go to a specific diferent tab.
Thanks again,
MB
Any possibility of doing that: the button to go to tab?
I'm talking about Chronoforms native tabs.
Thanks again,
MB
See current form here: http://formulario.redap.pt/ (Its in Portuguese, sorry)
Ok so here's what I got so far:
1) Show & hide divs according to selection radio box (see it working on tab 2):
HTML
<div class="ccms_form_element cfdiv_radio radios_over multiline_start multiline_add" id="guarda_bool_container_div">
<label for="guarda_bool">Guarda</label>
<input name="guarda" type="hidden" alt="ghost" value="">
<div style="clear: none; float: left;"><div>
<input name="guarda" title="" id="guarda_0" type="radio" checked="checked" value="0">
<label for="guarda_0">Não</label>
</div>
<div>
<input name="guarda" title="" id="guarda_1" type="radio" value="1">
<label for="guarda_1">Sim (em todo o distrito)</label>
</div>
<div>
<input name="guarda" title="" id="guarda_2" type="radio" value="2">
<label for="guarda_2">Sim (apenas em alguns concelhos)</label>
</div>
</div>
<div class="clear"></div>
<div id="error-message-guarda"></div>
</div>
<div class="ccms_form_element cfdiv_checkboxgroup label_over radios_over multiline_add" id="concelhos_guarda_container_div" style="display: none;">
<label style="display: none;" for="concelhos_guarda">CONCELHOS DA GUARDA</label>
<input name="concelhos_guarda" type="hidden" alt="ghost" value="">
<div style="clear: none; float: left;">
<div>
<input name="concelhos_guarda[]" title="" id="concelhos_guarda_0" type="checkbox" value="Aguiar_Da_Beira">
<label for="concelhos_guarda_0">Aguiar Da Beira</label>
</div>
<div>
<input name="concelhos_guarda[]" title="" id="concelhos_guarda_1" type="checkbox" value="Almeida">
<label for="concelhos_guarda_1">Almeida</label>
</div>
...
<div title="" class="tooltipimg" rel="Escolha todos os que representem a área geográfica de intervenção da Organização.">
<a onclick="return false;" href="#">?</a>
</div>
<div class="clear"></div>
<div id="error-message-concelhos_guarda"></div>
</div>
<div class="clear"></div>
JAVASCRIPT
window.addEvent('domready', function() {
var select, divGuarda;
select = $('guarda_bool_container_div');
switchGuarda();
select.addEvent('click', switchGuarda);
function switchGuarda() {
divGuarda = document.id('concelhos_guarda_container_div');
var checked = $$('input[name=guarda]:checked');
if ( checked.length > 0 && checked[0].value == 2 ) {
divGuarda.show();
} else {
divGuarda.hide();
}
}
});
2) I also am reading how to hide/show a set of divs according to drop down selection. Will post solution when I have one.
3) I'd really like to make a link on the bottom of each tab to go to next tab, instead of something weird like before. My tabs are called tab1 tab2 tab3 and so on. :-) I really cant find this anywhere.
Thanks again,
MB
My form is getting very long and now I cannot save from the wizzard, it just goes to the joomla administration control panel.😲
Please see this FAQ
If you are building a very long tabbed form it might be better to have a multi-page form instead. Then you can save the data after each page and add a 'Next' button to load the next page.
Bob
Thanks for your help.
I've done this (multi pages) and added many (more than 100 fields) again. Now I'm starting to get no saves and return to main admin page again.
What can I do? How can I configure the server to allow this extra fields? because even offline in test environment I get this and I've added those 3 lines of the suhosin with 2000 to the php.ini.
I'm desperate.
Thanks again,
MB
One question: can i add the cf_id to the filename on the files uploaded?
Another question: Is there any special thing to do with multi pages and file uploads on some of them?
Thanks again,
MB
The save problem is most likely max_input_vars - just keep increasing it (and the suhosin values if suhosin is installed).
You can build a dynamic file name if you use my Upload File [GH] action.
Think carefully about multi page forms with file uploads. They can cause problems if users start going back and forth between pages. It may be better to put them at the end.
Bob
I'm not getting anything from the file input even though I've gone next next next, still empty.
[logotipo] => is a field for images.
Any ideias?
Here's the output:
HTML:
<div class="ccms_form_element cfdiv_file" id="logotipo1_container_div" style="">
<label>Logótipo</label>
<input type="hidden" name="logotipo" value="" alt="ghost" />
<input class="" title="" type="file" name="logotipo" />
<div class="small-message">Anexar logótipo ou imagem relevante.</div>
<div class="clear"></div>
<div id="error-message-logotipo"></div>
</div>
ACTIONS:

UPLOAD Config:

Output debug:
Data Array:
Array
(
[chronoform] => Formulario
[event] => submit
[cf_sid] => 54c17db8be7811244ec2b60041849e7e
[submit] => Submeter
[e0b1b1ded3915d533473b03e0df36779] => 1
[_FORM_FILES_] => Array
(
)
[sectores] =>
[ir_pag05] => Próxima Página
[045917f0aab2e0063a7bd5c7c5687374] => 1
[ir_pag06] => Próxima Página
[nome] => sdcsdc
[logotipo] =>
[morada] => csdcsd
[codigo_postal] => sdcsdc
[localidade] => sdcsdc
[telefone] => dcscsdc
[fax] =>
[capmail] => sdcsd@cmail.com
[email] =>
[webpage_bool] => 0
[webpage] =>
[manha_abertura] => 1
[manha_fecho] => 2
[tarde_abertura] => 3
[tarde_fecho] => 4
[data_constituicao] => 02/10/2013
[data_filiacao_cap] =>
[nif] => 123456789
[nome_presidente] =>
[contacto_presidente] =>
[assembleia_geral] =>
[direccao] =>
[conselho_fiscal] =>
[gs_bool] => 0
[num_agricultores_associados] =>
[num_org_associadas] =>
[lista_filiadas] =>
[num_agr_representados] =>
[historia_organizacao] =>
[ir_pag02] => Próxima Página
[delegacoes] => 0
[deleg1] =>
[deleg1_morada] =>
[deleg1_cod_postal] =>
[delega1_localidade] =>
[deleg1_telefone] =>
[deleg1_capmail] =>
[deleg2_add] =>
[deleg2] =>
[deleg2_morada] =>
[deleg2_cod_postal] =>
[deleg2_localidade] =>
[deleg2_telefone] =>
[deleg2_capmail] =>
[deleg3_add] =>
[deleg3] =>
[deleg3_morada] =>
[deleg3_cod_postal] =>
[deleg3_localidade] =>
[deleg3_telefone] =>
[deleg3_capmail] =>
[deleg4_add] =>
[deleg4] =>
[deleg4_morada] =>
[deleg4_cod_postal] =>
[deleg4_localidade] =>
[deleg4_telefone] =>
[deleg4_capmail] =>
[deleg5_add] =>
[deleg5] =>
[deleg5_morada] =>
[deleg5_cod_postal] =>
[deleg5_localidade] =>
[deleg5_telefone] =>
[deleg5_capmail] =>
[deleg6_add] =>
[deleg6] =>
[deleg6_morada] =>
[deleg6_cod_postal] =>
[deleg6_localidade] =>
[deleg6_telefone] =>
[deleg6_capmail] =>
[deleg7_add] =>
[deleg7] =>
[deleg7_morada] =>
[deleg7_cod_postal] =>
[deleg7_localidade] =>
[deleg7_telefone] =>
[deleg7_capmail] =>
[deleg8_add] =>
[deleg8] =>
[deleg8_morada] =>
[deleg8_cod_postal] =>
[deleg8_localidade] =>
[deleg8_telefone] =>
[deleg8_capmail] =>
[deleg9_add] =>
[deleg9] =>
[deleg9_morada] =>
[deleg9_cod_postal] =>
[deleg9_localidade] =>
[deleg9_telefone] =>
[deleg9_capmail] =>
[deleg10_add] =>
[deleg10] =>
[deleg10_morada] =>
[deleg10_cod_postal] =>
[deleg10_localidade] =>
[deleg10_telefone] =>
[deleg10_capmail] =>
[ir_pag03] => Próxima Página
[intervencao_nacional] => 0
[aveiro] => 0
[concelhos_aveiro] =>
[beja] => 0
[concelhos_beja] =>
[braga] => 0
[concelhos_braga] =>
[braganca] => 0
[concelhos_braganca] =>
[castelo_branco] => 0
[concelhos_castelo_branco] =>
[coimbra] => 0
[concelhos_coimbra] =>
[evora] => 0
[concelhos_evora] =>
[faro] => 0
[concelhos_faro] =>
[guarda] => 0
[concelhos_guarda] =>
[leiria] => 0
[concelhos_leiria] =>
[lisboa] => 0
[concelhos_lisboa] =>
[portalegre] => 0
[concelhos_portalegre] =>
[porto] => 0
[concelhos_porto] =>
[santarem] => 0
[concelhos_santarem] =>
[setubal] => 0
[concelhos_setubal] =>
[viana_castelo] => 0
[concelhos_viana_castelo] =>
[vila_real] => 0
[concelhos_vila_real] =>
[viseu] => 0
[concelhos_viseu] =>
[madeira] => 0
[concelhos_madeira] =>
[acores] => 0
[concelhos_acores] =>
[drap] => alentejo
[ir_pag04] => Próxima Página
[_PLUGINS_] => Array
(
[upload_files] => Array
(
)
)
)
Validation Errors:
Array
(
)
Debug Data1.
Upload files
1. File post array: Array ( [error] => 99999 )
2. The file field type is not present in the posted data
Thanks,
MB
I've tried many links but none seem to work:
index.php?option=com_chronoforms&chronoform=Formulario&task=edit&id=1
index.php?option=com_chronoforms&chronoform=Formulario&task=edit&cd_id=1
Thanks,
MB
Thanks,
MB
