Extension talk:Page Forms

Multiple-instance embedded template with header tabs
Hi, it seems that this combination may not be working. This is part of a form definition: = Channels =

It works fine without the 'multiple'. Than there is a 'Channels' tab in the form with the field 'Channels'. But with the 'multiple' the 'Channel' tab is empty and the multiple part with the 'Channel' field appears outside the tab-range.

Or am I doing something wrong? --AdSvS (talk) 09:12, 3 April 2012 (UTC)


 * Can you duplicate this problem on a public wiki, like scratchpad.referata.com? Yaron Koren (talk) 14:56, 3 April 2012 (UTC)


 * I have created a test on scratchpad.referata.com: http://scratchpad.referata.com/wiki/Test_Mieht. The result in the created/edited page seems to be ok. --AdSvS (talk) 11:33, 7 May 2012 (UTC)

Multiple Parameter Not Working
Hello, the SF 'multiple' parameter is not working on my installation. We use MW 1.17.

On an archive page I found the same topic with MW 1.16. - he said it would work with MW 1.17.... But not in my wiki :-(

I only see the Button "add another", but I can´t click it. What can I do? Cheers, Mediawikitester (talk) 11:50, 3 April 2012 (UTC)


 * I assume there's some unrelated Javascript error happening - please see the 5th item here. Yaron Koren (talk) 14:57, 3 April 2012 (UTC)

Hello World not working
Hello,

I try to run the following 'Hello World' to restrict properties to allowed values. I should see a field, that restricts the values to these values. In fact it shows a single-line textfield. Can anyone please help me?

Template:Testvorlage
Blub

Seite bearbeiten

Form:Testformular
Testattribut:

Property:Testattribut
Has type::Type:String.


 * Allows value:=Wert1
 * Allows value:=Wert2


 * Hi - Semantic Forms' template parsing (where it tries to associate between template fields and properties) is not perfect - in this case, it could be the extra space in the #set call that's messing it up. If that happens for any reason, you can always hardcode the relationship by adding "|property=..." to the "field" tag in the form definition. By the way, your property page is using very old syntax - that might be the cause too. I would suggest recreating the property using Special:CreateProperty. Yaron Koren (talk) 13:44, 10 April 2012 (UTC)


 * Thank You! I changed the Property:Testattribut to the latest style

Has type::String


 * :Wert1
 * :Wert2

Field definition in Form:Testformular ist changed to

And #set in Template:Testvorlage is changed to

This is not working.

Declaring the allowed values directly with the field like works fine. I asume this is not the recomended way, as you cannot reuse the value set.

Any hint?


 * That's very odd - the generated property page should have "Allows value::Wert1", etc. I can't duplicate that problem, but if you add in "Allows value" to the property page, it should work. Yaron Koren (talk) 15:40, 10 April 2012 (UTC)

"Values dependent on" explanation
Can someone add an explanation of the new "values dependent on" feature (add in v2.4)?

Does this feature allow us to specify a SMW query based on the value selected in another field? How is the dependency defined?


 * It's already explained in the documentation, but the explanation could probably be a little more verbose. No, you can't specify a query - the querying is done automatically. The classic use case for it is that, if the user selects a certain value for a "Country" field, the "City" field will then only autocomplete on values that already exist on the wiki on pages with that value for "Country". If that makes sense. Yaron Koren (talk) 15:10, 12 April 2012 (UTC)


 * Do sub properties work in this context in some smart way? I have a situation with Organizations and Contacts on pages and Customers with Contacts on other pages. On the pages with customers (which are organizations, so Customer could probably be a subproperty of Organization) and contacts I would like to select a customer and then get an autocomplete of all contacts with that organization. Could the 'values dependent on' feature support that in any way? --AdSvS (talk) 07:22, 9 May 2012 (UTC)


 * I'm not sure if I understand the details (is a contact a person?), but you could always try it... Yaron Koren (talk) 12:58, 9 May 2012 (UTC)

BUG: question marks instead of Cyrillic in Uploading filename
Note: Bug 33233 was filed to address this problem too.

use form Images_test for upload file.

аватар.gif uploaded in wiki succeeded, but filename in form contain question marks instead of Cyrillic Test_cyrrilic_by_images_test--Pastakhov (talk) 07:50, 13 April 2012 (UTC)


 * Yes, I know... it's there in the "Known bugs" section. I wish it were fixed already - I spent a while looking into it, but I couldn't figure out a solution. Yaron Koren (talk) 16:12, 13 April 2012 (UTC)


 * Resolved: Remove line 386 ($basename = utf8_decode( $basename );) in file SF_UploadWindow.php. It helped me --Pastakhov (talk) 05:37, 16 April 2012 (UTC)


 * Cool - I'll look into that. I seem to recall having tried that, and that it doesn't work in all cases (i.e., that utf8_decode is sometimes needed), but it's worth examining again. Yaron Koren (talk) 16:24, 17 April 2012 (UTC)

Template in editor without breaks
How can I create a form with a template, which will show the template in editor without breaks.

Example:

My form generate this text in editor:

I want to have:

It is possible?

Greets


 * I don't think so - why do you want that? Yaron Koren (talk) 16:25, 17 April 2012 (UTC)

" and the Template is not working. Also it would be more clearly and the Text in editor would be shorter. --80.149.179.2 09:50, 24 April 2012 (UTC)
 * I need that, because we use a visual Editor. With that breaks, the editor writes automatically "


 * Is there really no chance?


 * I think you can do it manually, by removing the \n from line 1250 of SF_FormPrinter.php. Then again, if you use a form to also *edit* each page, none of this should be an issue... In any case, the WYSIWYG editor you're using clearly has a major bug. Yaron Koren (talk) 17:49, 24 April 2012 (UTC)

no breaks between the templates

 * It works!! THANK YOU!
 * Is there also a gimmick that I have no breaks between the templates?
 * Example:
 * I want to have:
 * --80.149.179.2 11:48, 15 May 2012 (UTC)
 * I want to have:
 * --80.149.179.2 11:48, 15 May 2012 (UTC)
 * --80.149.179.2 11:48, 15 May 2012 (UTC)
 * --80.149.179.2 11:48, 15 May 2012 (UTC)


 * I think, I have to delete also a "/n" in SF_FormPrinter.php.


 * But in which line? Please help me somebody! --80.149.179.2 08:12, 24 May 2012 (UTC)


 * Okay, I just looked it up - try removing it in lines 287, 300 and 1403. Yaron Koren (talk) 13:16, 24 May 2012 (UTC)

Problem with input type = googlemaps
Hello,

I just installed SemanticForms, Maps and SemanticMaps. Unfortunetaly people of the SemanticMaps Forum couldn't help. The Problem is, that the map cannot be load in a semantic form via input type=googlemaps. This is the same case with yahoomaps and openlayers. There is only the sentence "Loading map form input" visible in the form and no further step is done. Also the browser isn't loading anymore. Firebug extension throws an error that the variable "lat" and "lon" is not defined, but I didn't find the code, where this is declared. My installation: MediaWiki 1.17.0_0 SMW 1.6.1_3 SF 2.2.1_1 Maps/SemanticMaps 1.0.3

I hope somebody can help.

Best regards...


 * You're apparently using versions of the code from the SMW+ package - so I think only the people from Ontoprise can help you. Yaron Koren (talk) 17:16, 19 April 2012 (UTC)

Unfortunately, they cannot help. Could you think of some reason why the map is not loading? Could this have something to do with the Resource Loader? Could jQuery be the problem? I haven't found this error anywhere else.

Cheers


 * You can check for a Javascript error - see the fifth item here. Yaron Koren (talk) 17:45, 24 April 2012 (UTC)


 * Was anybody able to solve this? - I also have SMw+

Fatal error: Cannot redeclare class SFUploadWindow in /{path to wiki}/extensions/SemanticForms/specials/SF_UploadWindow.php on line 1102
Hi,

After upgrading from MW 1.17.1 to MW 1.18.2, I can no longer access the Special pages. Instead I get this error message: Fatal error: Cannot redeclare class SFUploadWindow in /{path to wiki}/extensions/SemanticForms/specials/SF_UploadWindow.php on line 1102


 * Installed software
 * Product 	Version
 * MediaWiki 	1.18.2
 * PHP 	5.2.17 (cgi-fcgi)
 * MySQL 	5.1.39-log


 * Semantic Forms (Version 2.4.2)

I also experienced a very similar issue on a different wiki several months ago:

Fatal error: Cannot redeclare class SFUploadWindow2 in (path to MediaWiki)/extensions/SemanticForms/specials/SF_UploadWindow2.php on line 1101

Fatal error: Cannot redeclare class SFUploadWindow2 in (path to file) SF_UploadWindow2.php on line 1117

Have any clues emerged since that time which might explain what's going on with this type of error?

Kind regards,
 * -Davydog (talk) 17:46, 20 April 2012 (UTC)


 * Hi - it's too bad that this is still a problem. Have you tried un-installing all the extensions except for SMW and SF? Yaron Koren (talk) 03:07, 22 April 2012 (UTC)


 * Hi Yaron. I've tried just about every combination of extension installation / uninstallation that is practical that I could think of. PortlandWiki has grown to rely on a number of the installed extensions, so I couldn't uninstall them all. Ultimately one of the other admins and I decided to uninstall the semantic extensions.


 * Sounds reasonable. Yaron Koren (talk) 17:43, 24 April 2012 (UTC)

"Autocomplete on" or "values from"
I have a weird behavior in my installation. On old versions of Semantic Forms, the field attributo to autocomplete over categories, properties, etc. was "autocomplete on ...". But the new manual says: "values from ...".

I'm using version 2.4.2 ... but I need to use autocomplete on !!! values from desn't work (for me...).

Can I solve this?

Thanks. Fernando Carpani (talk) 18:30, 20 April 2012 (UTC)


 * Yes, the syntax changed - the correct approach is to have "|input type=text with autocomplete|values from...". (Or "textarea with autocomplete".) If that doesn't work, let me know. Yaron Koren (talk) 20:34, 20 April 2012 (UTC)

text around the generated form text
Hi,

is there a possibility, to a default text, around the generated Template text?

Example:

My form should generate:


 * No, there's no way to do that. Yaron Koren (talk) 17:43, 24 April 2012 (UTC)

if use record properties,the Semantic Forms change very slow!
who can help me?--221.129.245.100 09:48, 27 April 2012 (UTC)
 * Hi - I don't really understand the question, but I wouldn't recommend using the Record type - I think #subobject or the Semantic Internal Objects extension are the better options. Yaron Koren (talk) 14:29, 27 April 2012 (UTC)

Namespaces - form autocompletion and template links
I am using a few namespaces (for various reasons - and I know there are arguments against) and want have page links across namespaces with minimal display of the namespace name.

An example. Two classes: Building, Room (form, template and namespace with these names, category with the plural version).

To get this to work I had to do the following: The property Located in building is a Page type.

The Room form (forminput) field to edit the building name: ! Building: OR |

The Room template: ! Building
 * Located in building::Building:

Notes:
 * Template: to avoid red-links the template needs to insert the namespace destination of field value for the link to work. This seems to mess up some of the semantic property detection.
 * Form: autocompletion doesn't work without the 'input type' or 'property' defined. Presumbly the template changes prevent auto property detection.

Q: Is there a better way?

Thanks. Bejay (talk)


 * That looks fine to me... I assume everything works? The second option, using the "property=" parameter, is the way to go - SF's property detection will never be perfect, so that's the ideal way to get around any problems. Yaron Koren (talk) 13:26, 1 May 2012 (UTC)

Pointing red links to a form only works if those links are of property type Page
Quoting from the page: http://www.mediawiki.org/wiki/Extension:Semantic_Forms/Linking_to_forms#Pointing_red_links_to_a_form :

"The standard way to point red links defined by a property to a certain form is to simply add the special property 'Has default form' (see 'The "edit with form" tab') to the page for that property." I've found this is doesn't work when the property-type is String, but it does when the property-type is Page.

I have a template with properties of type String and Page. Some of the values for the Page-type properties are the names of non-existent pages; when clicked, the new page creation form is shown, as desired. However, some of my String-type properties are also linked: that is, they have double square brackets around them. I have set  in my LocalSettings.php, so that they are treated properly as links.

In the query results, if those values aren't the name of an existing page, they show up as red links as expected; but though I've added the "default form" property to that property's page, when they are clicked they still go to the default non-form "Create new page" page.

I don't know if this is a bug or not, but I thought I'd report here in case anyone else has this problem; a bit of clarification in the docs might also be helpful. Pjrich (talk) 20:51, 1 May 2012 (UTC)


 * No, it's not a bug - maybe the documentation should be somewhat clearer. Yaron Koren (talk) 12:37, 2 May 2012 (UTC)

Multiple field display
I am having trouble with multiple instance templates, i have created a "gallery" template and form that let users upload several images to be inserted into a gallery via the template. My question is, how do i map each instance to a value to add to my template?

The form has a field called "ImageG" set to multiple. Now in my template, i would usually display the image by using but how do i pull out the other files users add? Is there a way to append a number or something to the end of the field name each time an instance is created so my template would display...







or something like that. I looked at SIO extensions, is that what i should use? I'm a bit confused on how to implement it.

Thanks!


 * There's definitely some confusion here - is this a template that appears on the page multiple times, or a field that holds multiple values? And are you trying to store these file names semantically? Yaron Koren (talk) 12:42, 2 May 2012 (UTC)


 * I don't need to store anything semantically, it's a template that appears multiple times and not a field that holds multiple values. The goal is to upload an image and if the user wants they can click "add another" and upload another image and so on to add to a gallery at the bottom of a page.  I just don't know how to pass the filename from the field into the template the form is used to fill out because there are multiple instances.


 * Well, if the goal is to display images somewhere other than in the template they're contained in, you'll have to store their names semantically. The best way to do that is with either the Semantic Internal objects extension or the #subobject parser function. Yaron Koren (talk) 20:59, 2 May 2012 (UTC)


 * Sounds good, what if i don't want to display them anywhere other than the template they're contained in? I really don't need to use semantic properties and just want to make it simple.


 * I don't understand the question, then. Yaron Koren (talk) 02:25, 3 May 2012 (UTC)


 * Sorry about my poor understanding, hopefully it will be easier to just show you. I have a form that creates this page.  At the very bottom of the form is a multiple instance template that uploads images.  They display at the bottom of the page stacked on each other vertically.  I would like to display these images in a gallery instead of just one after the other but don't know how or where i should add the code.  If you want to play with it you can use..

username: User

password: password

Thanks for the help! SMW is awesome by the way, i just started playing with queries and im blown away by the ability to pull info from the wiki and display it in a meaningful way.


 * Hi - I'm pretty sure, in that case, that you need to store the images semantically, and then query them. Yaron Koren (talk) 13:11, 6 May 2012 (UTC)

Free Text dependent on other field
I want to preload a free text with the standard input field, but this will be dependent on a field of the template. This means in some cases the free text should be empty and in other cases there should be content of an template (with the preload parameter). The show on select can not be used for that function, but how can i realize it?

Thanks in advance!


 * There's no way to do that, unfortunately. Yaron Koren (talk) 12:43, 2 May 2012 (UTC)

Modify page automatically and open it
Hi,

Would it be possible to modify a page automatically and open it in the same link? Now there is a parameter 'reload' that works on the page you're on. Perhaps the option to open the modified page could be added?

--AdSvS (talk) 11:40, 7 May 2012 (UTC)


 * I'm not aware of any way to do those two things at one time. Yaron Koren (talk) 13:23, 7 May 2012 (UTC)

Values from allowed values?
Is there a way to restrict the selectable values to the set of values of Allows value for the "associated" (or a specified) property? Because that would be pimp.
 * 76.107.76.96 02:15, 11 May 2012 (UTC)


 * You can always just add "|property=some property" to the "field" tag. Pimp, right? Yaron Koren (talk) 12:05, 11 May 2012 (UTC)
 * ROFL. I wish the Lord would take me now.
 * 76.107.76.96 02:18, 12 May 2012 (UTC)

Displaying information based on preloaded data
Hi,

I hope you can help my with the following problem:

I preloaded data to a form via a query string like the following:

Now I tried to display the result of a query on the form page like this:

This did not work. But is there any possibility to access the query parameters for a semantic search?


 * You'll probably have to use the UrlGetParameters extension. Yaron Koren (talk) 18:52, 22 May 2012 (UTC)


 * Thank you very much. I'll try that.

Page Display Title Changed after edit using a form ??
Hi

I have set up a form to define a variety of semantic properties in a page and everything seems to be working fine except that after saving the page using the semantic form the display title on the page changes and I need to do a normal edit-save to change it back.

For example:
 * For a page called: Test Page
 * Open going to: http://localhost/wiki/index.php/Special:FormEdit/FormName/Test_Page
 * And then save the page this then displays the updated page but the page title is now displayed as: Special:FormEdit/FormName/Test Page
 * If I do a normal edit-save the page tile returns to being displayed as Test Page

Can anyone shed any light on this, is it a semantic form related issues or a more general mediawiki issue. Has anyone else experienced this, is there a work around?

Thank you for any suggestions you can offer. Jpadfield (talk) 16:21, 23 May 2012 (UTC)


 * What happens if, instead of resaving, you just refresh the page, by going to "action=purge"? Yaron Koren (talk) 16:36, 23 May 2012 (UTC)
 * Ok I have given it a go and yes "action=purge" also corrects the title. I have explored a bit more and the problem seems to be related to a non standard extension which is included in the form. So perhaps it is due to the parsing processes used in the extention. I will need to explore some more. Thanks. Jpadfield (talk) 20:07, 23 May 2012 (UTC)
 * [SOLVED] The problem was due to an incorrect usage of the parser within $wgOut in an extension. The problem was solved by using:

$localParser = new Parser; $output = $localParser->parse(  $output, $parser->mTitle, $parser->mOptions);
 * rather than:

$output = $wgOut->parse($output);
 * Jpadfield (talk) 11:44, 24 May 2012 (UTC)

#arraymap
I am attempting to use arraymap. I call it as such on my template:

and get output of:

(Yield icon) with mouseover = The given value was not understood.

Is there something I am missing?

Scott MediaWiki 1.18.0, PHP 5.3.8 (cgi-fcgi), MySQL 5.5.19, Semantic Forms (Version 2.4), Semantic MediaWiki (Version 1.7.0.1)


 * What's the value that's being passed in for "Tier 1"? Yaron Koren (talk) 23:59, 31 May 2012 (UTC)


 * Thx, Tier 1 property is a Text input type. It was loaded with dummy data of "1,2,3" originally loaded when it was simple text field loaded with

! Free Text:


 * You should probably change the "Tier 1" property to be of type "String", instead of "Text". Beyond that, I don't know - I didn't fully understand your explanation. Yaron Koren (talk) 20:49, 1 June 2012 (UTC)

Show on Select - Slow on Select
In my mw 1.18 and mw 1.19 experimental upgrades, forms with show on select visually look like a throttle was added to the Show On Select items (on or before 2.4.2), causing it to render changes slower than it used to (SF 2.1.2). Is there a global to turn this off? If not can one get added?

Thanks. --Salquint (talk) 02:01, 9 June 2012 (UTC)


 * "Slow on select" - clever. My guess is that this is related to the use of the ResourceLoader, and the "flash of unstyled content" that comes when the page first loads, which makes it look like the page is taking longer to load - see here. Is that possible? Yaron Koren (talk) 18:02, 10 June 2012 (UTC)

Form fields outside of forms for navigation - jump menu
Is it possible to use a combobox with autocomplete and restricted to category values to create a jump menu? By a jump menu, I mean a device that will take you to the page within the category that matches the value being entered. I'd like to use this on a Main Page as an alternative method of navigation. please forgive me if I'm missing the obvious. Thank you for any help.

--Joel m michael (talk) 18:16, 9 June 2012 (UTC)


 * That's well out of the scope of Semantic Forms. I would just put in the necessary HTML and Javascript using the Widgets extension. Yaron Koren (talk) 18:03, 10 June 2012 (UTC)


 * Ah, okay. Thank you. --Joel m michael (talk) 04:46, 11 June 2012 (UTC)

Complex Query with Conditional Statements
I'm trying to create a pretty complex query using a query form for a safety system I'm building. My data structure is essentially:

Page of Category=Hazard, has properties:
 * Hazard type = Note OR Caution OR Warning (three levels of hazard; cannot be null)
 * Location (hazard is present when in a particular location; can be null)
 * Hardware (hazard is involved with handling particular hardware; can be null)
 * Interface (hazard is involved with actuating a particular interface; can be null)
 * Hazard description (explanation of the hazard)

''Note: Hardware and Interface are similar. An example of a hardware-related hazard may be the possibility of electrical shock when removing a radio from its housing. An example of an interface-related hazard may be the possibility of electrical shock when disconnecting a particular type of connector; that connector may be on the radio, but it also may be present elsewhere.''

I've attempted to create a query form that allows me to select multiple locations, hardware, and interfaces using three comboboxes, and find all Notes, Cautions or Warnings. I believe the query I'm looking to build should look like this:

I've had trouble building such a query, so I simplified to looking for just Location for now. To accomplish this functionality I build my query with the following:

Which should expand to the following for multiple-location queries:

And expand to the following for single-location queries:

The problem is if I query for "Location A" I'll get 5 results, "Location B" I'll get 2 results, and "Location C" I'll get 4 results….but If I query for Location A, B and C together? I get 15 results (not the 11 expected)! Upon further investigation this is because when I query for multiple locations it stops returning only Hazard type::Note. It will also return Cautions and Warnings.

So what am I doing wrong?

Thanks

Jamesmontalvo3 (talk) 19:19, 16 June 2012 (UTC)


 * I don't know, but this sounds like a Semantic MediaWiki, as opposed to a Semantic Forms, question. The SMW mailing list might be the best place to ask it. Yaron Koren (talk) 13:10, 18 June 2012 (UTC)


 * The operator OR is used for taking the union of two queries. So your query is split into 3 querys:

Is asked in three Steps: Hazard type::Note Location::Worksite A Location::Worksite B Location::Worksite C

You have to use Subquerys or the || Operator like: Hazard type::Note |Worksite B||Worksite C This Page might be helpfull for you: Selecting Pages --TomyLee (talk) 07:12, 20 June 2012 (UTC)

Autoedit stopped working in MW 1.19.x
Hi, might autoedit have stopped working in MW 1.19.x?

However, this can be overcome by commenting an exception thrown in MW :

/**        * Called by serialize. Throw an exception when DB connection is serialized. * This causes problems on some database engines because the connection is        * not restored on unserialize. */       public function __sleep { // throw new MWException( 'Database serialization may cause problems, since the connection is not restored on wakeup.' ); }

Can anyone else confirm? --Toniher (talk) 09:15, 19 June 2012 (UTC)

#formlink doesn't work after upgrade
I'm using Semantic Forms and everything works fine. But if i upgrade my MediaWiki installation and the Semantic Forms Extension the Buttons created by formlink doesn't work.

Here are some Data of my installations:

Before updating:
 * MediaWiki 1.15.1
 * Semantic Bundle (Version 2011-03-29.20110329)
 * Semantic Forms (Version 2.2.1)

After upgrading;
 * MediaWiki 1.19.0
 * Semantic Bundle (Version 20120327)
 * Semantic Forms (Version 2.4.2)

Some example of formlink i'm using:

If I insert the dynamic created link from the button into the Browser Adresslist i can create a new Page with SF (like ...index.php?title=Spezial:FormEdit/News&News[Art]=News)

Second i recognise that if i save the new form i get an errormessage at the end of the page "Das Datum „now“ wurde nicht verstanden." I'm using a field with the actual date: The parameter default=now is saved as Datum=now instead of the actual date.

I have made a copy of my Installation into a different Directory so i have both installation parallel. I'm using Internet Explorer 9

Any Ideas what might be the Problem?

--TomyLee (talk) 06:45, 20 June 2012 (UTC)

Error: Backtrace limit exceeded during parsing
Hi Yaron, I'm getting the following error when loading a template into a fairly large form. It's easy to fix, so this is just a heads-up really incase you haven't encountered it in the wild and a bit of googlefodder to help anyone else who comes across it.

''Semantic Forms error: backtrace limit exceeded during parsing! Please increase the value of pcre.backtrack-limit in the PHP settings.Semantic Forms error: backtrace limit exceeded during parsing! Please increase the value of pcre.backtrack-limit in the PHP settings.''

Changing the PHP ini wasn't an option for my target server but you can either set the value in .htaccess, or you can put this line in your LocalSettings.php

ini_set('pcre.backtrack_limit',10000000); //10million

From what I've seen it seems PHP 5.3 set this to an overly restrictive value, so I set mine to 10 million and that's seems to have solved the problem.

Thanks, Andru