singpolyma / tagging

Code from tagging.ning.com

This URL has Read+Write access

tagging / groupEdit.php
100755 68 lines (55 sloc) 2.086 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
 
require_once 'XNC/Ajax.php';
XNC_Ajax::startAjaxPage();
 
if(!$_REQUEST['id']) die;
 
$group = XN_Content::load(intval($_REQUEST['id']));
$grouptags = explode(' ',$group->my->grouptags);
 
$_REQUEST['grouptag'] = str_replace(' ','+',$_REQUEST['grouptag']);
 
if(isset($_REQUEST['edit-title'])) {
   $group->set('title',$_REQUEST['title']);
   $group->save();
   header('Content-Type: text/plain');
   if(isset($_REQUEST['form']))
      exit($_REQUEST['title']);
   header('Location: '.$_REQUEST['return_to'],TRUE,303);
   exit;
}//end if edit-title
 
if(isset($_REQUEST['edit-desc'])) {
   $group->set('description',$_REQUEST['desc']);
   $group->save();
   header('Content-Type: text/plain');
   if(isset($_REQUEST['form']))
      exit(nl2br($_REQUEST['desc']));
   header('Location: '.$_REQUEST['return_to'],TRUE,303);
   exit;
}//end if edit-title
 
if(isset($_REQUEST['delete'])) {
   foreach($grouptags as $id => $tag) {
      if(!$tag || $tag == strtolower($_REQUEST['grouptag'])) unset($grouptags[$id]);
   }//end foreach grouptags
}//end if delete
 
if(isset($_REQUEST['add'])) {
   $grouptags[] = strtolower($_REQUEST['grouptag']);
}//end if add
 
$grouptags = implode(' ',array_unique($grouptags));
$group->my->set('grouptags',$grouptags);
$group->save();
 
header('Content-Type: text/plain');
if(isset($_REQUEST['form'])) {
 
echo '<b>Group Tags:</b> ';
foreach(explode(' ',$grouptags) as $id => $grouptag) {
   $grouptag = str_replace('+',' ',$grouptag);
   if($id > 0)
      echo ', ';
   echo $grouptag.' ';
   XNC_Ajax::Link('<img src="http://www.ning.com/xnstatic/icn/cross.gif" alt="[X]" />')
      ->actionUrl('/groupEdit.php?form&delete&grouptag='.urlencode($grouptag).'&id='.$_REQUEST['id'])
      ->htmlElement('group-tags')
      ->callback('Loading', '$(&quot;group-tags&quot;).innerHTML = &quot;<i>Deleting...</i>&quot;;')
      ->confirm('Delete the '.$grouptag.' tag?')
      ->make();
}//end foreach grouptags
exit;
 
}//end if isset form
header('Location: '.$_REQUEST['return_to'],TRUE,303);
 
?>