We have a Redmine installation with a custom field "Affected version" of type "version", where we display which version is affected by an issue (target version is the version where an issue is fixed). So the field displays the versions available to Redmine for a certain project.
However, for some projects, there can be quite a lot of versions. One in particular has over 400 possible versions to choose from.
Now, when the "Affected version" is displayed (i.e. when the issue is updated or created), the "Affected version" field is populated by all the versions available. The field itself it a 4 rows high HTML multi-select field.
As you can imagine, selecting 2 or 3 affected versions from 400 in a 4 row high HTML multi-select can be difficult.
Is there a way for us to alter how this field is displayed? We're not looking into altering the Redmine code, as this makes updates harder and more error prone. What we are looking for is maybe a plugin that allows HTML templates for custom fields, or any other functionality that would at least allow to change this defaulting to a 4 row selection list.
Edit 1: I've thought about setting old versions to "Closed" or "Locked", as they shouldn't be displayed in version lists anymore. However, in custom fields of type version, they are still listed, even when locked/closed.
Related
The way that Page Editor handles versions has been causing issues for in one of our Sitecore solutions for a client. I've posted about them here:
Sitecore instance showing incorrect workflow state in Page Editor
Expected usage of Page Editor's Experience date
I didn't get much response on those and so far I've surmised that this is just how Sitecore works. This is less than ideal for our instance, as when publishing restrictions are set, authors don't know which version they're editing which is causing various issues for them.
I'd like to implement a solution(s) to improve the experience provide the following functionality:
Something in the Experience tab that shows the number of the version being viewed.
A button on the Experience tab that resets the Date to the default (this is not simply setting the date to the current date/time, but resetting it to act as it did before a date was manually set).
A custom button in Content Editor which allows an author to open a specific version in Page Editor...set the date automatically when it opens, I guess.
An any one give me some clues on how much of this is possible and where to start?
Thanks.
For the first bullet "Something in the Experience tab that shows the number of the version being viewed", you can add version item in Core database.
Move to "Core" DB in Desktop Mode
Navigate to "/sitecore/content/Applications/WebEdit/Ribbons/WebEdit/Experience/"
Create "Versions" item like this, http://imgur.com/bPEDm7R
Create "Compare" item under "Versions" like this, http://imgur.com/dG8dz2M
The result like this, http://imgur.com/HPu3XAL
The content author can see which version they are using and they can also compare with previous versions.
we faced very specific scenario in our Sitecore enviroment. In our Sitecore we have a item, lets call it "Promotion". Promotion was using "End date" field that was shared.
On our dev instance we "unshared" the field. Which naturally triggers the background process that changes the items to use field in unshared mode.
Similar process is described here: http://sitecoreblog.alexshyba.com/2011/10/changing-field-sharing-settings-in.html
So then we packaged and installed change of "unsharing field" on production "master" database. As I assume during installation the background process of "updating the items" has not been triggered. Which now behaves in the way, that "unshared" field on our production master database cannot be saved. Cahnges of value after clicking save are "vanishing". I am sure they are now being saved in some language agnostic mode.
Of course simple fix for that is to "share" it back and "unshare" it again. However when we tried to do this experiment on copy of our enviroment and we noticed all the values were lost. As the items from mentioned template are heavily used, we cannot really afford loosing those values.
Any ideas?
I would go "database digging". Sitecore stores these field values in their respective databases inside the "SharedFields", "VersionedFields" and "UnversionedFields" tables.
Assuming you shut off your Sitecore instances (this is important), you should be able to SELECT the data out of the wrong table, and INSERT it into the correct one.
(you need to look for items where FieldId matches the field you are having trouble with)
From what you've described, I don't believe Sitecore has removed any data on your production environment (yet).
So the solution we came up to, was to use Sitecore Rocks tool. We exported all the Items containing the fields before changing the field to "Share". The query was more or less like that:
SELECT ##ID, ##Start Date#, ##End Date# FROM //*[##templateid='{993DC54F-6724-46C3-B8D2-3EE13F15366A}']
It gave us proper values at that point, even though to items were pointing to the SharedFields table. We just simply converted the result of this query (around 9000 rows) in Excel to Sitecore Rocks update query -
UPDATE SET ##Start Date#='20120531T000000',##End Date#='20120614T000000' FROM //* [##ID='{E3FD9819-3DBD-4FAA-8DEF-FEF2A6272723}'];
After prepared this migrations script, we shared the appropriate field and apply the script of 9000 updates queries through Sitecore Rocks. We need to to exactly the same on Live database. Everything went pretty smooth.
The same approach could be easily done with the database I believe, however this solution was better for us, because of non-technical reasons (security policies etc.). Anyway Sitecore Rocks rocks!
First off, I'm running WFFM 2.3.0 rev.130118.
I have a form with a Captcha field. If I set the Captcha field to display all the time, everything works fine. If the Captcha field is configured to display if certain Detection Thresholds are met, as far as I can tell, the Captcha is never displayed.
Here is a screenshot of the Detection Threshold dialog:
I say "as far as I can tell" because it may be a bit difficult to replicate "suspicious form activity" in your local dev environment. However, as you can see, I've set the visitor submission values to 3 times in 5 minutes. If I then go and submit the form a number of times beyond that threshold, I'm never presented with a Captcha.
Beyond the Captcha field, it's a basic contact us form with 4 text fields, nothing fancy and WFFM is effectively a "stock" configuration.
Anyone have any ideas?
I found the problem, it had to do with the form and its fields having multiple language versions.
Essentially, the site supports multiple languages but I only added a en-US Captcha field and forgot to translate for each supported language.
Even though 3 out of 4 fields involved are shared(Field Link, Required & Parameters) and Title isn't even being utilized in this case, Sitecore assumes the context language and if you don't have a translated version of that field, the intended functionality never gets triggered.
I have a few fields that I don't want to appear in the report. Is there a way to hide them completely (not even show the column header for these fields)?
I tried to create my own ISaveAction with the intent to filter out those fields before they get saved to the DB, but even if they don't appear in the AdaptedResultList that is sent to the DataManager.InsertForm the columns associated to these fields still appear in the reports.
Out of the box functionality, the answer is that if you mean one of the reports in the Form Reports area of WFFM, you most likely can, depending on the report. If you mean one of the reports that you can see a "Design" button on top when you view it, then you know that it's using the report that is configured in one of the .mrt files in your website directory in this path:
Website\sitecore modules\Shell\Web Forms for Marketers\Reports
Editing one of the reports by hitting the Design button will open up the Stimulsoft designer that is built in to Sitecore and you can make changes. You can also download one of the trial clients from the Stimulsoft website and open the .mrt files directly and edit them that way (the interface is WAY nicer than the built in Sitecore one).
A word of caution, however, BACK UP THE FILE FIRST!!! The Stimulsoft interface is picky and easy to break and it's got a learning curve. Once you figure out the basics though, removing a field is cake.
This is occuring in Sitecore version 6.4.1 (rev. 110720)
Recently, I've had an issue with several users who have unintentionally created a new version of an item - which contains "empty" fields. This is confusing to users because they don't realize that they are seeing a different version of the item, and they think that their content is randomly disappearing.
I don't know how to reproduce this, much less figure out how they are creating these "phantom" item versions.
I am reasonably certain that Sitecore users are not explicitly clicking "add" a new version in the top menu. From what I've been told, all they are doing is "locking" the item for editing, and this seems to create the new version of the item. At this point, it appears that the new version is the "default" that they are seeing, and they are complaining that the content has been "lost."
Is this Sitecore's default behavior - to create a new version of the item when the item is "locked" for editing? Or is this a known issue in this version of Sitecore?
If an item belongs to a workflow then when you hit the "Edit" button it will create a new version automatically for you.
Also, something to look into, in previous versions of Sitecore there were numerous issues where many actions in the content editor created versions of items unexpectedly (sorting for instance). See http://seankearney.com/post/Sitecore-item-and-version-design-flaw.aspx for more information on that.