[gen] Allow an ajax request to return a message, carried as a custom HTTP header and retrieved by appy.js to display a message.
This commit is contained in:
parent
8d03f6ca9c
commit
4a393e76af
5 changed files with 33 additions and 15 deletions
|
@ -239,14 +239,16 @@ class ToolWrapper(AbstractWrapper):
|
|||
|
||||
# The message that is shown when a user triggers an action.
|
||||
pxMessage = Px('''
|
||||
<div var="messages=ztool.consumeMessages()" if="messages"
|
||||
class=":inPopup and 'messagePopup message' or 'message'">
|
||||
<div class=":inPopup and 'messagePopup message' or 'message'"
|
||||
style="display:none" id="appyMessage">
|
||||
<!-- The icon for closing the message -->
|
||||
<img src=":url('close')" align=":dright" class="clickable"
|
||||
onclick="this.parentNode.style.display='none'"/>
|
||||
<!-- The message content -->
|
||||
<x>::messages</x>
|
||||
</div>''')
|
||||
<div id="appyMessageContent"></div>
|
||||
</div>
|
||||
<script type="text/javascript" var="messages=ztool.consumeMessages()"
|
||||
if="messages">::'showAppyMessage(%s)' % q(messages)</script>''')
|
||||
|
||||
# The page footer.
|
||||
pxFooter = Px('''
|
||||
|
|
|
@ -632,10 +632,12 @@ class AbstractWrapper(object):
|
|||
x=resp.setHeader('Content-type', ztool.xhtmlEncoding);
|
||||
x=resp.setHeader('Expires', 'Thu, 11 Dec 1975 12:05:00 GMT+2');
|
||||
x=resp.setHeader('Content-Language', lang);
|
||||
x=resp.setHeader('CacheControl', 'no-cache')">
|
||||
x=resp.setHeader('Cache-Control', 'no-cache')">
|
||||
|
||||
<!-- If an action is defined, execute it on p_zobj or on p_field. -->
|
||||
<x if="action" var2="x=ztool.executeAjaxAction(action, obj, field)"></x>
|
||||
<x if="action"
|
||||
var2="msg=ztool.executeAjaxAction(action, obj, field) or '';
|
||||
x=resp.setHeader('Appy-Message', msg)"></x>
|
||||
|
||||
<!-- Then, call the PX on p_obj or on p_field. -->
|
||||
<x if="not field">:getattr(obj, px[0])</x>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue