| 216 | ) |
| 217 | |
| 218 | func wrapViews(ddoc *sgbucket.DesignDoc, enableUserViews bool, useXattrs bool) { |
| 219 | // Wrap the map functions to ignore special docs and strip _sync metadata. If user views are enabled, also |
| 220 | // add channel filtering. |
| 221 | for name, view := range ddoc.Views { |
| 222 | if enableUserViews { |
| 223 | view.Map = fmt.Sprintf(syncViewUserWrapper, base.SyncDocPrefix, base.SyncXattrName, base.SyncPropertyName, view.Map) |
| 224 | } else { |
| 225 | view.Map = fmt.Sprintf(syncViewAdminWrapper, base.SyncDocPrefix, base.SyncXattrName, base.SyncPropertyName, view.Map) |
| 226 | } |
| 227 | ddoc.Views[name] = view // view is not a pointer, so have to copy it back |
| 228 | } |
| 229 | } |
| 230 | |
| 231 | func (db *Database) DeleteDesignDoc(ddocName string) (err error) { |
| 232 | vs, err := getViewStoreForDefaultCollection(db.DatabaseContext) |