diff options
author | Gregor Tätzner <gregor@freenet.de> | 2012-08-03 18:25:46 +0200 |
---|---|---|
committer | Gregor Tätzner <gregor@freenet.de> | 2012-08-03 18:25:46 +0200 |
commit | fbcac103cf685326f5a873760998672c7f93f039 (patch) | |
tree | 5fcdf361a0e90bf2195e9fed5352e80ebfa9bd7d /ajax | |
parent | 58824771f2bc86f912d39e6485a70ee489bc262a (diff) |
Fixed several issues in delete folder functions
Diffstat (limited to 'ajax')
-rw-r--r-- | ajax/deletefolder.php | 24 | ||||
-rw-r--r-- | ajax/populateroot.php | 5 |
2 files changed, 22 insertions, 7 deletions
diff --git a/ajax/deletefolder.php b/ajax/deletefolder.php index bf975c6c3..a0ea611e9 100644 --- a/ajax/deletefolder.php +++ b/ajax/deletefolder.php @@ -15,19 +15,31 @@ OCP\JSON::checkLoggedIn(); OCP\JSON::checkAppEnabled('news'); OCP\JSON::callCheck(); +function printError() { + OCP\JSON::error(array('data' => array('message' => $l->t('Error removing folder.')))); + OCP\Util::writeLog('news','ajax/deletefolder.php: Error removing folder: '.$_POST['folderid'], OCP\Util::ERROR); + exit(); +} + $userid = OCP\USER::getUser(); $folderid = trim($_POST['folderid']); $foldermapper = new OC_News_FolderMapper(); -$success = $foldermapper->deleteById($folderid); -$l = OC_L10N::get('news'); +$folder = $foldermapper->find($folderid); +$popfolder = $foldermapper->populate($folder); -if(!$success) { - OCP\JSON::error(array('data' => array('message' => $l->t('Error removing folder.')))); - OCP\Util::writeLog('news','ajax/deletefolder.php: Error removing folder: '.$_POST['folderid'], OCP\Util::ERROR); - exit(); +// delete child folder +$children = $popfolder->getChildren(); +foreach ($children as $child) { + if ($child instanceOf OC_News_Folder) { + if(!$foldermapper->deleteById($child->getId())) + printError(); + } } +if(!$foldermapper->deleteById($folderid)) + printError(); + OCP\JSON::success(array('data' => array( 'folderid' => $folderid ))); diff --git a/ajax/populateroot.php b/ajax/populateroot.php index a408c25ec..73b986a3e 100644 --- a/ajax/populateroot.php +++ b/ajax/populateroot.php @@ -4,8 +4,11 @@ OCP\JSON::checkLoggedIn(); OCP\JSON::checkAppEnabled('news'); $foldermapper = new OC_News_FolderMapper(OCP\USER::getUser()); +$l = new OC_l10n('news'); -$allfeeds = $foldermapper->populate('Everything', 0); +$folder = new OC_News_Folder($l->t('Everything'), 0); + +$allfeeds = $foldermapper->populate($folder); if ($allfeeds) { $feedid = isset( $_GET['feedid'] ) ? $_GET['feedid'] : null; |