Neben dem Haupt-Script (mit der Datei-Endungen ‘.js‘),
gehört noch eine weitere Datei dazu,
die ‘.dat‘-Datei
mit ansonsten zu dem Script identischen Namen.
Kopieren Sie alle Dateien einfach in den ‘plugins’-Ordner. Dieser ist in der
Standard-Version
abhängig vom jeweiligen Benutzer
C:\Dokumente und
Einstellungen\Benutzername\Anwendungsdaten\Webocton -
Scriptly\plugins
oder in der Compact-Version
C:\Programme\Webocton – Scriptly\plugins
.
Erstellung der ‘.dat‘-Datei
Die ‘.dat‘-Datei hat einen einfachen Aufbau und dient als Anzeige des
Scripts innerhalb des Scriptly-Menü.
beispiel.dat
highlight- as: dat
[de]
Name=Name des Scripts der im Scriptly-Menü angezeigt wird
Hint=Hover-Text der angezeigt wird, wenn die Maus selbigen Menü-Eintrag berührt
[en]
Name=Name of the script
Hint=This script does a lot
Erstellung der ‘.js‘-Datei
Kopieren Sie den unten stehenden Code, in eine leere ‘.js‘-Datei und kopieren Sie
sie in den beschriebenen Ordner.
Datei test.html
highlight- as: html
<tr valign="top">
<th class="metabox_label_column">
<label for="ehrenmitglied">
<?php _e('Ist Ehrenmitglied:'); ?>
</label>
</th>
</tr>
Datei test.html
highlight- as: html
$output .= "\n<tr valign=\"top\">";
$output .= "\n\t<th class=\"metabox_label_column\">";
$output .= "\n\t\t<label for=\"ehrenmitglied\">";
$output .= "\n\t\t\t " . _e('Ist Ehrenmitglied:') . "";
$output .= "\n\t\t</label>";
$output .= "\n\t</th>";
$output .= "\n</tr>";
echo $output;
Datei html_to_php.js
highlight- as: js
var oApp = application;
var oDoc = oApp.document;
var nCount = 4;
var _varPhp = "$output";
var intBtn = 6
if(oApp.editorLanguage != "de") {
if ( /(\t)/.test(oDoc.text) ){
nCount = oApp.inputDlg( "Replace tabs with spaces",
"Number of spaces » tab size:", nCount );
}
else {
nCount = oApp.inputDlg( "Replace spaces by tabs",
"Number of spaces » tab size:", nCount );
}
_varPhp = oApp.inputDlg( "Expand lines",
"Please select some text to add slashes.", _varPhp);
intBtn = oApp.messageDlg( 4, "Yes: output in the blog or No: Line by line" );
}
else {
if ( /(\t)/.test(oDoc.text) ){
nCount = oApp.inputDlg( "Ersetze Tabs durch Leerzeichen",
"Anzahl Leerzeichen » Tabgröße:", nCount ); }
else {
nCount = oApp.inputDlg( "Ersetze Leerzeichen durch Tabs",
"Anzahl Leerzeichen » Tabgröße:", nCount ); }
_varPhp = oApp.inputDlg( "php return dies:",
"Markieren Sie Text, um Zeichen maskieren zu lassen.",
_varPhp); intBtn = oApp.messageDlg( 4, "Ja: Ausgabe im Blog oder Nein: Zeilenweise" );
}
var nCursor = oDoc.selstart;
var _fileName = oDoc.fileName;
var arr = [];
var _selText;
var _Whitespace = "";
if ( ( oDoc ) && ( !isNaN(nCount) ) && ( nCount > 0 )){
if ( IsPHP( oDoc.seltext ).match() ) {
_selText = IsPHP( oDoc.seltext ).string();
}
else {
_selText = oDoc.seltext.replace(
/(\\|"|'|\$)/g, function ( $0 ) { return ( "\\" + $0 ); } );
}
_selText = _selText.replace( /\t/g, spaceByCount( nCount ) );
var _regExp = " {" + nCount + "}"; _selText = _selText.replace( new RegExp( _regExp, 'g' ), "\\t" );
var lines = _selText.split("\n");
for( var i = 0; i < lines.length; i++ ) {
if ( intBtn == 6 ) {
if ( 0 === i ) {
lines[i] = _varPhp +
" . \"\\n" + lines[i].replace( /^\s*|\s*$/g,"" ) + "\"";
}
else if ( ( lines.length - 1 ) === i ){
lines[i] = _varPhp +
" = \"\\n" + lines[i].replace( /^\s*|\s*$/g,"" ) + "\";";
}
else {
lines[i] = " . \"\\n" + lines[i].replace( /^\s*|\s*$/g,"" ) + "\"";
}
}
else if ( intBtn == 7 ) {
lines[i] = _varPhp +
" .= \"\\n" + lines[i].replace( /^\s*|\s*$/g,"" ) + "\";";
}
}
lines[lines.length] = "echo " + _varPhp + ";";
oDoc.seltext = lines.join( "\n" ); oDoc.selstart = nCursor; oDoc.save( _fileName ); }
function replacer(match, p1, p2, p3, offset, string){
return ["\" .", p2, ". \""].join(' ');
}
function spaceByCount( nCount ) {
if( nCount > 0 ) { for( i = 0; i < nCount; i++ ) {
_Whitespace += " "; }
}
else {
return false; }
return _Whitespace; }
function IsPHP( _String ) {
var _ValidCharsIn = "<?";
var _ValidCharsOut = "?>";
var _Char = "";
var c = 0;
var x = 0;
var arrOfBool = [];
var arrOfInt = [];
var arrOfIntIn = [];
var arrOfIntOut = [];
var arrOfIntLength = [];
var arrOfString = [];
for ( var i = 0; i < _String.length; i++) {
_Char = _String.charAt(i); _Char += _String.charAt(i+1); if (_ValidCharsIn.indexOf(_Char) != -1) {
arrOfInt[c] = i; c++; }
if (_ValidCharsOut.indexOf(_Char) != -1) {
arrOfInt[c] = i + 2; c++;
}
}
if ( arrOfInt.length > 0 ) {
for ( var i = 0; i < arrOfInt.length; i++) {
if ( i != 0 ) {
arrOfIntIn[i] = arrOfInt[i-1];
}
else {
arrOfIntIn.push( 0 );
}
if ( i != arrOfInt.length ) {
arrOfString[i] = _String.substring( arrOfIntIn[i], arrOfInt[i] );
arrOfIntOut[i] = arrOfInt[i];
}
else {
arrOfString[i] = _String.substring( arrOfInt[i] );
arrOfIntOut[i] = _String.length;
}
if ( /<\?[\s\S]*?\?>/.test( arrOfString[i] ) ) { arrOfBool[i] = true; arrOfString[i] =
arrOfString[i].replace(
/(<\?(?:=|php\s*(?:echo|print)*)*)([\s\S]*?)(;?\s*\?>)/g,
replacer );
}
else { arrOfBool[i] = false; arrOfString[i] =
arrOfString[i].replace(
/(\\|"|'|\$)/g, function ( $0 ) { return ( "\\" + $0 ); } );
}
arrOfIntLength[i] = arrOfIntOut[i] - arrOfIntIn[i];
}
return {
string: function() { return arrOfString.join(" "); }
,index: function() { return arrOfIntIn; }
,last: function() { return arrOfIntOut; }
,length: function() { return arrOfIntLength; }
,isphp: function() { return arrOfBool; }
,match: function() { return true; }
};
}
return { match: function() { return false; } };
}