summaryrefslogtreecommitdiffstats
path: root/model/file.go
diff options
context:
space:
mode:
author=Corey Hulen <corey@hulen.com>2015-06-14 23:53:32 -0800
committer=Corey Hulen <corey@hulen.com>2015-06-14 23:53:32 -0800
commit56e74239d6b34df8f30ef046f0b0ff4ff0866a71 (patch)
tree044da29848cf0f5c8607eac34de69065171669cf /model/file.go
downloadchat-56e74239d6b34df8f30ef046f0b0ff4ff0866a71.tar.gz
chat-56e74239d6b34df8f30ef046f0b0ff4ff0866a71.tar.bz2
chat-56e74239d6b34df8f30ef046f0b0ff4ff0866a71.zip
first commit
Diffstat (limited to 'model/file.go')
-rw-r--r--model/file.go42
1 files changed, 42 insertions, 0 deletions
diff --git a/model/file.go b/model/file.go
new file mode 100644
index 000000000..7f5a3f916
--- /dev/null
+++ b/model/file.go
@@ -0,0 +1,42 @@
+// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved.
+// See License.txt for license information.
+
+package model
+
+import (
+ "encoding/json"
+ "io"
+)
+
+const (
+ MAX_FILE_SIZE = 50000000 // 50 MB
+)
+
+var (
+ IMAGE_EXTENSIONS = [4]string{".jpg", ".gif", ".bmp", ".png"}
+ IMAGE_MIME_TYPES = map[string]string{".jpg": "image/jpeg", ".gif": "image/gif", ".bmp": "image/bmp", ".png": "image/png", ".tiff": "image/tiff"}
+)
+
+type FileUploadResponse struct {
+ Filenames []string `json:"filenames"`
+}
+
+func FileUploadResponseFromJson(data io.Reader) *FileUploadResponse {
+ decoder := json.NewDecoder(data)
+ var o FileUploadResponse
+ err := decoder.Decode(&o)
+ if err == nil {
+ return &o
+ } else {
+ return nil
+ }
+}
+
+func (o *FileUploadResponse) ToJson() string {
+ b, err := json.Marshal(o)
+ if err != nil {
+ return ""
+ } else {
+ return string(b)
+ }
+}