Moved the Agents into their own repo. Kept the agent.pl just for reference

This commit is contained in:
Frank Harris 2025-09-11 13:27:32 -04:00
parent 22381be29a
commit 8680a02b13
18132 changed files with 0 additions and 2569420 deletions

View file

@ -1,286 +0,0 @@
/*
Version history
1.0.2 - row 86 - added "escape" to the querystring to keep all the parameters intact
*/
function SWFUpload(settings) {
// Remove background flicker in IE
try
{
document.execCommand('BackgroundImageCache', false, true);
} catch(e) {}
// Generate the tags ID
this.movieName = "SWFUpload_" + SWFUpload.movieCount++;
// Load the settings. Load the Flash movie.
this.init(settings);
this.loadFlash();
if (this.debug)
this.debugSettings();
}
SWFUpload.movieCount = 0;
// Default error handling.
SWFUpload.handleErrors = function(errcode, file, msg) {
switch(errcode) {
case -10: // HTTP error
alert("Error Code: HTTP Error, File name: " + file.name + ", Message: " + msg);
break;
case -20: // No upload script specified
alert("Error Code: No upload script, File name: " + file.name + ", Message: " + msg);
break;
case -30: // IOError
alert("Error Code: IO Error, File name: " + file.name + ", Message: " + msg);
break;
case -40: // Security error
alert("Error Code: Security Error, File name: " + file.name + ", Message: " + msg);
break;
case -50: // Filesize too big
alert("Error Code: Filesize exceeds limit, File name: " + file.name + ", File size: " + file.size + ", Message: " + msg);
break;
}
};
SWFUpload.prototype.init = function(settings) {
this.settings = [];
this.addSetting("debug", settings["debug"], false); // Turn debugging on/off
// UI settings
this.addSetting("target", settings["target"], ""); // Target for auto-generated upload/browse links
this.addSetting("create_ui", settings["create_ui"], false); // Auto-generate UI
this.addSetting("browse_link_class", settings["browse_link_class"], "SWFBrowseLink"); // CSS-class given to auto-generated browse link
this.addSetting("upload_link_class", settings["upload_link_class"], "SWFUploadLink"); // CSS-class given to auto-generated upload link
this.addSetting("browse_link_innerhtml", settings["browse_link_innerhtml"], "<span>Browse...</span>"); // innerHTML for generated browse link, default surround with span for easy css-styling
this.addSetting("upload_link_innerhtml", settings["upload_link_innerhtml"], "<span>Upload</span>"); // innerHTML for generated upload link, default surround with span for easy css-styling
// Callbacks
this.addSetting("flash_loaded_callback", settings["flash_loaded_callback"], "SWFUpload.flashLoaded"); // Invoked when the flash is loaded
this.addSetting("upload_file_queued_callback", settings["upload_file_queued_callback"], ""); // Invoked when each file is added to the queue
this.addSetting("upload_file_start_callback", settings["upload_file_start_callback"], ""); // Invoked when upload starts
this.addSetting("upload_file_complete_callback", settings["upload_file_complete_callback"], ""); // Invoked when each file is completed
this.addSetting("upload_queue_complete_callback", settings["upload_queue_complete_callback"], ""); // Invoked when upload queue is complete
this.addSetting("upload_progress_callback", settings["upload_progress_callback"], ""); // Called with regular updates on progress..
this.addSetting("upload_dialog_cancel_callback", settings["upload_dialog_cancel_callback"], ""); // Invoked when cancel btn in dialog is clicked
this.addSetting("upload_file_error_callback", settings["upload_file_error_callback"], "SWFUpload.handleErrors"); // Invoked on error
this.addSetting("upload_file_cancel_callback", settings["upload_file_cancel_callback"], ""); // Invoked when a file upload is cancelled
this.addSetting("upload_queue_cancel_callback", settings["upload_queue_cancel_callback"], ""); // Invoked when upload queue is cancelled
// SWF Settings
this.addSetting("upload_script", escape(settings["upload_script"], "")); // The file that recieves the uploaded files from flash
this.addSetting("auto_upload", settings["auto_upload"], false); // Start upload directly or require upload button.
this.addSetting("allowed_filetypes", settings["allowed_filetypes"], "*.*"); // List of allowed filetypes
this.addSetting("allowed_filetypes_description", settings["allowed_filetypes_description"], "All files"); // Description for allowed filetypes
this.addSetting("allowed_filesize", settings["allowed_filesize"], 1024); // Max allowed filesize
this.addSetting("flash_path", settings["flash_path"], "jscripts/SWFUpload/SWFUpload.swf"); // Path to flash-file
this.addSetting("flash_target", settings["flash_target"], ""); // Where to output the flash (not used)
this.addSetting("flash_width", settings["flash_width"], "1px"); // Flash width
this.addSetting("flash_height", settings["flash_height"], "1px"); // Flash height
this.addSetting("flash_color", settings["flash_color"], "#000000"); // Flash color
this.debug = this.getSetting("debug"); // Set debug
};
SWFUpload.prototype.loadFlash = function() {
var html = "";
var sb = new stringBuilder();
// Create Mozilla Embed HTML
if (navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) {
// Build the basic embed html
sb.append('<embed type="application/x-shockwave-flash" src="' + this.getSetting("flash_path") + '" width="' + this.getSetting("flash_width") + '" height="' + this.getSetting("flash_height") + '"');
sb.append(' id="' + this.movieName + '" name="' + this.movieName + '" ');
sb.append('bgcolor="' + this.getSetting["flash_color"] + '" quality="high" wmode="transparent" menu="false" flashvars="');
sb.append(this._getFlashVars());
sb.append('" />');
// Create IE Object HTML
} else {
// Build the basic Object tag
sb.append('<object id="' + this.movieName + '" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + this.getSetting("flash_width") + '" height="' + this.getSetting("flash_height") + '">');
sb.append('<param name="movie" value="' + this.getSetting("flash_path") + '" />');
sb.append('<param name="bgcolor" value="#000000" />');
sb.append('<param name="quality" value="high" />');
sb.append('<param name="wmode" value="transparent" />');
sb.append('<param name="menu" value="false" />');
sb.append('<param name="flashvars" value="' + this._getFlashVars() + '" />');
sb.append('</object>');
}
// Build the DOM nodes to hold the flash;
var container = document.createElement("div");
container.style.width = "0px";
container.style.height = "0px";
container.style.position = "absolute";
container.style.top = "0px";
container.style.left = "0px";
var target_element = document.getElementsByTagName("body")[0];
if (typeof(target_element) == "undefined" || target_element == null)
return false;
var html = sb.toString();
target_element.appendChild(container);
container.innerHTML = html;
this.movieElement = document.getElementById(this.movieName);
};
SWFUpload.prototype._getFlashVars = function() {
var sb = new stringBuilder();
sb.append("uploadScript=" + this.getSetting("upload_script"));
sb.append("&allowedFiletypesDescription=" + this.getSetting("allowed_filetypes_description"))
sb.append("&flashLoadedCallback=" + this.getSetting("flash_loaded_callback"));
sb.append("&uploadFileQueuedCallback=" + this.getSetting("upload_file_queued_callback"));
sb.append("&uploadFileStartCallback=" + this.getSetting("upload_file_start_callback"));
sb.append("&uploadProgressCallback=" + this.getSetting("upload_progress_callback"));
sb.append("&uploadFileCompleteCallback=" + this.getSetting("upload_file_complete_callback"));
sb.append("&uploadQueueCompleteCallback=" + this.getSetting("upload_queue_complete_callback"));
sb.append("&uploadDialogCancelCallback=" + this.getSetting("upload_dialog_cancel_callback"));
sb.append("&uploadFileErrorCallback=" + this.getSetting("upload_file_error_callback"));
sb.append("&uploadFileCancelCallback=" + this.getSetting("upload_file_cancel_callback"));
sb.append("&uploadQueueCompleteCallback=" + this.getSetting("upload_queue_complete_callback"));
sb.append("&autoUpload=" + this.getSetting("auto_upload"));
sb.append("&allowedFiletypes=" + this.getSetting("allowed_filetypes"));
sb.append("&maximumFilesize=" + this.getSetting("allowed_filesize"));
return sb.toString();
}
// The callback method that the Flash movie will call when it has been loaded.
// This should Load the UI parts.
SWFUpload.prototype.flashLoaded = function(bool) {
this.loadUI();
if (this.debug)
SWFUpload.debug("Flash called home and is ready.");
};
// Load the UI elements. Show the UI Target, build the "link" according to the settings, and hide the Degraded Target
SWFUpload.prototype.loadUI = function() {
if(this.getSetting("target") != "" && this.getSetting("target") != "fileinputs") {
var instance = this;
var target = document.getElementById(this.getSetting("target"));
// Create the link for uploading
var browselink = document.createElement("a");
browselink.className = this.getSetting("browse_link_class");
browselink.id = this.movieName + "BrowseBtn";
browselink.href = "javascript:void(0);";
browselink.onclick = function() { instance.browse(); return false; }
browselink.innerHTML = this.getSetting("browse_link_innerhtml");
target.innerHTML = "";
target.appendChild(browselink);
// Add upload btn if auto upload not used
if(this.getSetting("auto_upload") == false) {
// Create the link for uploading
var uploadlink = document.createElement("a");
uploadlink.className = this.getSetting("upload_link_class");
uploadlink.id = this.movieName + "UploadBtn";
uploadlink.href = "#";
uploadlink.onclick = function() { instance.upload(); return false; }
uploadlink.innerHTML = this.getSetting("upload_link_innerhtml");
target.appendChild(uploadlink);
}
}
};
SWFUpload.debug = function(value) {
if (window.console)
console.log(value);
else
alert(value);
}
SWFUpload.prototype.addSetting = function(name, value, default_value) {
return this.settings[name] = (typeof(value) == "undefined" || value == null) ? default_value : value;
};
SWFUpload.prototype.getSetting = function(name) {
return (typeof(this.settings[name]) == "undefined") ? null : this.settings[name];
};
SWFUpload.prototype.browse = function() {
this.movieElement.browse();
};
SWFUpload.prototype.upload = function() {
this.movieElement.upload();
}
SWFUpload.prototype.cancelFile = function(file_id) {
this.movieElement.cancelFile(file_id);
};
SWFUpload.prototype.cancelQueue = function() {
this.movieElement.cancelQueue();
};
SWFUpload.prototype.debugSettings = function() {
var sb = new stringBuilder();
sb.append("----- DEBUG SETTINGS START ----\n");
sb.append("ID: " + this.movieElement.id + "\n");
for (var key in this.settings)
sb.append(key + ": " + this.settings[key] + "\n");
sb.append("----- DEBUG SETTINGS END ----\n");
sb.append("\n");
var res = sb.toString();
SWFUpload.debug(res);
};
/* UTILS */
function stringBuilder(join) {
this._strings = new Array;
this._join = (typeof join == "undefined") ? "" : join;
stringBuilder.prototype.append = function(str) {
this._strings.push(str);
};
stringBuilder.prototype.toString = function() {
return this._strings.join(this._join);
};
};

Binary file not shown.

Before

Width:  |  Height:  |  Size: 781 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 733 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 587 B

View file

@ -1,151 +0,0 @@
<?php
header("Content-type: text/css");
if (isset($_GET["plugin_image_url"]) == true) { $plugin_image_url = preg_replace("/[\\:\\*\\?\\<\\>\\|]/", "", $_GET["plugin_image_url"]); }
else { $plugin_image_url = ""; }
if (isset($_GET["directory"]) == true) { $directory = preg_replace("/[\\:\\*\\?\\<\\>\\|]/", "", $_GET["directory"]); }
else { $directory = ""; }
$directory_js = javascriptEncode2($directory);
?>
function fileQueued(file, queuelength) {
var listingfiles = document.getElementById("SWFUploadFileListingFiles");
if(!listingfiles.getElementsByTagName("ul")[0]) {
// NET2FTP - do not print a title <h4>File queue</h4>
// var info = document.createElement("h4");
// info.appendChild(document.createTextNode("File queue"));
// listingfiles.appendChild(info);
var ul = document.createElement("ul")
listingfiles.appendChild(ul);
}
listingfiles = listingfiles.getElementsByTagName("ul")[0];
var li = document.createElement("li");
li.id = file.id;
li.className = "SWFUploadFileItem";
li.innerHTML = file.name + " <span class='progressBar' id='" + file.id + "progress'></span><a id='" + file.id + "deletebtn' class='cancelbtn' href='javascript:swfu.cancelFile(\"" + file.id + "\");'><!-- IE --></a>";
listingfiles.appendChild(li);
var queueinfo = document.getElementById("queueinfo");
queueinfo.innerHTML = queuelength + " files queued";
document.getElementById(swfu.movieName + "UploadBtn").style.display = "block";
document.getElementById("cancelqueuebtn").style.display = "block";
// NET2FTP - add "Clear queue" link
document.getElementById("clearqueuebtn").style.display = "block";
}
function uploadFileCancelled(file, queuelength) {
var li = document.getElementById(file.id);
li.innerHTML = file.name + " - cancelled";
li.className = "SWFUploadFileItem uploadCancelled";
var queueinfo = document.getElementById("queueinfo");
queueinfo.innerHTML = queuelength + " files queued";
}
function uploadFileStart(file, position, queuelength) {
var div = document.getElementById("queueinfo");
div.innerHTML = "Uploading file " + position + " of " + queuelength;
var li = document.getElementById(file.id);
li.className += " fileUploading";
}
function uploadProgress(file, bytesLoaded) {
var progress = document.getElementById(file.id + "progress");
var percent = Math.ceil((bytesLoaded / file.size) * 200)
progress.style.background = "#f0f0f0 url(<?php echo $plugin_image_url; ?>/progressbar.png) no-repeat -" + (200 - percent) + "px 0";
}
function uploadError(errno) {
// SWFUpload.debug(errno);
}
function uploadFileComplete(file) {
// NET2FTP - added this line to fix a bug as discussed on the forum
// http://swfupload.mammon.se/forum/viewtopic.php?id=144
uploadProgress(file, file.size);
var li = document.getElementById(file.id);
li.className = "SWFUploadFileItem uploadCompleted";
}
function cancelQueue() {
swfu.cancelQueue();
document.getElementById(swfu.movieName + "UploadBtn").style.display = "none";
document.getElementById("cancelqueuebtn").style.display = "none";
}
function uploadQueueComplete(file) {
var div = document.getElementById("queueinfo");
// NET2FTP - add link to refresh the page after the upload
div.innerHTML = "All files uploaded... <a href=\"javascript:submitBrowseForm('<?php echo $directory_js; ?>','','browse','main');\" title=\"Refresh (accesskey r)\" accesskey=\"r\" style=\"font-size: 80%;\">Refresh to view uploaded files</a>";
document.getElementById("cancelqueuebtn").style.display = "none";
}
// NET2FTP - add "Clear queue" link
// http://swfupload.mammon.se/forum/viewtopic.php?id=105
function clearQueue() {
// reset the queuelength
swfu.cancelQueue();
// hide the "upload queue" link (SWFUpload_0UploadBtn}
document.getElementById('SWFUpload_0UploadBtn').style.display = 'none';
// hide the "# files queued" text (queueinfo)
document.getElementById('queueinfo').innerHTML = 'Queue is empty';
// clear the file listing
document.getElementById('SWFUploadFileListingFiles').innerHTML = '';
// hide cancel queue
document.getElementById('cancelqueuebtn').style.display = 'none';
// hide clear queue
document.getElementById('clearqueuebtn').style.display = 'none';
}
<?php
// **************************************************************************************
// **************************************************************************************
// ** **
// ** **
function javascriptEncode2($string) {
// --------------
// Encode string characters which cause problems in Javascript
// <input type="button" onclick="alert('single quote \' single quote');" value="Test single"> OK <br /><br />
// <input type="button" onclick="alert('double quote &quot; double quote');" value="Test double"> OK <br /><br />
// <input type="button" onclick="alert('bs single \\\' bs single');" value="Test bs single"> OK <br /><br />
// <input type="button" onclick="alert('bs double \\\&quot; bs double');" value="Test bs double"> OK <br /><br />
// --------------
$singlequote = "'"; // '
$doublequote = "\""; // "
$backslash = "\\"; // \
$doublequote_html = "&quot;"; // &quot;
// Executing the 3 steps below in this order will convert:
// ' --> \' in step 2
// " --> &quot; in step 3
// \' --> \\\' in step 1 and 2
// \" --> \\\&quot; in step 1 and 3
$string = str_replace($backslash, "$backslash$backslash", $string);
$string = str_replace($singlequote, "$backslash$singlequote", $string);
$string = str_replace($doublequote, $doublequote_html, $string);
return $string;
} // end javascriptEncode2
// ** **
// ** **
// **************************************************************************************
// **************************************************************************************
?>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 795 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 694 B

View file

@ -1,7 +0,0 @@
/**
* mmSWFUpload 1.0: Flash upload dialog - http://profandesign.se/swfupload/
*
* SWFUpload is (c) 2006 Lars Huring and Mammon Media and is released under the MIT License:
* http://www.opensource.org/licenses/mit-license.php
*
*/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 972 B

View file

@ -1,20 +0,0 @@
<?php
header("Content-type: text/css");
if (isset($_GET["ltr"]) == true && $_GET["ltr"] != "rtl") { $left = "left"; $right = "right"; }
else { $left = "right"; $right = "left"; }
if (isset($_GET["image_url"]) == true) { $image_url = preg_replace("/[\\:\\*\\?\\<\\>\\|]/", "", $_GET["image_url"]); }
else { $image_url = ""; }
?>
.swfuploadbtn { display: block; width: 100px; padding: 0 0 0 30px; background-color: #FF0000; }
.browsebtn { background: url(<?php echo $image_url; ?>/add.png) no-repeat 0px 5px; padding: 5px 5px 5px 20px; }
.uploadbtn { background: url(<?php echo $image_url; ?>/accept.png) no-repeat 0px 5px; padding: 5px 5px 5px 20px; display: none; }
.cancelbtn { background: url(<?php echo $image_url; ?>/cancel.png) no-repeat 0px 5px; padding: 5px 5px 5px 20px; width: 16px; height: 16px; float: right; display: block; }
#cancelqueuebtn { background: url(<?php echo $image_url; ?>/cancel.png) no-repeat 0px 5px; padding: 5px 5px 5px 20px; display: none; }
#clearqueuebtn { background: url(<?php echo $image_url; ?>/cancel.png) no-repeat 0px 5px; padding: 5px 5px 5px 20px; display: none; }
#SWFUploadFileListingFiles ul { padding: 0; list-style: none; margin: 5px 20px 0px 20px; }
.SWFUploadFileItem { background: #eaefea; width: 200px; height: 60px; float: left; margin: 0px 10px 10px 0px; padding: 5px; display: block; }
.fileUploading { background: #fee727; }
.uploadCompleted { background: #d2fa7c; }
.uploadCancelled { background: #f77c7c; }
.uploadCompleted .cancelbtn, .uploadCancelled .cancelbtn { display: none; }
span.progressBar { background-color: #CCCCCC; width: 200px; font-size: 10px; height: 4px; margin-top: 2px; margin-bottom: 10px; display: block; }