from PLC.Persons import Person, Persons
from PLC.Nodes import Node, Nodes
from PLC.PCUs import PCU, PCUs
-from PLC.Auth import PasswordAuth
+from PLC.Auth import Auth
class DeleteSite(Method):
"""
roles = ['admin']
accepts = [
- PasswordAuth(),
+ Auth(),
Mixed(Site.fields['site_id'],
Site.fields['login_base'])
]
returns = Parameter(int, '1 if successful')
+ object_type = 'Site'
+
+
def call(self, auth, site_id_or_login_base):
# Get account information
sites = Sites(self.api, [site_id_or_login_base])
if not sites:
raise PLCInvalidArgument, "No such site"
+ site = sites[0]
+
+ if site['peer_id'] is not None:
+ raise PLCInvalidArgument, "Not a local site"
- site = sites.values()[0]
site.delete()
+
+ # Logging variables
+ self.object_ids = [site['site_id']]
+ self.message = 'Site %d deleted' % site['site_id']
return 1