| | package model |
| |
|
| | import "time" |
| |
|
| | type Storage struct { |
| | ID uint `json:"id" gorm:"primaryKey"` |
| | MountPath string `json:"mount_path" gorm:"unique" binding:"required"` |
| | Order int `json:"order"` |
| | Driver string `json:"driver"` |
| | CacheExpiration int `json:"cache_expiration"` |
| | Status string `json:"status"` |
| | Addition string `json:"addition" gorm:"type:text"` |
| | Group string `json:"group"` |
| | SyncGroup bool `json:"sync_group"` |
| | Remark string `json:"remark"` |
| | Modified time.Time `json:"modified"` |
| | Disabled bool `json:"disabled"` |
| | EnableSign bool `json:"enable_sign"` |
| | Sort |
| | Proxy |
| | } |
| |
|
| | type Sort struct { |
| | OrderBy string `json:"order_by"` |
| | OrderDirection string `json:"order_direction"` |
| | ExtractFolder string `json:"extract_folder"` |
| | } |
| |
|
| | type Proxy struct { |
| | WebProxy bool `json:"web_proxy"` |
| | WebdavPolicy string `json:"webdav_policy"` |
| | ProxyRange bool `json:"proxy_range"` |
| | DownProxyUrl string `json:"down_proxy_url"` |
| | } |
| |
|
| | func (s *Storage) GetStorage() *Storage { |
| | return s |
| | } |
| |
|
| | func (s *Storage) SetStorage(storage Storage) { |
| | *s = storage |
| | } |
| |
|
| | func (s *Storage) SetStatus(status string) { |
| | s.Status = status |
| | } |
| |
|
| | func (p Proxy) Webdav302() bool { |
| | return p.WebdavPolicy == "302_redirect" |
| | } |
| |
|
| | func (p Proxy) WebdavProxy() bool { |
| | return p.WebdavPolicy == "use_proxy_url" |
| | } |
| |
|
| | func (p Proxy) WebdavNative() bool { |
| | return !p.Webdav302() && !p.WebdavProxy() |
| | } |
| |
|