summaryrefslogtreecommitdiffstats
path: root/trunk/etherpad/src/etherpad/pro/pro_padmeta.js
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/etherpad/src/etherpad/pro/pro_padmeta.js')
-rw-r--r--trunk/etherpad/src/etherpad/pro/pro_padmeta.js111
1 files changed, 0 insertions, 111 deletions
diff --git a/trunk/etherpad/src/etherpad/pro/pro_padmeta.js b/trunk/etherpad/src/etherpad/pro/pro_padmeta.js
deleted file mode 100644
index 6f911b2..0000000
--- a/trunk/etherpad/src/etherpad/pro/pro_padmeta.js
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS-IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import("stringutils");
-import("cache_utils.syncedWithCache");
-import("sync");
-
-import("etherpad.pad.padutils");
-import("etherpad.pro.pro_pad_db");
-
-function _doWithProPadLock(domainId, localPadId, func) {
- var lockName = ["pro-pad", domainId, localPadId].join("/");
- return sync.doWithStringLock(lockName, func);
-}
-
-function accessProPad(globalPadId, fn) {
- // retrieve pad from cache
- var domainId = padutils.getDomainId(globalPadId);
- if (!domainId) {
- throw Error("not a pro pad: "+globalPadId);
- }
- var localPadId = padutils.globalToLocalId(globalPadId);
- var padRecord = pro_pad_db.getSingleRecord(domainId, localPadId);
-
- return _doWithProPadLock(domainId, localPadId, function() {
- var isDirty = false;
-
- var proPad = {
- exists: function() { return !!padRecord; },
- getDomainId: function() { return domainId; },
- getLocalPadId: function() { return localPadId; },
- getGlobalId: function() { return globalPadId; },
- getDisplayTitle: function() { return padutils.getProDisplayTitle(localPadId, padRecord.title); },
- setTitle: function(newTitle) {
- padRecord.title = newTitle;
- isDirty = true;
- },
- isDeleted: function() { return padRecord.isDeleted; },
- markDeleted: function() {
- padRecord.isDeleted = true;
- isDirty = true;
- },
- getPassword: function() { return padRecord.password; },
- setPassword: function(newPass) {
- if (newPass == "") {
- newPass = null;
- }
- padRecord.password = newPass;
- isDirty = true;
- },
- isArchived: function() { return padRecord.isArchived; },
- markArchived: function() {
- padRecord.isArchived = true;
- isDirty = true;
- },
- unmarkArchived: function() {
- padRecord.isArchived = false;
- isDirty = true;
- },
- setLastEditedDate: function(d) {
- padRecord.lastEditedDate = d;
- isDirty = true;
- },
- addEditor: function(editorId) {
- var es = String(editorId);
- if (es && es.length > 0 && stringutils.isNumeric(editorId)) {
- if (padRecord.proAttrs.editors.indexOf(editorId) < 0) {
- padRecord.proAttrs.editors.push(editorId);
- padRecord.proAttrs.editors.sort();
- }
- isDirty = true;
- }
- },
- setLastEditor: function(editorId) {
- var es = String(editorId);
- if (es && es.length > 0 && stringutils.isNumeric(editorId)) {
- padRecord.lastEditorId = editorId;
- this.addEditor(editorId);
- isDirty = true;
- }
- }
- };
-
- var ret = fn(proPad);
-
- if (isDirty) {
- pro_pad_db.update(padRecord);
- }
-
- return ret;
- });
-}
-
-function accessProPadLocal(localPadId, fn) {
- var globalPadId = padutils.getGlobalPadId(localPadId);
- return accessProPad(globalPadId, fn);
-}
-