Pman.Dialog.Image.bjs
[Pman.Core] / Pman.Dialog.Image.bjs
1 {
2     "id": "roo-file-106",
3     "name": "Pman.Dialog.Image",
4     "parent": "",
5     "title": "",
6     "path": "/home/alan/gitlive/Pman.Core/Pman.Dialog.Image.bjs",
7     "items": [
8         {
9             "listeners": {
10                 "show": "function (_self)\n{\n    // this does not really work - escape on the borders works..\n    if (this.keylistener) {\n        return;\n    }\n    this.keylistener = this.addKeyListener(27, this.hide, this);\n    \n}"
11             },
12             "closable": false,
13             "collapsible": false,
14             "haveProgress": false,
15             "height": 140,
16             "modal": true,
17             "resizable": false,
18             "title": "Upload an Image or File",
19             "uploadComplete": false,
20             "width": 500,
21             "xtype": "LayoutDialog",
22             "|shadow": "true",
23             "|uploadProgress": "function()\n{\n    var dlg = this;\n   if (!dlg.haveProgress) {\n        Roo.MessageBox.progress(\"Uploading\", \"Uploading\");\n    }\n    \n    if (dlg.haveProgress == 2) {\n        // it's been closed elsewhere..\n        return;\n    }\n    if (dlg.uploadComplete) {\n        Roo.MessageBox.hide();\n        return;\n    }\n    \n    dlg.haveProgress = 1;\n\n    var uid = _this.form.findField('UPLOAD_IDENTIFIER').getValue();\n    new Pman.Request({\n        url : baseURL + '/Core/UploadProgress.php',\n        params: {\n            id : uid\n        },\n        method: 'GET',\n        success : function(res){\n            //console.log(data);\n            var data = res.data;\n            if (dlg.haveProgress == 2) {\n                // it's been closed elsewhere..\n                return;\n            }\n            \n            if (dlg.uploadComplete) {\n                Roo.MessageBox.hide();\n                return;\n            }\n                \n            if (data){\n                Roo.MessageBox.updateProgress(data.bytes_uploaded/data.bytes_total,\n                    Math.floor((data.bytes_total - data.bytes_uploaded)/1000) + 'k remaining'\n                );\n            }\n            dlg.uploadProgress.defer(2000,dlg);\n        },\n        failure: function(data) {\n          //  console.log('fail');\n         //   console.log(data);\n        }\n    })\n    \n}\n",
24             "|xns": "Roo",
25             "items": [
26                 {
27                     "|xns": "Roo",
28                     "xtype": "LayoutRegion",
29                     "*prop": "center"
30                 },
31                 {
32                     "fitToFrame": true,
33                     "region": "center",
34                     "xtype": "ContentPanel",
35                     "|xns": "Roo",
36                     "items": [
37                         {
38                             "listeners": {
39                                 "|actioncomplete": "function(_self,act)\n{\n    _this.dialog.uploadComplete = true;\n    _this.dialog.haveProgress = 2; \n    Roo.MessageBox.hide(); // force hiding\n    //_this.dialog.el.unmask();\n     \n    if (act.type == 'setdata') { \n        this.url = _this.data._url ? _this.data._url : baseURL + '/Roo/Images.php';\n        this.el.dom.action = this.url;\n        this.findField('UPLOAD_IDENTIFIER').setValue(\n            (new Date() * 1) + '' + Math.random());\n            \n        return;\n    }\n     \n   \n    if (act.type == 'load') {\n      // should this happen?  \n        _this.data = act.result.data;\n       // _this.loaded();\n        return;\n    }\n    \n    \n    if (act.type == 'submit') { // only submitted here if we are \n        _this.dialog.hide();\n        Roo.log(\"Upload success\");\n        Roo.log(act);\n        //console.log(act);\n        if (_this.callback) {\n            _this.callback.call(this, act.result.data);\n        }\n        return; \n    }\n    \n\n    \n}\n",
40                                 "|rendered": "function (form)\n{\n    _this.form= form;\n}\n",
41                                 "actionfailed": "function (_self, act)\n{\n    _this.dialog.uploadComplete = true;\n   // _this.dialog.el.unmask();\n    // error msg???\n     _this.dialog.haveProgress = 2; \n    if (act.type == 'submit') {\n        Roo.log(\"Upload error\");\n        Roo.log(act);\n        try {\n            Roo.MessageBox.alert(\"Error\", act.result.errorMsg);\n        } catch(e) {\n          //  Roo.log(e);\n            Roo.MessageBox.alert(\"Error\", \"Saving failed = fix errors and try again\");        \n        }\n        return;\n    }\n    \n    // what about load failing..\n    Roo.MessageBox.alert(\"Error\", \"Error loading details\"); \n}"
42                             },
43                             "fileUpload": true,
44                             "labelWidth": 140,
45                             "method": "POST",
46                             "style": "margin:10px;",
47                             "timeout": 300,
48                             "xtype": "Form",
49                             "|url": "baseURL + '/Roo/Images.php'",
50                             "|xns": "Roo.form",
51                             "items": [
52                                 {
53                                     "name": "UPLOAD_IDENTIFIER",
54                                     "xtype": "Hidden",
55                                     "|xns": "Roo.form"
56                                 },
57                                 {
58                                     "name": "post_max_size",
59                                     "value": "32M",
60                                     "xtype": "Hidden",
61                                     "|xns": "Roo.form"
62                                 },
63                                 {
64                                     "name": "upload_max_filesize",
65                                     "value": "32M",
66                                     "xtype": "Hidden",
67                                     "|xns": "Roo.form"
68                                 },
69                                 {
70                                     "fieldLabel": "Upload Image or File",
71                                     "inputType": "file",
72                                     "name": "imageUpload",
73                                     "width": 200,
74                                     "xtype": "TextField",
75                                     "|xns": "Roo.form"
76                                 },
77                                 {
78                                     "name": "ontable",
79                                     "xtype": "Hidden",
80                                     "|xns": "Roo.form"
81                                 },
82                                 {
83                                     "name": "onid",
84                                     "xtype": "Hidden",
85                                     "|xns": "Roo.form"
86                                 },
87                                 {
88                                     "name": "id",
89                                     "xtype": "Hidden",
90                                     "|xns": "Roo.form"
91                                 },
92                                 {
93                                     "name": "imgtype",
94                                     "xtype": "Hidden",
95                                     "|xns": "Roo.form"
96                                 }
97                             ]
98                         }
99                     ]
100                 },
101                 {
102                     "listeners": {
103                         "click": "function (_self, e)\n{\n    _this.dialog.hide();\n}"
104                     },
105                     "*prop": "buttons[]",
106                     "text": "Cancel",
107                     "xtype": "Button",
108                     "|xns": "Roo"
109                 },
110                 {
111                     "listeners": {
112                         "click": "function (_self, e)\n{\n    // do some checks?\n     \n    //_this.dialog.el.mask(\"Sending\");\n    _this.dialog.uploadComplete = false;\n    _this.form.doAction('submit', {\n        params: {\n            ts : Math.random()\n        } \n    });\n    _this.dialog.haveProgress = 0; // set to show..\n    _this.dialog.uploadProgress.defer(1000, _this.dialog);\n\n}"
113                     },
114                     "*prop": "buttons[]",
115                     "text": "Upload",
116                     "xtype": "Button",
117                     "|xns": "Roo"
118                 }
119             ]
120         }
121     ],
122     "permname": "",
123     "modOrder": "001"
124 }