[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 /** 2 * @provides javelin-behavior-phabricator-transaction-list 3 * @requires javelin-behavior 4 * javelin-stratcom 5 * javelin-workflow 6 * javelin-dom 7 * javelin-uri 8 * phabricator-textareautils 9 */ 10 11 JX.behavior('phabricator-transaction-list', function() { 12 13 JX.Stratcom.listen( 14 'click', 15 [['transaction-edit'], ['transaction-remove'], ['transaction-raw']], 16 function(e) { 17 if (!e.isNormalClick()) { 18 return; 19 } 20 21 e.prevent(); 22 23 var anchor = e.getNodeData('tag:a').anchor; 24 var uri = JX.$U(window.location).setFragment(anchor); 25 26 JX.Workflow.newFromLink(e.getNode('tag:a')) 27 .setHandler(function() { 28 // In most cases, `uri` is on the same page (just at a new anchor), 29 // so we have to call reload() explicitly to get the browser to 30 // refresh the page. It would be nice to just issue a server-side 31 // redirect instead, but there isn't currently an easy way to do 32 // that without complexity and/or a semi-open redirect. 33 uri.go(); 34 window.location.reload(); 35 }) 36 .start(); 37 }); 38 39 JX.Stratcom.listen( 40 'click', 41 'transaction-quote', 42 function(e) { 43 e.prevent(); 44 45 var data = e.getNodeData('transaction-quote'); 46 new JX.Workflow(data.uri) 47 .setData({ref: data.ref}) 48 .setHandler(function(r) { 49 var textarea = JX.$(data.targetID); 50 51 JX.DOM.scrollTo(textarea); 52 53 var value = textarea.value; 54 if (value.length) { 55 value += '\n\n'; 56 } 57 value += r.quoteText; 58 value += '\n\n'; 59 textarea.value = value; 60 61 JX.TextAreaUtils.setSelectionRange( 62 textarea, 63 textarea.value.length, 64 textarea.value.length); 65 }) 66 .start(); 67 }); 68 69 });
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Nov 30 09:20:46 2014 | Cross-referenced by PHPXref 0.7.1 |