How backend function is called on search?












3















I'm working on one JSF application in which search functionality is implemented in one of the module. I tried to find out how this works but couldn't find anything relevant.



I've JSF code as below which has search component implemented.



    <h:panelGroup id="searchBarWrapper" styleClass="search-bar#{ciUser.patient ? ' search-no-filters' : ''}" layout="block">
<h:inputText id="contentTextSearch" styleClass="form-control search" pt:data-loader="false"
value="#{contentView.freeText}"
pt:placeholder="#{uiBundle['content.search.placeholder']}"
pt:data-change-event="keydown:13,blur" pt:data-click-success=".open-level-one">
<f:ajax event="change"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:levelBack1 collaborative-#{contentView.side}:ColumnWideWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow content-preview-component:content-preview"
onevent="JSF.ajaxOnEvent"/>
</h:inputText>
<a href="#search" class="search-submit">
<i class="ico-search"></i>
</a>
<h:commandLink styleClass="btn btn-icon reset" rendered="#{not empty contentSession.freeText}"
pt:data-loader="false">
<i class="ico-cross-circle reset"></i>
<f:ajax listener="#{contentView.setFreeText(null)}"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnWide collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow"
onevent="JSF.ajaxOnEvent"/>
</h:commandLink>
</h:panelGroup>


JSF.ajaxOnEvent JS function is as below.



ajaxOnEvent: function (e) {
if (e.status === 'begin') {
$(e.source).addClass('processing');
}
JSF.handleClick(e);
JSF.iFrameLoad(e);
if (e.status === 'success') {
$(e.source).removeClass('processing');
CI.reInit(e);
}
}


Let me know if any other information is required to identify the flow of search functionality. I'll be happy to share it.










share|improve this question




















  • 1





    There is ajax being used in your page and that normally plays an important role in doing all the work, but it looks like someone added an additional custom layer with passtrough attributes and a JSF.handleClick(e); JSF.iFrameLoad(e) that are sort of generically used (also on the button) and complicates things and are normally not needed for JSF (unless some other client-side ui layer is used like bootstrap or similar). So check what is additionally there and investigate (and btw, 3 upvotes in less then 4 hours is sort of remarkable, any co-workers that voted?)

    – Kukeltje
    Nov 20 '18 at 9:33
















3















I'm working on one JSF application in which search functionality is implemented in one of the module. I tried to find out how this works but couldn't find anything relevant.



I've JSF code as below which has search component implemented.



    <h:panelGroup id="searchBarWrapper" styleClass="search-bar#{ciUser.patient ? ' search-no-filters' : ''}" layout="block">
<h:inputText id="contentTextSearch" styleClass="form-control search" pt:data-loader="false"
value="#{contentView.freeText}"
pt:placeholder="#{uiBundle['content.search.placeholder']}"
pt:data-change-event="keydown:13,blur" pt:data-click-success=".open-level-one">
<f:ajax event="change"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:levelBack1 collaborative-#{contentView.side}:ColumnWideWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow content-preview-component:content-preview"
onevent="JSF.ajaxOnEvent"/>
</h:inputText>
<a href="#search" class="search-submit">
<i class="ico-search"></i>
</a>
<h:commandLink styleClass="btn btn-icon reset" rendered="#{not empty contentSession.freeText}"
pt:data-loader="false">
<i class="ico-cross-circle reset"></i>
<f:ajax listener="#{contentView.setFreeText(null)}"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnWide collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow"
onevent="JSF.ajaxOnEvent"/>
</h:commandLink>
</h:panelGroup>


JSF.ajaxOnEvent JS function is as below.



ajaxOnEvent: function (e) {
if (e.status === 'begin') {
$(e.source).addClass('processing');
}
JSF.handleClick(e);
JSF.iFrameLoad(e);
if (e.status === 'success') {
$(e.source).removeClass('processing');
CI.reInit(e);
}
}


Let me know if any other information is required to identify the flow of search functionality. I'll be happy to share it.










share|improve this question




















  • 1





    There is ajax being used in your page and that normally plays an important role in doing all the work, but it looks like someone added an additional custom layer with passtrough attributes and a JSF.handleClick(e); JSF.iFrameLoad(e) that are sort of generically used (also on the button) and complicates things and are normally not needed for JSF (unless some other client-side ui layer is used like bootstrap or similar). So check what is additionally there and investigate (and btw, 3 upvotes in less then 4 hours is sort of remarkable, any co-workers that voted?)

    – Kukeltje
    Nov 20 '18 at 9:33














3












3








3








I'm working on one JSF application in which search functionality is implemented in one of the module. I tried to find out how this works but couldn't find anything relevant.



I've JSF code as below which has search component implemented.



    <h:panelGroup id="searchBarWrapper" styleClass="search-bar#{ciUser.patient ? ' search-no-filters' : ''}" layout="block">
<h:inputText id="contentTextSearch" styleClass="form-control search" pt:data-loader="false"
value="#{contentView.freeText}"
pt:placeholder="#{uiBundle['content.search.placeholder']}"
pt:data-change-event="keydown:13,blur" pt:data-click-success=".open-level-one">
<f:ajax event="change"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:levelBack1 collaborative-#{contentView.side}:ColumnWideWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow content-preview-component:content-preview"
onevent="JSF.ajaxOnEvent"/>
</h:inputText>
<a href="#search" class="search-submit">
<i class="ico-search"></i>
</a>
<h:commandLink styleClass="btn btn-icon reset" rendered="#{not empty contentSession.freeText}"
pt:data-loader="false">
<i class="ico-cross-circle reset"></i>
<f:ajax listener="#{contentView.setFreeText(null)}"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnWide collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow"
onevent="JSF.ajaxOnEvent"/>
</h:commandLink>
</h:panelGroup>


JSF.ajaxOnEvent JS function is as below.



ajaxOnEvent: function (e) {
if (e.status === 'begin') {
$(e.source).addClass('processing');
}
JSF.handleClick(e);
JSF.iFrameLoad(e);
if (e.status === 'success') {
$(e.source).removeClass('processing');
CI.reInit(e);
}
}


Let me know if any other information is required to identify the flow of search functionality. I'll be happy to share it.










share|improve this question
















I'm working on one JSF application in which search functionality is implemented in one of the module. I tried to find out how this works but couldn't find anything relevant.



I've JSF code as below which has search component implemented.



    <h:panelGroup id="searchBarWrapper" styleClass="search-bar#{ciUser.patient ? ' search-no-filters' : ''}" layout="block">
<h:inputText id="contentTextSearch" styleClass="form-control search" pt:data-loader="false"
value="#{contentView.freeText}"
pt:placeholder="#{uiBundle['content.search.placeholder']}"
pt:data-change-event="keydown:13,blur" pt:data-click-success=".open-level-one">
<f:ajax event="change"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:levelBack1 collaborative-#{contentView.side}:ColumnWideWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow content-preview-component:content-preview"
onevent="JSF.ajaxOnEvent"/>
</h:inputText>
<a href="#search" class="search-submit">
<i class="ico-search"></i>
</a>
<h:commandLink styleClass="btn btn-icon reset" rendered="#{not empty contentSession.freeText}"
pt:data-loader="false">
<i class="ico-cross-circle reset"></i>
<f:ajax listener="#{contentView.setFreeText(null)}"
render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnWide collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow"
onevent="JSF.ajaxOnEvent"/>
</h:commandLink>
</h:panelGroup>


JSF.ajaxOnEvent JS function is as below.



ajaxOnEvent: function (e) {
if (e.status === 'begin') {
$(e.source).addClass('processing');
}
JSF.handleClick(e);
JSF.iFrameLoad(e);
if (e.status === 'success') {
$(e.source).removeClass('processing');
CI.reInit(e);
}
}


Let me know if any other information is required to identify the flow of search functionality. I'll be happy to share it.







javascript jsf jsf-2






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 20 '18 at 9:33









Kukeltje

9,09641438




9,09641438










asked Nov 20 '18 at 4:46









Vimal BeraVimal Bera

8,64731741




8,64731741








  • 1





    There is ajax being used in your page and that normally plays an important role in doing all the work, but it looks like someone added an additional custom layer with passtrough attributes and a JSF.handleClick(e); JSF.iFrameLoad(e) that are sort of generically used (also on the button) and complicates things and are normally not needed for JSF (unless some other client-side ui layer is used like bootstrap or similar). So check what is additionally there and investigate (and btw, 3 upvotes in less then 4 hours is sort of remarkable, any co-workers that voted?)

    – Kukeltje
    Nov 20 '18 at 9:33














  • 1





    There is ajax being used in your page and that normally plays an important role in doing all the work, but it looks like someone added an additional custom layer with passtrough attributes and a JSF.handleClick(e); JSF.iFrameLoad(e) that are sort of generically used (also on the button) and complicates things and are normally not needed for JSF (unless some other client-side ui layer is used like bootstrap or similar). So check what is additionally there and investigate (and btw, 3 upvotes in less then 4 hours is sort of remarkable, any co-workers that voted?)

    – Kukeltje
    Nov 20 '18 at 9:33








1




1





There is ajax being used in your page and that normally plays an important role in doing all the work, but it looks like someone added an additional custom layer with passtrough attributes and a JSF.handleClick(e); JSF.iFrameLoad(e) that are sort of generically used (also on the button) and complicates things and are normally not needed for JSF (unless some other client-side ui layer is used like bootstrap or similar). So check what is additionally there and investigate (and btw, 3 upvotes in less then 4 hours is sort of remarkable, any co-workers that voted?)

– Kukeltje
Nov 20 '18 at 9:33





There is ajax being used in your page and that normally plays an important role in doing all the work, but it looks like someone added an additional custom layer with passtrough attributes and a JSF.handleClick(e); JSF.iFrameLoad(e) that are sort of generically used (also on the button) and complicates things and are normally not needed for JSF (unless some other client-side ui layer is used like bootstrap or similar). So check what is additionally there and investigate (and btw, 3 upvotes in less then 4 hours is sort of remarkable, any co-workers that voted?)

– Kukeltje
Nov 20 '18 at 9:33












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53386388%2fhow-backend-function-is-called-on-search%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53386388%2fhow-backend-function-is-called-on-search%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Guess what letter conforming each word

Port of Spain

Run scheduled task as local user group (not BUILTIN)