1
0

Merge branch 'master' of git://github.com/Glooper/gallery3-contrib

Conflicts:
	modules/gwtorganise/controllers/json_album.php
This commit is contained in:
Bharat Mediratta 2010-03-06 20:36:53 -08:00
commit 214b362f29
149 changed files with 13560 additions and 13118 deletions

View File

@ -1,4 +1,4 @@
#Tue Jan 26 16:51:26 NZDT 2010
#Thu Feb 11 15:27:06 NZDT 2010
eclipse.preferences.version=1
entryPointModules=
filesCopiedToWebInfLib=gwt-servlet.jar

View File

@ -33,6 +33,13 @@ class Admin_Upload_Configure_Controller extends Controller
upload_configuration::extractForm($form);
message::success(t("GWTOrganise Module Configured!"));
print json_encode(array("result" => "success"));
return;
}
else
{
print json_encode(array("result" => "error", "form" => (string) $form));
return;
}
}
else

View File

@ -147,6 +147,7 @@ class Json_Album_Controller extends Controller {
}
public function add_photo($id) {
access::verify_csrf();
$album = ORM::factory("item", $id);
access::required("view", $album);
@ -180,40 +181,32 @@ class Json_Album_Controller extends Controller {
fclose($file);
$item = ORM::factory("item");
$item->name = basename($temp_filename); // Skip unique identifier Kohana adds
$item->title = item::convert_filename_to_title($item->name);
$item->parent_id = $album->id;
$item->set_data_file($temp_filename);
$title = item::convert_filename_to_title($name);
$path_info = @pathinfo($temp_filename);
if (array_key_exists("extension", $path_info) &&
in_array(strtolower($path_info["extension"]), array("flv", "mp4"))) {
$item = ORM::factory("item");
$item->type = "movie";
$item->parent_id = $album->id;
$item->set_data_file($temp_filename);
$item->name = $name;
$item->title = $title;
$item->save();
log::success("content", t("Added a movie"),
html::anchor("movies/$item->id", t("view movie")));
} else {
$item = ORM::factory("item");
$item->type = "photo";
$item->parent_id = $album->id;
$item->set_data_file($temp_filename);
$item->name = $name;
$item->title = $title;
$item->save();
log::success("content", t("Added a photo"),
html::anchor("photos/$item->id", t("view photo")));
}
} catch (Exception $e) {
} catch (Exception $e) {
Kohana::log("alert", $e->__toString());
if (file_exists($temp_filename)) {
unlink($temp_filename);
}
header("HTTP/1.1 500 Internal Server Error");
print "ERROR: " . $e->getMessage();
return;
throw new Kohana_Exception('Problem creating file.'. $e->__toString());
}
unlink($temp_filename);

View File

@ -19,16 +19,13 @@
*/
class gwtorganise_event_Core{
/**
* adds the shopping basket administration controls to the admin menu
*/
static function admin_menu($menu, $theme){
$menu->add_after("users_groups",
Menu::factory("link")
static function admin_menu($menu, $theme) {
$menu->add_after("dashboard",
Menu::factory("link")
->id("gwtorganise")
->label(t("GWT Organise"))
->url(url::site("admin/gwtorganise")));
}
}

View File

@ -29,5 +29,5 @@
<when-property-is name="user.agent" value="ie8" />
</any>
</replace-with>
</module>

View File

@ -54,14 +54,15 @@ public class Album extends TreeItem {
private final Map<Integer, Album> m_IDtoAlbum = new HashMap<Integer, Album>();
private final LinkedList<UploadFile> m_UploadQueue = new LinkedList<UploadFile>();
private boolean m_Running = false;
private final Set<UploadFile> m_AllUploads = new HashSet<UploadFile>();
private final AlbumTreeDropController m_DropController;
private final UploadControl m_UploadControl;
public Album(JSONObject jsonObject, G3Viewer a_Container)
{
m_UploadControl = a_Container.getUploadControl();
m_ID = Utils.extractId(jsonObject.get("id"));
m_Title = ((JSONString)jsonObject.get("title")).stringValue();
m_Sort = ((JSONString)jsonObject.get("sort")).stringValue();
@ -75,6 +76,7 @@ public class Album extends TreeItem {
public Album(G3Viewer a_Container)
{
m_UploadControl = a_Container.getUploadControl();
m_ID = 1;
m_Title = "Root";
m_Container = a_Container;
@ -109,7 +111,7 @@ public class Album extends TreeItem {
public void success(JSONValue aValue) {
updateValues(aValue);
}
},false);
},false,true);
}
@ -281,7 +283,7 @@ public class Album extends TreeItem {
m_View.getCurrentAlbum().expand();
m_View.getCurrentAlbum().select();
}
},true);
},true,true);
}
/**
@ -300,7 +302,7 @@ public class Album extends TreeItem {
public void success(JSONValue aValue) {
m_View.getCurrentAlbum().select();
}
},true);
},true,true);
}
@ -331,7 +333,7 @@ public class Album extends TreeItem {
public void success(JSONValue aValue) {
addAlbums(aValue);
}
},false);
},false,true);
}
@ -344,7 +346,7 @@ public class Album extends TreeItem {
public void success(JSONValue aValue) {
viewAlbum(aValue);
}
},false);
},false,true);
}
@ -433,68 +435,53 @@ public class Album extends TreeItem {
ResizeOptions ro = new ResizeOptions(jso);
UploadFile uf;
for (File file : files){
uf = new UploadFile(Album.this, file, ro);
uf = m_UploadControl.createUploadFile(Album.this, file, ro);
m_AllUploads.add(uf);
m_View.addToView(uf);
m_UploadQueue.addLast(uf);
m_Container.addUpload(uf);
}
if (!m_Running){
m_Running = true;
next();
}
m_Container.updateInformation();
}
}
},false);
},false,true);
}
public void addPendingDownloads()
public void removeUpload(UploadFile a_Uf)
{
for (UploadFile uf: m_UploadQueue)
{
m_View.addToView(uf);
}
m_AllUploads.remove(a_Uf);
}
public void finishedUpload(UploadFile uf, JSONValue a_Return)
{
m_UploadQueue.remove(uf);
m_Container.removeUpload(uf);
next();
public void replaceUpload(UploadFile a_Uf, JSONValue a_Return)
{
m_AllUploads.remove(a_Uf);
JSONObject jo = a_Return.isObject();
if (jo != null){
Item item = new Item(this,jo,m_Container);
m_IDtoItem.put(item.getID(), item);
m_Items.add(item);
if (m_View.getCurrentAlbum() == this){
m_View.replaceInView(uf, item);
m_View.replaceInView(a_Uf, item);
}
}
else
{
if (m_View.getCurrentAlbum() == this){
m_View.removeFromView(uf);
m_View.removeFromView(a_Uf);
}
}
}
private void next()
public void addPendingDownloads()
{
if (m_UploadQueue.size() > 0)
for (UploadFile uf: m_AllUploads)
{
UploadFile uf = m_UploadQueue.getFirst();
uf.startUpload();
}
else
{
m_Running = false;
m_View.addToView(uf);
}
}
}

View File

@ -30,29 +30,28 @@ public class AsyncResizer implements RunAsyncCallback{
Canvas upThumb = com.gloopics.g3viewer.client.canvas.Factory.getInstance().createCanvas();
upThumb.decode(m_Blob);
float imageWidth = (float)upThumb.getWidth();
float imageHeight = (float)upThumb.getHeight();
int imageWidth = upThumb.getWidth();
int imageHeight = upThumb.getHeight();
int widthRatio = imageWidth/m_ResizeOptions.getMaxWidth();
int heightRatio = imageHeight/m_ResizeOptions.getMaxHeight();
float widthRatio = imageWidth/((float)m_ResizeOptions.getMaxWidth());
float heightRatio = imageHeight/((float)m_ResizeOptions.getMaxHeight());
if (widthRatio > heightRatio){
if (widthRatio > 1) {
upThumb.resize(m_ResizeOptions.getMaxWidth(), imageHeight / widthRatio );
upThumb.resize(m_ResizeOptions.getMaxWidth(), (int)(imageHeight / widthRatio) );
m_UploadFile.uploadBlob(upThumb.encode());
return;
}
m_UploadFile.uploadBlob(m_Blob);
}
else
{
if (heightRatio > 1){
upThumb.resize(imageWidth / heightRatio, m_ResizeOptions.getMaxHeight());
upThumb.resize((int)(imageWidth / heightRatio), m_ResizeOptions.getMaxHeight());
m_UploadFile.uploadBlob(upThumb.encode());
return;
}
m_UploadFile.uploadBlob(m_Blob);
}
}
}

View File

@ -0,0 +1,23 @@
package com.gloopics.g3viewer.client;
import com.google.gwt.core.client.RunAsyncCallback;
public class AsyncRunner implements RunAsyncCallback{
private final Runnable m_Runnable;
public AsyncRunner(Runnable a_Runnable){
m_Runnable = a_Runnable;
}
@Override
public void onFailure(Throwable reason) {
G3Viewer.displayError("Error Running Async", reason.toString());
}
@Override
public void onSuccess() {
m_Runnable.run();
}
}

View File

@ -61,7 +61,9 @@ public class G3Viewer {
DockPanel dp = new DockPanel();
dp.addStyleName("error");
dp.add(new HTML(error), DockPanel.CENTER);
error = error.replaceAll("<", "&lt;").replaceAll(">", "&gt;");
dp.add(new HTML("<pre>" + error + "</pre>"), DockPanel.CENTER);
// DialogBox is a SimplePanel, so you have to set its widget property to
@ -154,7 +156,7 @@ public class G3Viewer {
/**
* the only dialog box
*/
private final HttpDialogBox m_HttpDialogBox= new HttpDialogBox();
private final HttpDialogBox m_HttpDialogBox= new HttpDialogBox(this);
private class SimplePanelEx extends SimplePanel
{
@ -223,6 +225,11 @@ public class G3Viewer {
*/
private final PickupDragController m_DragController;
/**
* the upload control
*/
private final UploadControl m_UploadControl;
/**
* constructor
*/
@ -232,14 +239,19 @@ public class G3Viewer {
m_DragController.setBehaviorMultipleSelection(true);
m_DragController.setBehaviorDragStartSensitivity(5);
m_DragController.setBehaviorDragProxy(true);
m_InfoBar = new InformationBar(this);
m_UploadControl = new UploadControl(this);
m_InfoBar = new InformationBar(this, m_UploadControl);
m_Tree = new AlbumTree(this);
checkAdmin();
}
public UploadControl getUploadControl()
{
return m_UploadControl;
}
public static String getCSRF()
{
return m_CSRF;
@ -275,7 +287,7 @@ public class G3Viewer {
}
});
}
},false);
},false,true);
}
@ -307,15 +319,10 @@ public class G3Viewer {
return m_View;
}
public void addUpload(UploadFile a_UF){
m_InfoBar.addUpload(a_UF);
public void updateInformation(){
m_InfoBar.updateInformation();
}
public void removeUpload(UploadFile a_UF){
m_InfoBar.removeUpload(a_UF);
}
public void doDialog(String a_Url, HttpDialogHandler a_Handler)
{
m_HttpDialogBox.doDialog(BASE_URL + a_Url, a_Handler);
@ -326,10 +333,16 @@ public class G3Viewer {
m_ImageDialogBox.doDialog( a_Url);
}
public void doJSONRequest(final String a_URL, final HttpSuccessHandler a_Handler, final boolean a_hasParams){
public void doJSONRequest(final String a_URL, final HttpSuccessHandler a_Handler, final boolean a_hasParams, final boolean a_IncludeCSRF){
doJSONRequest(a_URL, a_Handler, a_hasParams, a_IncludeCSRF, "");
}
public void doJSONRequest(final String a_URL, final HttpSuccessHandler a_Handler, final boolean a_hasParams, final boolean a_IncludeCSRF,
String a_Data ){
try {
String url;
if (m_CSRF != null)
if (m_CSRF != null && a_IncludeCSRF)
{
url = a_URL + (a_hasParams?"&csrf=":"?csrf=") + m_CSRF;
}
@ -338,7 +351,9 @@ public class G3Viewer {
url = a_URL;
}
RequestBuilder requestBuilder = new RequestBuilder(
RequestBuilder.GET, url);
RequestBuilder.POST, url);
requestBuilder.setHeader("Content-Type", "application/x-www-form-urlencoded");
requestBuilder.setHeader("X-Requested-With", "XMLHttpRequest");
requestBuilder.setCallback(new JSONResponseTextHandler(
new JSONResponseCallback() {
@ -370,6 +385,7 @@ public class G3Viewer {
}}
));
requestBuilder.setRequestData(a_Data);
requestBuilder.send();
} catch (RequestException ex) {
displayError("Request Exception", ex.toString() + " - " + a_URL);

View File

@ -8,8 +8,11 @@ import com.google.gwt.http.client.Request;
import com.google.gwt.http.client.RequestBuilder;
import com.google.gwt.http.client.RequestCallback;
import com.google.gwt.http.client.RequestException;
import com.google.gwt.http.client.RequestTimeoutException;
import com.google.gwt.http.client.Response;
import com.google.gwt.json.client.JSONObject;
import com.google.gwt.json.client.JSONValue;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
@ -17,8 +20,6 @@ import com.google.gwt.user.client.ui.DockPanel;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.FormPanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.FormPanel.SubmitCompleteEvent;
import com.google.gwt.user.client.ui.FormPanel.SubmitCompleteHandler;
public class HttpDialogBox extends DialogBox{
@ -27,8 +28,10 @@ public class HttpDialogBox extends DialogBox{
private HttpDialogHandler m_Callback;
private final HTML m_Dialog;
private final G3Viewer m_Parent;
public HttpDialogBox(){
public HttpDialogBox(G3Viewer a_Parent){
m_Parent = a_Parent;
m_Dialog = new HTML("Empty");
initComponents();
}
@ -54,12 +57,9 @@ public class HttpDialogBox extends DialogBox{
public void onClick(ClickEvent event) {
if (m_FormPanel!=null)
{
m_FormPanel.submit();
}
else
{
submitForm();
}
HttpDialogBox.this.hide();
Loading.getInstance().loading("Please Wait..");
}
@ -88,11 +88,6 @@ public class HttpDialogBox extends DialogBox{
}
public void onError(Request request, Throwable exception) {
if (exception instanceof RequestTimeoutException) {
// handle a request timeout
} else {
// handle other request errors
}
showDialog("Could not get " + m_URL + " Exception thrown " + exception.toString());
}
@ -101,11 +96,113 @@ public class HttpDialogBox extends DialogBox{
showDialog(response.getText());
} else {
showDialog(m_URL + response.getText());
// handle non-OK response from the server
}
}
}
public native static String createData(Element form) /*-{
var fieldValue = function(el, successful) {
var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
if (typeof successful == 'undefined') successful = true;
if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
(t == 'checkbox' || t == 'radio') && !el.checked ||
(t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
tag == 'select' && el.selectedIndex == -1))
return null;
if (tag == 'select') {
var index = el.selectedIndex;
if (index < 0) return null;
var a = [], ops = el.options;
var one = (t == 'select-one');
var max = (one ? index+1 : ops.length);
for(var i=(one ? index : 0); i < max; i++) {
var op = ops[i];
if (op.selected) {
var v = op.value;
if (!v) // extra pain for IE...
v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
if (one) return v;
a.push(v);
}
}
return a;
}
return el.value;
};
var a = "";
var added = false;
var appendA = function(str)
{
if(added)
{
a = a+"&"+str;
}
else
{
a = a+str;
added = true;
}
}
var els = form.getElementsByTagName('*'); //: form.elements;
if (!els) return a;
for(var i=0, max=els.length; i < max; i++) {
var el = els[i];
var n = el.name;
if (!n) continue;
var v = fieldValue(el, true);
if (v && v.constructor == Array) {
for(var j=0, jmax=v.length; j < jmax; j++)
appendA(n+"="+escape(v[j]));
}
else if (v !== null && typeof v != 'undefined')
appendA(n+"="+escape(v));
}
return a;
}-*/;
private void submitForm(){
String url = m_FormPanel.getAction();
String data = createData(m_FormPanel.getElement());
m_Parent.doJSONRequest(url, new HttpSuccessHandler() {
@Override
public void success(JSONValue aValue) {
JSONObject object = aValue.isObject();
if (object != null){
JSONValue result = object.get("result");
if (result != null)
{
if (result.isString().stringValue().equals("success")){
m_Callback.success(aValue.toString());
Loading.getInstance().endLoading();
}
else{
JSONValue resul = object.get("form");
showDialog(resul.isString().stringValue());
}
}
else
{
G3Viewer.displayError("result was null ", aValue.toString() );
}
} else {
G3Viewer.displayError("Only JSON Value Returned ", aValue.toString() );
}
}
}, false ,false, data);
}
private void showDialog(String a_Text){
m_Dialog.setHTML(a_Text);
@ -132,27 +229,49 @@ public class HttpDialogBox extends DialogBox{
Element element = this.getElement().getElementsByTagName("form").getItem(0);
setText(element.getElementsByTagName("legend").getItem(0).getInnerText());
m_FormPanel = FormPanel.wrap(element, true);
m_FormPanel.addSubmitCompleteHandler(new SubmitCompleteHandler() {
@Override
public void onSubmitComplete(SubmitCompleteEvent event) {
m_Callback.success(event.getResults());
Loading.getInstance().endLoading();
}
});
}
else
{
setText(this.getElement().getElementsByTagName("legend").getItem(0).getInnerText());
m_FormPanel = null;
}
setPopupPosition(Window.getClientWidth() / 2 - this.getOffsetWidth() / 2,
Window.getClientHeight() / 2 - this.getOffsetHeight() / 2);
Timer t = new Timer(){
public void run(){
// find any scripts if they exist
NodeList<Element> scripts = HttpDialogBox.this.getElement().getElementsByTagName("script");
for (int i = 0; i < scripts.getLength(); i++ )
{
Element script = scripts.getItem(i);
script.removeFromParent();
Element nscript = DOM.createElement("script");
nscript.setAttribute("type", script.getAttribute("type"));
nscript.setAttribute("src", script.getAttribute("src"));
getElementByTagName("head").appendChild(nscript);
}
}
};
t.schedule(10);
}
/**
* Gets an element by its tag name; handy for single elements like HTML,
* HEAD, BODY.
* @param tagName The name of the tag.
* @return The element with that tag name.
*/
public native static Element getElementByTagName(String tagName) /*-{
var elem = $doc.getElementsByTagName(tagName);
return elem ? elem[0] : null;
}-*/;
public void doDialog(String url, HttpDialogHandler a_Callback){
m_Callback = a_Callback;
Loading.getInstance().loading("Please Wait");

View File

@ -16,9 +16,11 @@ public class InformationBar extends FlowPanel{
private final Label m_Label = new Label();
private final Set<UploadFile> m_Uploads = new HashSet<UploadFile>();
private final UploadControl m_UploadControl;
public InformationBar(G3Viewer a_Container){
public InformationBar(G3Viewer a_Container, UploadControl a_UploadControl){
m_UploadControl = a_UploadControl;
m_Container = a_Container;
setStylePrimaryName("infobar");
}
@ -45,9 +47,9 @@ public class InformationBar extends FlowPanel{
add(m_Label);
}
private void updateInformation()
public void updateInformation()
{
int size = m_Uploads.size();
int size = m_UploadControl.size();
if (size == 0){
m_Label.setText("");
}
@ -62,16 +64,4 @@ public class InformationBar extends FlowPanel{
}
}
public void addUpload(UploadFile a_Upload)
{
m_Uploads.add(a_Upload);
updateInformation();
}
public void removeUpload(UploadFile a_Upload)
{
m_Uploads.remove(a_Upload);
updateInformation();
}
}

View File

@ -181,7 +181,7 @@ public class Item extends Composite implements HasAllMouseHandlers, DesktopDropp
public void success(JSONValue aValue) {
updateValues(aValue);
}
},false);
},false,true);
}
@ -255,7 +255,7 @@ public class Item extends Composite implements HasAllMouseHandlers, DesktopDropp
public void success(JSONValue aValue) {
// nothing to do
}
},false);
},false,true);
popupPanel.hide();
}
});
@ -273,7 +273,7 @@ public class Item extends Composite implements HasAllMouseHandlers, DesktopDropp
public void success(JSONValue aValue) {
updateImages(aValue);
}
},false);
},false,true);
popupPanel.hide();
}
});
@ -289,7 +289,7 @@ public class Item extends Composite implements HasAllMouseHandlers, DesktopDropp
public void success(JSONValue aValue) {
updateImages(aValue);
}
},false);
},false,true);
popupPanel.hide();
}
});

View File

@ -0,0 +1,107 @@
package com.gloopics.g3viewer.client;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.Set;
import com.google.gwt.gears.client.desktop.File;
import com.google.gwt.json.client.JSONObject;
import com.google.gwt.json.client.JSONValue;
public class UploadControl {
private final LinkedList<UploadFile> m_PrepareUploadQueue = new LinkedList<UploadFile>();
private final LinkedList<UploadFile> m_UploadQueue = new LinkedList<UploadFile>();
private final Set<UploadFile> m_Uploads = new HashSet<UploadFile>();
private boolean m_Running = false;
private boolean m_PrepareRunning = false;
private final G3Viewer m_Container;
public UploadControl(G3Viewer a_Container){
m_Container = a_Container;
}
public UploadFile createUploadFile(Album a_Album, File a_File, ResizeOptions a_ResizeOptions)
{
UploadFile uf = new UploadFile(this, a_Album, a_File, a_ResizeOptions);
m_Uploads.add(uf);
m_PrepareUploadQueue.addLast(uf);
prepareNext();
return uf;
}
private void cleanupUpload(UploadFile uf)
{
m_Uploads.remove(uf);
prepareNext();
next();
m_Container.updateInformation();
}
public int size()
{
return m_Uploads.size();
}
public void finishedUploadWithError(UploadFile uf)
{
cleanupUpload(uf);
}
public void finishedUpload(UploadFile uf)
{
cleanupUpload(uf);
}
private void next()
{
if (m_UploadQueue.size() > 0)
{
UploadFile uf = m_UploadQueue.removeFirst();
uf.startUpload();
}
else
{
m_Running = false;
}
}
private void prepareNext()
{
if (!m_PrepareRunning)
{
if ((m_PrepareUploadQueue.size() > 0) && (m_UploadQueue.size() < 10))
{
UploadFile uf = m_PrepareUploadQueue.removeFirst();
m_PrepareRunning = true;
uf.prepareUpload();
}
else
{
m_PrepareRunning = false;
}
}
}
public void finishedPrepare(UploadFile a_UploadFile)
{
m_UploadQueue.addLast(a_UploadFile);
if (!m_Running)
{
m_Running = true;
next();
}
m_PrepareRunning = false;
prepareNext();
}
}

View File

@ -44,13 +44,19 @@ public class UploadFile extends Composite{
private final Album m_Parent;
private final Blob m_Blob;
private Blob m_Blob;
//private final Canvas m_UpThumb;
private final Label m_Label = new Label("Pending..");
private final ProgressBar m_ProgressBar = new ProgressBar();
//private final Image m_Image;
private final File m_File;
private final SimplePanel m_ImageContainer;
private final UploadControl m_UploadControl;
/**
* Loads an image into this Canvas, replacing the Canvas' current dimensions
@ -72,17 +78,19 @@ public class UploadFile extends Composite{
rs.remove(a_Url);
}-*/;
public UploadFile(Album a_Parent, File a_File, ResizeOptions a_ResizeOptions){
public UploadFile(UploadControl a_UploadControl, Album a_Parent, File a_File, ResizeOptions a_ResizeOptions){
m_UploadControl = a_UploadControl;
m_File = a_File;
m_ResizeOptions = a_ResizeOptions;
m_Parent = a_Parent;
m_Name = a_File.getName();
m_Blob = a_File.getBlob();
captureBlob(RS, m_Blob , m_Name);
Image img = new Image(m_Name);
FlowPanel dp = new FlowPanel();
dp.add(img);
m_ImageContainer = new SimplePanel();
m_ImageContainer.setWidget(new Label(m_Name));
dp.add(m_ImageContainer);
dp.add(m_ProgressBar);
dp.add(m_Label);
@ -116,18 +124,25 @@ public class UploadFile extends Composite{
if (request.getStatus() != 200)
{
G3Viewer.displayError("Upload Error", request.getResponseText() + request.getStatus() + request.getStatusText());
m_Label.setText("Upload Error");
addStyleName("upload-error");
}
removeCapture(RS, m_Name);
try{
JSONValue jv = JSONParser.parse(request.getResponseText());
m_Parent.finishedUpload(UploadFile.this, jv);
}
catch (Exception e){
G3Viewer.displayError("Exception on Upload", e.toString() + " " + request.getResponseText());
if (request.getStatus() == 200)
{
try{
JSONValue jv = JSONParser.parse(request.getResponseText());
m_UploadControl.finishedUpload(UploadFile.this);
m_Parent.replaceUpload(UploadFile.this, jv);
return;
}
catch (Exception e){
G3Viewer.displayError("Exception on Upload", e.toString() + " " + request.getResponseText());
}
}
m_Parent.removeUpload(UploadFile.this);
m_UploadControl.finishedUploadWithError(UploadFile.this);
}
});
@ -140,6 +155,22 @@ public class UploadFile extends Composite{
return m_ResizeOptions;
}
public void prepareUpload(){
GWT.runAsync(new AsyncRunner(new Runnable() {
@Override
public void run() {
m_Blob = m_File.getBlob();
captureBlob(RS, m_Blob , m_Name);
Image img = new Image(m_Name);
m_ImageContainer.setWidget(img);
m_UploadControl.finishedPrepare(UploadFile.this);
}
}));
}
public void startUpload(){
if (m_ResizeOptions.isResize())

View File

@ -4,6 +4,7 @@
.error {width:300px; height:200px;}
.upload-error {background-color: #FFAAAA;}
.item {width:100px; height: 130px; padding:3px; border: 2px solid #FFF; overflow: hidden; float:left; text-align:center; position:relative;margin:3px;}
.item img{max-width:96px; max-height:76px; *width:96px; *height:76px; border:2px solid #AAA;}
.item h3{font-size:10px; font-weight:normal; position:absolute; bottom:5px; left:0px; width:100%; text-align:center; padding:0; margin:0;}

View File

@ -29,5 +29,5 @@
<when-property-is name="user.agent" value="ie8" />
</any>
</replace-with>
</module>

View File

@ -4,6 +4,7 @@
.error {width:300px; height:200px;}
.upload-error {background-color: #FFAAAA;}
.item {width:100px; height: 130px; padding:3px; border: 2px solid #FFF; overflow: hidden; float:left; text-align:center; position:relative;margin:3px;}
.item img{max-width:96px; max-height:76px; *width:96px; *height:76px; border:2px solid #AAA;}
.item h3{font-size:10px; font-weight:normal; position:absolute; bottom:5px; left:0px; width:100%; text-align:center; padding:0; margin:0;}

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,7 @@
.error {width:300px; height:200px;}
.upload-error {background-color: #FFAAAA;}
.item {width:100px; height: 130px; padding:3px; border: 2px solid #FFF; overflow: hidden; float:left; text-align:center; position:relative;margin:3px;}
.item img{max-width:96px; max-height:76px; *width:96px; *height:76px; border:2px solid #AAA;}
.item h3{font-size:10px; font-weight:normal; position:absolute; bottom:5px; left:0px; width:100%; text-align:center; padding:0; margin:0;}

View File

@ -1,6 +0,0 @@
function sS(){}
function ES(){return dP}
function IS(){var a;while(xS){a=xS;xS=xS.c;!xS&&(yS=null);qo(a.b)}}
function FS(){AS=true;zS=(CS(),new sS);jy((gy(),fy),1);!!$stats&&$stats(Py(irb,kib,null,null));zS.ac();!!$stats&&$stats(Py(irb,jrb,null,null))}
function qo(a){var b,c,d,e,f;e=($wnd.google&&$wnd.google.gears&&$wnd.google.gears.factory).create(hrb);e.decode(a.b);d=e.width;c=e.height;f=~~(d/a.c.c);b=~~(c/a.c.b);if(f>b){if(f>1){e.resize(a.c.c,~~(c/f));fv(a.d,e.encode())}}else{if(b>1){e.resize(~~(d/b),a.c.b);fv(a.d,e.encode())}}}
var krb='AsyncLoader1',hrb='beta.canvas',irb='runCallbacks1';_=sS.prototype=new tS;_.gC=ES;_.ac=IS;_.tI=0;var dP=P3(Xob,krb);FS();

View File

@ -1,4 +0,0 @@
function ry(){my(fy)}
function my(a){jy(a,a.e)}
function jy(a,b){var c;c=b==a.e?iib:jib+b;oy(c,jrb,O4(b),null);if(ly(a,b)){Ay(a.f);Y6(a.b,O4(b));qy(a)}}
var jrb='end';ry();

View File

@ -0,0 +1,7 @@
function _g(){}
function Zg(){}
function eh(){}
function Yg(){}
function bh(){bh=wp;ah=new Zg}
function dh(){ah=(bh(),new Yg);dc((ac(),_b),1);!!$stats&&$stats(Fc(Qr,Rr,null,null));ah.m();!!$stats&&$stats(Fc(Qr,Sr,null,null))}
var Qr='runCallbacks1';_=Zg.prototype=new O;_.m=_g;_.tI=0;_=Yg.prototype=new Zg;_.m=eh;_.tI=0;var ah;dh();

View File

@ -0,0 +1,7 @@
function ih(){}
function gh(){}
function nh(){}
function fh(){}
function kh(){kh=wp;jh=new gh}
function mh(){jh=(kh(),new fh);dc((ac(),_b),2);!!$stats&&$stats(Fc(Tr,Rr,null,null));jh.m();!!$stats&&$stats(Fc(Tr,Sr,null,null))}
var Tr='runCallbacks2';_=gh.prototype=new O;_.m=ih;_.tI=0;_=fh.prototype=new gh;_.m=nh;_.tI=0;var jh;mh();

View File

@ -0,0 +1,75 @@
function $b(){}
function lc(){}
function uc(){}
function xc(){}
function Nc(){}
function Qk(){}
function Pk(){}
function Cn(){}
function Jn(){}
function On(){}
function Eo(){}
function Po(){}
function Yo(){}
function kc(){fc(_b)}
function fc(a){dc(a,a.c)}
function Bc(a){Ac(this,a)}
function qc(a){a.b=0;a.c=0}
function tc(a){return a.c-a.b}
function Vk(){return this.a}
function Wk(){return this.a}
function Oo(){return this.b}
function Xo(){return Vo(this)}
function rc(a){return a.a[a.b]}
function pc(a,b){a.a[a.c++]=b}
function wc(a,b){Hd();return a}
function zc(a,b){a.a=b;return a}
function Tk(a,b){a.a=b;return a}
function Ln(a,b){a.a=b;return a}
function Sn(){return Jo(this,0)}
function In(){return this.b.a.d}
function sc(a){return a.a[a.b++]}
function Mn(){return jn(this.a.a)}
function Gn(a){return Yl(this.a,a)}
function Wo(){return this.b!=this.d.a}
function $o(a){a.a=a.b=a;return a}
function Pc(a,b,c){a.b=b;a.a=c;return a}
function En(a,b,c){a.a=b;a.b=c;return a}
function No(a){return _o(new Yo,a,this.a),++this.b,true}
function Mo(a){if(a.b==0){throw pp(new np)}}
function Go(a){a.a=$o(new Yo);a.b=0;return a}
function Io(a,b,c){_o(new Yo,b,c);++a.b}
function So(a,b,c,d){a.d=d;a.b=c;a.a=b;return a}
function _o(a,b,c){a.c=b;a.a=c;a.b=c.b;c.b.a=a;c.b=a;return a}
function oc(a,b){a.a=_f(Cg,0,-1,b,1);return a}
function $k(){$k=wp;Zk=_f(Eg,0,12,256,0)}
function ac(){ac=wp;_b=cc(new $b,3,ag(Cg,0,-1,[]))}
function Ol(a){var b;b=rm(new lm,a);return En(new Cn,a,b)}
function Nn(){var a;a=pg(kn(this.a.a),20).D();return a}
function Hn(){var a;a=Am(new ym,this.b.a);return Ln(new Jn,a)}
function Qn(a,b){var c;c=Jo(this,a);Io(c.d,b,c.b);++c.a;c.c=null}
function Ko(a){var b;Mo(a);--a.b;b=a.a.a;b.a.b=b.b;b.b.a=b.a;b.a=b.b=b;return b.c}
function Uk(a){return a!=null&&ng(a.tI,12)&&pg(a,12).a==this.a}
function nk(b){var a=b;$wnd.setTimeout(function(){a.onreadystatechange=new Function},0)}
function tk(c,a){var b=c;c.onreadystatechange=$entry(function(){a.i(b)})}
function Xl(e,a){var b=e.e;for(var c in b){if(c.charCodeAt(0)==58){var d=b[c];if(e.B(a,d)){return true}}}return false}
function Lc(b,c){function d(a){c.h(a)}
return __gwtStartLoadingFragment(b,d)}
function Yl(a,b){if(a.c&&qo(a.b,b)){return true}else if(Xl(a,b)){return true}else if(Vl(a,b)){return true}return false}
function Vo(a){if(a.b==a.d.a){throw pp(new np)}a.c=a.b;a.b=a.b.a;++a.a;return a.c.c}
function cc(a,b,c){ac();a.a=po(new no);a.f=Go(new Eo);a.c=b;a.b=c;a.e=oc(new lc,b+1);return a}
function Mc(a,b){var c,d;c=Lc(a,b);if(c==null){return}d=uk();d.open(Xr,c,true);tk(d,Pc(new Nc,d,b));d.send(null)}
function dc(a,b){var c;c=b==a.c?Ur:Vr+b;hc(c,Sr,Xk(b),null);if(ec(a,b)){sc(a.d);gm(a.a,Xk(b));jc(a)}}
function Jo(a,b){var c,d;(b<0||b>a.b)&&cn(b,a.b);if(b>=a.b>>1){d=a.a;for(c=a.b;c>b;--c){d=d.b}}else{d=a.a.a;for(c=0;c<b;++c){d=d.a}}return So(new Po,b,d,a)}
function Rn(b){var a,d;d=Jo(this,b);try{return Vo(d)}catch(a){a=Og(a);if(sg(a,23)){throw Ok(new Lk,$r+b)}else throw a}}
function hc(a,b,c,d){!!$stats&&$stats(Fc(a,b,c,d))}
function Xk(a){var b,c;if(a>-129&&a<128){b=a+128;c=($k(),Zk)[b];!c&&(c=Zk[b]=Tk(new Pk,a));return c}return Tk(new Pk,a)}
function Vl(i,a){var b=i.a;for(var c in b){if(c==parseInt(c)){var d=b[c];for(var e=0,f=d.length;e<f;++e){var g=d[e];var h=g.D();if(i.B(a,h)){return true}}}}return false}
function ec(a,b){var c,d,e,f;if(b==a.c){return true}for(d=a.b,e=0,f=d.length;e<f;++e){c=d[e];if(c==b){return true}}return false}
function uk(){if($wnd.XMLHttpRequest){return new XMLHttpRequest}else{try{return new ActiveXObject(Yr)}catch(a){return new ActiveXObject(Zr)}}}
function Ac(b,c){var a,e,f,g,h,i;h=Wn(new Tn);while(tc(b.a.e)>0){Xn(h,pg(Ko(b.a.f),2));sc(b.a.e)}qc(b.a.e);Zn(h,Ol(b.a.a));Ul(b.a.a);i=null;for(g=hn(new en,h);g.a<g.b.z();){f=pg(kn(g),2);try{Ac(f,c)}catch(a){a=Og(a);if(sg(a,3)){e=a;i=e}else throw a}}if(i){throw i}}
function Zn(a,b){if(b.b.a.d==0){return false}Array.prototype.splice.apply(a.a,[a.b,0].concat(Gl(b,_f(Fg,0,0,b.b.a.d,0))));a.b+=b.b.a.d;return true}
function Qc(b){var a,d;if(this.b.readyState==4){nk(this.b);if((this.b.status==200||this.b.status==0)&&this.b.responseText!=null&&this.b.responseText.length!=0){try{__gwtInstallCode(this.b.responseText)}catch(a){a=Og(a);if(sg(a,3)){d=a;Ac(this.a,d)}else throw a}}else{Ac(this.a,wc(new uc,this.b.status))}}}
function Fc(a,b,c,d){var e={moduleName:$moduleName,sessionId:$sessionId,subSystem:Wr,evtGroup:a,millis:(new Date).getTime(),type:b};c!=null&&(e.fragment=c.w());d!=null&&(e.size=d.w());return e}
function jc(a){var b,c,d,e,f,g;if(!a.d){a.d=oc(new lc,a.b.length+1);for(e=a.b,f=0,g=e.length;f<g;++f){d=e[f];pc(a.d,d)}pc(a.d,a.c)}if(a.a.d==0&&a.f.b==0&&tc(a.d)>1){return}if(tc(a.d)>0){c=rc(a.d);hc(c==a.c?Ur:Vr+c,Rr,Xk(c),null);Mc(c,zc(new xc,a));return}while(tc(a.e)>0){c=sc(a.e);b=pg(Ko(a.f),2);hc(c==a.c?Ur:Vr+c,Rr,Xk(c),null);Mc(c,b)}}
var $r="Can't get element ",Xr='GET',Yr='MSXML2.XMLHTTP.3.0',Zr='Microsoft.XMLHTTP',Rr='begin',Vr='download',Sr='end',Ur='leftoversDownload',Wr='runAsync';_=$b.prototype=new O;_.tI=0;_.b=null;_.c=0;_.d=null;_.e=null;var _b;_=lc.prototype=new O;_.tI=0;_.a=null;_.b=0;_.c=0;_=uc.prototype=new mb;_.tI=7;_=xc.prototype=new O;_.h=Bc;_.tI=8;_.a=null;_=Nc.prototype=new O;_.i=Qc;_.tI=0;_.a=null;_.b=null;_=Qk.prototype=new O;_.tI=27;_=Pk.prototype=new Qk;_.eQ=Uk;_.hC=Vk;_.w=Wk;_.tI=30;_.a=0;var Zk;_=Cn.prototype=new Dl;_.y=Gn;_.s=Hn;_.z=In;_.tI=0;_.a=null;_.b=null;_=Jn.prototype=new O;_.u=Mn;_.v=Nn;_.tI=0;_.a=null;_=On.prototype=new Wm;_.F=Qn;_.G=Rn;_.s=Sn;_.tI=41;_=Eo.prototype=new On;_.x=No;_.z=Oo;_.tI=45;_.a=null;_.b=0;_=Po.prototype=new O;_.u=Wo;_.v=Xo;_.tI=0;_.a=0;_.b=null;_.c=null;_.d=null;_=Yo.prototype=new O;_.tI=0;_.a=null;_.b=null;_.c=null;var Cg=new Ak,Eg=new Ak;kc();

View File

@ -1,7 +0,0 @@
function _g(){}
function Zg(){}
function eh(){}
function Yg(){}
function bh(){bh=op;ah=new Zg}
function dh(){ah=(bh(),new Yg);dc((ac(),_b),1);!!$stats&&$stats(Fc(Ir,Jr,null,null));ah.m();!!$stats&&$stats(Fc(Ir,Kr,null,null))}
var Ir='runCallbacks1';_=Zg.prototype=new O;_.m=_g;_.tI=0;_=Yg.prototype=new Zg;_.m=eh;_.tI=0;var ah;dh();

View File

@ -1,75 +0,0 @@
function $b(){}
function lc(){}
function uc(){}
function xc(){}
function Nc(){}
function Hk(){}
function Gk(){}
function tn(){}
function An(){}
function Fn(){}
function wo(){}
function Ho(){}
function Qo(){}
function kc(){fc(_b)}
function fc(a){dc(a,a.c)}
function Bc(a){Ac(this,a)}
function qc(a){a.b=0;a.c=0}
function tc(a){return a.c-a.b}
function Mk(){return this.a}
function Nk(){return this.a}
function Go(){return this.b}
function Po(){return No(this)}
function rc(a){return a.a[a.b]}
function pc(a,b){a.a[a.c++]=b}
function wc(a,b){Hd();return a}
function zc(a,b){a.a=b;return a}
function Kk(a,b){a.a=b;return a}
function Cn(a,b){a.a=b;return a}
function sc(a){return a.a[a.b++]}
function zn(){return this.b.a.d}
function Dn(){return _m(this.a.a)}
function xn(a){return Pl(this.a,a)}
function Oo(){return this.b!=this.d.a}
function Kn(){return Bo(pg(this,24),0)}
function So(a){a.a=a.b=a;return a}
function Pc(a,b,c){a.b=b;a.a=c;return a}
function vn(a,b,c){a.a=b;a.b=c;return a}
function Fo(a){return To(new Qo,a,this.a),++this.b,true}
function Eo(a){if(a.b==0){throw hp(new fp)}}
function yo(a){a.a=So(new Qo);a.b=0;return a}
function Ao(a,b,c){To(new Qo,b,c);++a.b}
function Ko(a,b,c,d){a.d=d;a.b=c;a.a=b;return a}
function To(a,b,c){a.c=b;a.a=c;a.b=c.b;c.b.a=a;c.b=a;return a}
function oc(a,b){a.a=_f(Cg,0,-1,b,1);return a}
function Rk(){Rk=op;Qk=_f(Eg,0,12,256,0)}
function ac(){ac=op;_b=cc(new $b,2,ag(Cg,0,-1,[]))}
function Fl(a){var b;b=im(new cm,a);return vn(new tn,a,b)}
function En(){var a;a=pg(an(this.a.a),20).D();return a}
function yn(){var a;a=rm(new pm,this.b.a);return Cn(new An,a)}
function In(a,b){var c;c=Bo(this,a);Ao(c.d,b,c.b);++c.a;c.c=null}
function Co(a){var b;Eo(a);--a.b;b=a.a.a;b.a.b=b.b;b.b.a=b.a;b.a=b.b=b;return b.c}
function Lk(a){return a!=null&&ng(a.tI,12)&&pg(a,12).a==this.a}
function Lc(b,c){function d(a){c.h(a)}
return __gwtStartLoadingFragment(b,d)}
function Pl(a,b){if(a.c&&io(a.b,b)){return true}else if(Ol(a,b)){return true}else if(Ml(a,b)){return true}return false}
function kk(c,a){var b=c;c.onreadystatechange=$entry(function(){a.i(b)})}
function ek(b){var a=b;$wnd.setTimeout(function(){a.onreadystatechange=new Function},0)}
function lk(){if($wnd.XMLHttpRequest){return new XMLHttpRequest}else{try{return new ActiveXObject(Pr)}catch(a){return new ActiveXObject(Qr)}}}
function No(a){if(a.b==a.d.a){throw hp(new fp)}a.c=a.b;a.b=a.b.a;++a.a;return a.c.c}
function cc(a,b,c){ac();a.a=ho(new fo);a.f=yo(new wo);a.c=b;a.b=c;a.e=oc(new lc,b+1);return a}
function Mc(a,b){var c,d;c=Lc(a,b);if(c==null){return}d=lk();d.open(Or,c,true);kk(d,Pc(new Nc,d,b));d.send(null)}
function dc(a,b){var c;c=b==a.c?Lr:Mr+b;hc(c,Kr,Ok(b),null);if(ec(a,b)){sc(a.d);Zl(a.a,Ok(b));jc(a)}}
function Bo(a,b){var c,d;(b<0||b>a.b)&&Vm(b,a.b);if(b>=a.b>>1){d=a.a;for(c=a.b;c>b;--c){d=d.b}}else{d=a.a.a;for(c=0;c<b;++c){d=d.a}}return Ko(new Ho,b,d,a)}
function Ol(e,a){var b=e.e;for(var c in b){if(c.charCodeAt(0)==58){var d=b[c];if(e.B(a,d)){return true}}}return false}
function Ml(i,a){var b=i.a;for(var c in b){if(c==parseInt(c)){var d=b[c];for(var e=0,f=d.length;e<f;++e){var g=d[e];var h=g.D();if(i.B(a,h)){return true}}}}return false}
function ec(a,b){var c,d,e,f;if(b==a.c){return true}for(d=a.b,e=0,f=d.length;e<f;++e){c=d[e];if(c==b){return true}}return false}
function hc(a,b,c,d){!!$stats&&$stats(Fc(a,b,c,d))}
function Ok(a){var b,c;if(a>-129&&a<128){b=a+128;c=(Rk(),Qk)[b];!c&&(c=Qk[b]=Kk(new Gk,a));return c}return Kk(new Gk,a)}
function Jn(b){var a,d;d=Bo(this,b);try{return No(d)}catch(a){a=Og(a);if(sg(a,23)){throw Fk(new Ck,Rr+b)}else throw a}}
function Rn(a,b){if(b.b.a.d==0){return false}Array.prototype.splice.apply(a.a,[a.b,0].concat(xl(b,_f(Fg,0,0,b.b.a.d,0))));a.b+=b.b.a.d;return true}
function Ac(b,c){var a,e,f,g,h,i;h=On(new Ln);while(tc(b.a.e)>0){Pn(h,pg(Co(b.a.f),2));sc(b.a.e)}qc(b.a.e);Rn(h,Fl(b.a.a));Ll(b.a.a);i=null;for(g=$m(new Xm,h);g.a<g.b.z();){f=pg(an(g),2);try{Ac(f,c)}catch(a){a=Og(a);if(sg(a,3)){e=a;i=e}else throw a}}if(i){throw i}}
function Qc(b){var a,d;if(this.b.readyState==4){ek(this.b);if((this.b.status==200||this.b.status==0)&&this.b.responseText!=null&&this.b.responseText.length!=0){try{__gwtInstallCode(this.b.responseText)}catch(a){a=Og(a);if(sg(a,3)){d=a;Ac(this.a,d)}else throw a}}else{Ac(this.a,wc(new uc,this.b.status))}}}
function Fc(a,b,c,d){var e={moduleName:$moduleName,sessionId:$sessionId,subSystem:Nr,evtGroup:a,millis:(new Date).getTime(),type:b};c!=null&&(e.fragment=c.w());d!=null&&(e.size=d.w());return e}
function jc(a){var b,c,d,e,f,g;if(!a.d){a.d=oc(new lc,a.b.length+1);for(e=a.b,f=0,g=e.length;f<g;++f){d=e[f];pc(a.d,d)}pc(a.d,a.c)}if(a.a.d==0&&a.f.b==0&&tc(a.d)>1){return}if(tc(a.d)>0){c=rc(a.d);hc(c==a.c?Lr:Mr+c,Jr,Ok(c),null);Mc(c,zc(new xc,a));return}while(tc(a.e)>0){c=sc(a.e);b=pg(Co(a.f),2);hc(c==a.c?Lr:Mr+c,Jr,Ok(c),null);Mc(c,b)}}
var Rr="Can't get element ",Or='GET',Pr='MSXML2.XMLHTTP.3.0',Qr='Microsoft.XMLHTTP',Jr='begin',Mr='download',Kr='end',Lr='leftoversDownload',Nr='runAsync';_=$b.prototype=new O;_.tI=0;_.b=null;_.c=0;_.d=null;_.e=null;var _b;_=lc.prototype=new O;_.tI=0;_.a=null;_.b=0;_.c=0;_=uc.prototype=new mb;_.tI=7;_=xc.prototype=new O;_.h=Bc;_.tI=8;_.a=null;_=Nc.prototype=new O;_.i=Qc;_.tI=0;_.a=null;_.b=null;_=Hk.prototype=new O;_.tI=27;_=Gk.prototype=new Hk;_.eQ=Lk;_.hC=Mk;_.w=Nk;_.tI=30;_.a=0;var Qk;_=tn.prototype=new ul;_.y=xn;_.s=yn;_.z=zn;_.tI=0;_.a=null;_.b=null;_=An.prototype=new O;_.u=Dn;_.v=En;_.tI=0;_.a=null;_=Fn.prototype=new Nm;_.F=In;_.G=Jn;_.s=Kn;_.tI=41;_=wo.prototype=new Fn;_.x=Fo;_.z=Go;_.tI=45;_.a=null;_.b=0;_=Ho.prototype=new O;_.u=Oo;_.v=Po;_.tI=0;_.a=0;_.b=null;_.c=null;_.d=null;_=Qo.prototype=new O;_.tI=0;_.a=null;_.b=null;_.c=null;var Cg=new rk,Eg=new rk;kc();

View File

@ -0,0 +1,7 @@
function Xg(){}
function Vg(){}
function ah(){}
function Ug(){}
function Zg(){Zg=np;Yg=new Vg}
function _g(){Yg=(Zg(),new Ug);ac((Zb(),Yb),1);!!$stats&&$stats(Cc(yr,zr,null,null));Yg.m();!!$stats&&$stats(Cc(yr,Ar,null,null))}
var yr='runCallbacks1';_=Vg.prototype=new O;_.m=Xg;_.tI=0;_=Ug.prototype=new Vg;_.m=ah;_.tI=0;var Yg;_g();

Some files were not shown because too many files have changed in this diff Show More