Revision e8dd0687
Von Moritz Bunkus vor etwa 3 Jahren hinzugefügt
js/kivi.js | ||
---|---|---|
676 | 676 |
$input.prop('selectionStart', position); |
677 | 677 |
$input.prop('selectionEnd', position); |
678 | 678 |
}; |
679 |
|
|
680 |
ns._shell_escape = function(str) { |
|
681 |
if (str.match(/^[a-zA-Z0-9.,_=+/-]+$/)) |
|
682 |
return str; |
|
683 |
|
|
684 |
return "'" + str.replace(/'/, "'\\''") + "'"; |
|
685 |
}; |
|
686 |
|
|
687 |
ns.call_as_curl = function(params) { |
|
688 |
params = params || {}; |
|
689 |
var uri = document.documentURI.replace(/\?.*/, ''); |
|
690 |
var command = ['curl', '--user', kivi.myconfig.login + ':SECRET', '--request', params.method || 'POST'] |
|
691 |
|
|
692 |
$(params.data || []).each(function(idx, elt) { |
|
693 |
command = command.concat([ '--form-string', elt.name + '=' + (elt.value || '') ]); |
|
694 |
}); |
|
695 |
|
|
696 |
command.push(uri); |
|
697 |
|
|
698 |
return $.map(command, function(elt, idx) { |
|
699 |
return kivi._shell_escape(elt); |
|
700 |
}).join(' '); |
|
701 |
}; |
|
679 | 702 |
}); |
680 | 703 |
|
681 | 704 |
kivi = namespace('kivi'); |
Auch abrufbar als: Unified diff
kivi.js: Helfsfunktion zum Formatieren eines JS-Calls als CURL-Aufruf
Nützlich, wenn man mehrfach von der Kommandozeile aus eine
Controller-Funktion aufrufen will, ohne jedes Mal zur Maus greifen zu
müssen. Aufruf grob so:
var data = $('#form').serializeArray();
data.push({ name: 'action', value: 'Order/frobnicate' });
console.log(kivi.call_as_curl({ data: data }));