GithubHelp home page GithubHelp logo

openfaces's People

Contributors

alexinteamdev avatar aloboda avatar andreshapovalov avatar armiol avatar dmytro-kashcheiev avatar dpikhulya avatar eugenegoncharov avatar natalia-zolochevska avatar openfaces avatar palan76 avatar roman-nikolaienko avatar romanperin avatar st-kurilin avatar yurinm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openfaces's Issues

size calculation notification

[Michael Nemoy]
condition scroll
hi,
we have to calculate component size in some case, and sometimes, your code overrides the size.
do you have an option to throw an event after component size is recalculated?
you can see it in our environment :
open a contract , go to terms tab:
the scroll of the condition grid is hide. if you change the scroll position, the grid is rendering, and the scroll is shown.
please see attachment.

IE8 and dataTable page submission

Adrian Buciuman
Environment: Windows 7 + IE8, openfaces nightly build 3.1.EA1.868, mojarra 2.1.2

The pagination in data table works good if you browse up/down from page to page. In the situation when you enter the page number in the page selection box and hit enter, instead of doing an ajax call, the whole page is submitted to the server. This causes other button listeners on the page to be called and not the one that, actually, submitted the page.

DataTable column resizing bug in IE8.

[Nicholas Oxhøj] In IE8, the DataTable column resizing functionality doesn't receive mouse-up events outside the browser window. If you therefore release the mouse button outside the browser window, then enter the window again, the column separator is till "following" the mouse. If you then click the column separator again, to stop the resizing/dragging operation, you get a script error from util.js: '_draggingWasStarted' is null or not an object.

This problem can be exhibited by going to the DataTable demo: http://www.openfaces.org/demo/datatable/DataTable_general.jsf
Size the browser window, so it is not full screen.
click and hold the mouse button on one of the column separators to start dragging.
Move the mouse cursor outside the browser window and release the mouse button.
Move the mouse cursor inside the browser window again. The column separator will keep following the mouse cursor.
Click (and release) the column separator and you should get the script error.

As mentioned, the problem is that the document doesn't receive the mouse-up event outside the browser window and the drag operation is therefore not ended when the button is released.
When you then click the column separator again, to try and stop the dragging, you actually start a second drag operation. And when you release the mouse button, the "onmouseup" event listener is fired twiced, once for each drag operation. First time it will set O$._draggedElement to "null" which then causes the script error when the event listener is fired the second time...

I have tried to fix this by using the IE specific setCapture()/releaseCapture() functionality to receive the "onmouseup" event, even when the cursoris outside the browser window.
Just for good measure I also added a check to ensure that we do not start a new drag operation as long as we are already dragging.

I hope this fix will also work for other draggable elements, but I haven't tested this...

Access denied script error with changing tabs in IE8 modes

Geoff Groskreutz
Receive an Access denied script error when changing tabs when using an IE browser in IE8 or lower standards mode (including IE5 quirks mode).

location: webapp/faces/javax.faces.resource/util/util.js?ln=openfaces&ofver=3.1.EA1.c1_aug2012_43
SCRIPT70: Permission denied
util.js, line 3226 character 7

This occurs when using other components as well, but my current case is when the user switches tabs.

<o:tabSet id="cohortlist_tabs" value="#{cohortBean.cohortTab}" styleClass="TabSet" tabClass="TabItem" rolloverTabClass="TabItemRollover" selectedTabClass="TabItemSelected">
     <o:tabSetItem itemValue="Public">Public</o:tabSetItem>
     <o:tabSetItem itemValue="Private">Private</o:tabSetItem>
     <o:ajax event="change" render=":cohort_form:cohortlist_table :cohort_form:pnlMessages"></o:ajax>
    </o:tabSet>

I am using the latest nightly build, as shown below, at least thats the one referenced on the Nightly build download page. And using Mojarra 2.1.22 on Tomact 7.0.42, it is also a problem with Mojarra 2.1.11, 2.1.14, 2.1.22 and 2.1.24

The code link below, shows that when running in IE8 Standards (this is max support for IE8 browsers of course) or below, or IE5 Quirks mode, IE is throwing an Access Denied exception when retrieving the style attribute of the current css rule. I am not sure why IE8 prevents this, it occurs both when used in a Iframe or when this page has its own window. When running IE9 Standards mode or higher, then you do not receive this script error, and the page renders just fine. A short term fix would be just to trap any exceptions in the script around this usage, and just ignore it, and continue on, and assume that the style is null, and make a check for that in further usage of it. That way it will not cause any further scripts to fail, but it will just skip whatever styling it was suppose to do, because it couldn't get access to it.

var ruleStyle = cssRule.style;

SM OR - command button action does not translated to ajax

If we use open faces command button and specify the 'action' attribute and 'render' attribute - then in inspect element you see:
onclick="O$.Ajax._reload(,"_action":..."
and that is correct.
BUT
if you specify only the 'action' attribute and NOT 'render' attribute then the button is type of submit but not with 'ajax' implementation.
Then when clicking on this button all is stuck and sometime the session is closed.

I think it's a bug.
Please let me know if there is any idea behind this behavior.

Thank you.

o:columnReordering - Wrong behaviour when try to arrange columns in dataTable

Michael Nemoy
In dataTable try to arrange the columns (for example - in Contract screen -> Groups grid - drag the Backer column and try to place it near Group Name column.)
Please see the attachment.
The columns cannot be easy arranged, using just one move.
Seems it happen just in dataTable with scrolling.

SingleFileUpload does not consider javascript callbacks

[Florian Jung]In the current SNAPSHOT the single file upload component does not consider the settings for

  • onfilestart
  • onfileinprogress
  • onfileend
  • onwrongfiletype

as in the component's renderer class SingleFileUploadRenderer line 257-260 the events are named in an inconsistent manner.

When in the class renamed to

  • filestart
  • fileend
  • fileinprogress
  • wrongfiletype

the component works as expected.

Sorry for not delivering a patch file as I have no glue which branch is the one the snapshots originate from.

error message in paging in dataTabe after specific dialog was opened

Michael Nemoy
[error after add renewal alert.zip]
Choose an existing contract -> in General tab select a value for Renewal Alert date -> save -> go to Terms tab -> in Programs grid press on "+" button -> press on Program Name lookup -> Select Programs dialog is opened -> press on >> next page button -> error message appears.

Namespace declaration causes issues with JSF 2.2

Lauren Elkin
When attempting to add openfaces to a project using JSF 2.2, attempts to use the tag library do not work. The problem has to do with the namespace declaration in /META-INF/openfaces.taglib.xml, which appears to have a compatibility issue with the new version of Mojarra. Updating the namespace declaration from "http://openfaces.org/" to "http://openfaces.org/ui", then changing the xmlns references to reflect the update allowed openfaces to work normally.

o:selectOneMenu element - wrong selection of item - If there is a lot of rows in the list and there is scroll bar then sometimes the selection of item is wrong.

Michael Nemoy
Enter an existing contract with a program/episodes assigned to group, above the runs grid click the Presets icon - in order to
select an amortization template: Open the DD list and mark any template from the middle of the list - after you click the apply of the first dialog - a wrong name (template) is selected . it takes about 3 trails on the DD list - to select the correct template .

also in sale contract with runs -> update origination field ->select contract list

(LC #277517)

CLONE -Error icon displayed behind popup

Anna Maria
I have a popup layer with an input text in it. In order to display validation messages related to the input text I use a floatingIconMessage. The problem is that in case of error the error message is displayed ok but the error icon is hidden behind the popup. I tried to set the z-index style property of the floating icon but it seems that it is ignored. What should I do to get the icon displayed properly?

Trouble rerendering <o:dropDownField> using Ajax in Firefox

Nicholas Oxhøj I have run into a bug with <o:dropDownField> when being inside a component/region rerendered by RichFaces Ajax.

When such a page is viewed in newer Firefox browsers, the rerendered dropdown, doesn't get initialized correctly, e.g. the button doesn't show and you cannot open the dropdown with the keyboard either.

This bug is caused by some bugs in the two fixes that was made for my old related bug report: http://requests.openfaces.org/browse/OF-66

The first bug is in O$.removeRelocatedPopupIfExists:

  O$.removeRelocatedPopupIfExists = function(popupId) {
    var dapp = O$.getDefaultAbsolutePositionParent();
    var potentialPopups = dapp.childNodes;
    for (var i = 0, count = potentialPopups.length; i < count; i++) {
      var potentialPopup = potentialPopups[i];
      if (potentialPopup.id == popupId) {
        dapp.removeChild(potentialPopup);
      }
    }
  };

(https://github.com/openfaces/OpenFaces/blob/12462a399f63b9efaa3907737fd0fe416a08cb94/openFaces/source/META-INF/resources/openfaces/util/util.js#L3764)

The problem is that potentialPopups is a "live" list, such that when you remove child nodes, they also disappear from potentialPopups, which is then shortened. But you have cached the length in the "count" variable, so that when you try to access the "count'th" element, "potentialPopup" will be undefined, "potentialPopup.id" will throw an error, and the rest of O$.DropDown._init() will never be executed...

To fix this, you could stop caching the length:

    for (var i = 0; i < potentialPopups.length; i++) {

Or if you for some reason was worried about calling "potentialPopups.length" more than once, you could just run through it in the opposite direction:

    for (var i = potentialPopups.length - 1 ; i >= 0; i--) {

But the above bug shouldn't be relevant in a new Firefox browser, since you only intend to relocate popups in Firefox 2 (and some cases of IE).But this happens because of the second bug introduced in the fix for OF-66.

The test in O$.DropDown._initPopup() looks like

    if ((O$.isExplorer() && O$.isQuirksMode() && dropDown._popup.parentNode != container) ||
        (O$.isMozillaFF2() && O$.isStrictMode())) {
(https://github.com/openfaces/OpenFaces/blob/cdde1153922583ce13003ce0eb5c175fd00c4554/openFaces/source/META-INF/resources/openfaces/input/dropdown.js#L465)

But O$.isMozillaFF2() now looks like

  O$.isMozillaFF2 = function() {
    return O$.isMozillaFF() && O$.userAgentContains("Firefox/2");
  };
https://github.com/openfaces/OpenFaces/blob/12462a399f63b9efaa3907737fd0fe416a08cb94/openFaces/source/META-INF/resources/openfaces/util/util.js#L938

and since my Firefox is now version 23, the user agent string conatins "Firefox/23.0" and therefore O$.isMozillaFF2() returns true.
So you should probably at least do something like

  navigator.userAgent.search(/Firefox\/2(\D|$)/i)

when matching for specific versions.

Calling setValue() on a Slider changes the value of the textField but not the slider

Candace Bain
I have two slider components and need to ensure that the value of one is not greater than the value of the other. I added an onchange handler that uses getValue() and setValue() on the sliders to enforce this constraint.

Behavior: calling setValue() with a new value changes the value of the slider's textField but does not change the slider location.
Expected behavior: I would expect calling setValue() to update both the textField and the slider location.

I looked through slider's javascript and was able to work around this by calling redisplayHandle() on the slider after I call setValue() on it. It would be nice if setValue() called redisplayHandle(), or if not it would be nice if redisplayHandle() were documented. Thanks!

DataTablePaginator not working correctly

As discussed before at https://groups.google.com/a/teamdev.com/forum/?fromgroups=#!topic/openfaces-forum/i3bmWnWm6yI I still encounter a problem with the datatable paginator.
Depending on the content of the datatable it works correctly or not.
I succeeded to narrow this down to small test application. Attached you find a zip file containing the project.
You'll have to adjust the 2 properties jsf.home and openfaces.home to your needs.
Then you can run ant to build and deploy.
Deployment goes to $JBOSS_HOME/standalone/deployments. For other environments this also has to be adjusted.

Within index.xhtml the columns c3 to c5 are the relevant ones to look at.
If all are commented out, everything works fine. The paginator works as it is expected.
When only c3 is enabled, you can paginate until the last page. But the page index and the navigation elements do not get updated.
When only c5 is enabled, the paginator works also, but the foldingPanel can no longer be folded or unfolded.
Column c4 is the one I have in my full app. Enabling only this column shows the combination of both problems.
And messages like this
17:43:53,093 WARNING [javax.enterprise.resource.webcontainer.jsf.application.view#saveDynamicActions] Unable to save dynamic action with clientId 'j_idt9:j_idt10:j_idt20:0:j_idt21--_defaultButtonsArea' because the UIComponent cannot be found
17:43:53,095 WARNING [javax.enterprise.resource.webcontainer.jsf.application.view#saveDynamicActions] Unable to save dynamic action with clientId 'j_idt9:j_idt10:j_idt20:0:j_idt21--_defaultButtonsArea--toggle' because the UIComponent cannot be found
when going from page 1 to 2
and
17:45:53,950 WARNING [javax.enterprise.resource.webcontainer.jsf.application.view#saveDynamicActions] Unable to save dynamic action with clientId 'j_idt9:j_idt10:0:j_idt20:0:j_id3' because the UIComponent cannot be found
for next page.

SM OR - Payment Templates -> Article is not entirely visible (marked with yellow) when many column headers are selected

Payment Templates -> Create a new template -> Sort columns by 4-5 column headers -> Add payment line-> when trying to select an “Article”, the dropdown is opened only if you press many times on the field (and in different spots) -> after choosing one and saving, you can only see one or two letters from your option (for example you select: License – you will see only “L” )
image

SM OR - bug in dataTable setSelectedRowKeys

in contractGeneral.js -> processJumpSelect() ->we ask the following: document.getElementById('runsGridData').setSelectedRowKeys(NumberRangeSeparation(paramsObj['runNumbers']));

but openfaces has bug in table.js
__setSelectedRowIndexes:function (rowIndexes) {
var bodyRows = table.__getRowCount(); -> instead of var bodyRows = table.body._getRows();
after that it's trying to do :
if (rowIndex < 0 || rowIndex >= bodyRows.length)
then it's failed in 'bodyRows.length'

I see there are some more such wrong places...

"title" attribute needed on <o:column> and <o:cell>

[Nicholas Oxhøj] I think you should add the possibility to add a "title" to both <o:column> and <o:cell>, which would be placed on the resulting .
Just like RichFaces has: http://docs.jboss.org/richfaces/latest_3_3_X/en/tlddoc/rich/column.html

Right now it is only possible to put tooltips on something inside the cell, but in a lot of cases (e.g. if the content is quite small) it would make much more sense to have the tooltip on the whole cell.

drop down menus values are displayed in the wrong position

Go to a contract>general tab>Payments sub tab> open the due date window>do not maximize it> open a but not before/and not after window >maximize it>press on the arrow from any drop down menu in order to see the values>
Actual results: the drop down menus values are displayed in the wrong position
Expected results: the values should be displayed exactly in the drop down menu (see the correct behavior for the case when the first window is maximized).

Script error when initializing the dropDownField item list in Chrome

Geoff Groskreutz
Invironment:Mojarra 2.1.2, 2.1.11, 2.1.22, 2.1.24; IE browsers in IE8 standards/IE5 quirks modes; Tomcat 7.0.42; OF build: 3.1.EA1.c1_aug2012_43

Uncaught SyntaxError: Unexpected identifier in dropDownField.js:43
\META-INF\resources\openfaces\input\dropDownField.js

This error prevents the drop down list from showing up when user clicks on the drop down arrow.

Looking at the line 43 in the above file, I noticed that there are some non-standard characters which are those that are not in the set [a-zA-Z0-9_] used in name of the inner function defined under the declaration of the function:

_copyClassesToItemPresentation:function ()

It appears that IE and FireFox can handle these special characters in the function name, but Chrome's default English install cannot (I have not tried other languages). It is more likely that this is a typo in the code, since I looked at both the compiled distribution and the source version of the nightly build, and they both have this issue. And the method name is all in standard Latin characters except 2 of the characters and they are next to each other.

Command button ajax "render" attribute inside TreeTable

If you are using h command button with f:ajax attribute inside tree table element. It's not possible to call render of this tree table. You are getting the following error:
java.lang.NullPointerException
at org.openfaces.component.table.TreeTable.getRowIndexByClientSuffix(TreeTable.java:170)
at org.openfaces.ajax.PartialViewContext.componentById(PartialViewContext.java:691)
at org.openfaces.ajax.PartialViewContext.findComponentByPath(PartialViewContext.java:645)
at org.openfaces.ajax.PartialViewContext.findComponentById(PartialViewContext.java:624)
at org.openfaces.ajax.PartialViewContext.findComponentById(PartialViewContext.java:605)

ascii symbol causes nullpointer exception

error_openfaces

Hello!
when in the list of array comes a string's, in one line which is the symbol ASCII 1D (GS or chr(29)), the system responces Nullpointer Exception.
But we has fixing this problem with prepared filter for this string, but i see that is a crooked nail =)

cannot see all DD list if parent dialog is not increased

On existing purchase contract open the presets dialog above the runs grid, and then the DD list of amortization presets, the list cannot be
seen to its full size (under the border of the upper dialog) - unless you change its hight

it happens when the DD list has a lot of items in the list

incorrect behavior after use filter in dataTable

Michael Nemoy
New Contract Screen -> New Purchase Contract -> Fill mandatory fields -> Go to Terms tab -> Pres + in program tab -> In program addition press the lookup button -> Select programs window appears -> use the filter of program name or program id but Do not choose a program -> Press cancel in both windows-> then press + again.

Expected result: the program addition dialog window should open
Actual result: 2 windows pop up (program addition and select programs) and Contract screen is blocked.

We checked in your code popupLayer.js - for some reason the internal dialog popup._visibleField.value = "true" and then it is shown

(LC #277604)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.