⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ownerlinkgroups.php

📁 一款基于PHP的网络日记程序。WikyBlog支持:多用户的 BLOG
💻 PHP
字号:
<?phpdefined('WikyBlog') or die("Not an entry point...");if( !isOwner(true,false) ) return false;global $page,$pageOwner,$dbObject,$lang;$dbObject->links[$lang['links']] = '/Special/'.$pageOwner['username'].'/Links';$dbObject->links[$lang['link_groups']] = $page->formAction = '/Special/'.$pageOwner['username'].'/LinkGroups';$dbObject->links['?'] = 'Link Groups';$page->displayTitle = $lang['link_groups'];class ownerLinkGroups{	var $groupOrder;			function ownerLinkGroups(){		global $page,$pageOwner,$dbObject,$lang;		$page->css2 = true;		$this->groupOrder = array('descending'=>'descending','random'=>'random');				//		//	act		//		ob_start();					$show = true;			switch($page->userCmd){				case wbStrtolower($lang['add_group']):					$this->addGroup();				break;								case wbStrtolower($lang['delete']):					$this->deleteGroup();				break;								case wbStrtolower($lang['edit']):					$this->edit();					$show = false;				break;								case wbStrtolower($lang['save']):					$this->save();				break;				case 'addform':					$this->addForm();					$show = false;				break; 			}			if( $show){				$this->showAllGroups();			}					$page->contentA[$lang['link_groups']] = wb::get_clean();	}	//	//	Group Management	//		function save(){			global $lang,$page,$pageOwner;						$ownerGroups =& $pageOwner['data2']['groups'];			if( empty($_POST['name']) ){				message('INVALID_REQUEST');				return;			}			$_POST['name'] = htmlspecialchars($_POST['name']);						if( !isset($ownerGroups[$_POST['currName']])){				message('INVALID_REQUEST');				return;			}									if( !empty($_POST['order']) && isset($this->groupOrder[$_POST['order']]) ){				$list['order'] = htmlspecialchars($_POST['order']);			}else{				$list['order'] = key($this->groupOrder);			}						if( !empty($_POST['limit']) && is_numeric($_POST['limit']) ){				$list['limit'] = $_POST['limit'];			}			$pageOwner['data2']['groups'][$_POST['currName']] = $list;									if( $_POST['name'] != $_POST['currName']){				if( isset($pageOwner['data2']['groups'][$_POST['name']]) ){					message('INVALID_REQUEST');					return;				}				$this->renameGroup($_POST['currName'],$_POST['name']);				return;			}		}				function renameGroup($oldName,$newName){			global $pageOwner;			if( isset($pageOwner['data2']['links'][$oldName]) ){				$new = array();				foreach($pageOwner['data2']['links'] as $groupName => $linkData){					if( $groupName == $oldName ){						$groupName = $newName;					}					$new[$groupName] = $linkData;				}				$pageOwner['data2']['links'] = $new;			}						$new = array();			foreach($pageOwner['data2']['groups'] as $groupName => $groupData){				if( $groupName == $oldName ){					$groupName = $newName;				}				$new[$groupName] = $groupData;			}			$pageOwner['data2']['groups'] = $new;		}				function edit(){			global $lang,$page,$pageOwner;			$page->displayTitle .= ' > '.$lang['edit'];			if( !isset($pageOwner['data2']['groups'][$page->cmdArg[0]])){				message('INVALID_REQUEST');				return;			}			$args = $pageOwner['data2']['groups'][$page->cmdArg[0]];						echo '<input type="hidden" name="currName" value="'.$page->cmdArg[0].'" />';			echo '<table style="margin-right:auto;margin-left:auto;margin-top:3em;">';			echo '<tr><td style="text-align:center;">';			$this->groupForm($args,'save',$page->cmdArg[0]);			echo '</td>';			echo '</td></tr></table>';					}				function addGroup(){			global $page,$pageOwner;			if( empty($_POST['name']) ){				message('INVALID_REQUEST');				return;			}			$name = htmlspecialchars($_POST['name']);			$list = array();						if( !empty($_POST['order']) && isset($this->groupOrder[$_POST['order']]) ){				$list['order'] = htmlspecialchars($_POST['order']);			}else{				$list['order'] = key($this->groupOrder);			}						if( !empty($_POST['limit']) && is_numeric($_POST['limit']) ){				$list['limit'] = $_POST['limit'];			}			$pageOwner['data2']['groups'][$name] = $list;		}				function deleteGroup(){			global $page,$pageOwner;						if( !isset($pageOwner['data2']['groups'][$page->cmdArg[0]])){				message('INVALID_REQUEST');				return;			}			$new = array();			foreach($pageOwner['data2']['groups'] as $i => $groupData){				if( $i === $page->cmdArg[0]){					continue;				}				$new[$i] = $groupData;			}			$pageOwner['data2']['groups'] = $new;		}			//	// Show	//		function showAllGroups(){			global $page,$pageOwner,$dbObject,$lang;						if( empty($pageOwner['data2']['groups']) ){				echo $lang['empty'];				return;			}			echo '<table class="tableRows" style="width:100%">';			echo '<tr>';			echo '<th>'.$lang['name'].'</th>';			echo '<th>'.$lang['links'].'</th>';			echo '<th>'.$lang['order'].'</th>';			echo '<th>'.$lang['limit'].'</th>';			echo '<th>'.$lang['options'].'</th>';			echo '</tr>';						$classes[] = 'class="tableRowEven" ';			$classes[] = 'class="tableRowOdd" ';			$i = 0;			$count= count($pageOwner['data2']['groups']);			foreach($pageOwner['data2']['groups'] as $groupName => $groupData){				echo '<tr '.$classes[($i%2)].'>';				echo '<td>';				echo $groupName;				echo '</td>';				echo '<td>';				if( isset($pageOwner['data2']['links'][$groupName]) ){					echo count($pageOwner['data2']['links'][$groupName]);				}else{					echo '0';				}				echo ' &nbsp; ';				echo wbLinks::special('Links?cmd=addform&name='.$groupName,'add_link');								echo '</td>';				echo '<td>';				if( isset($groupData['order']) ){										if( isset($lang[$groupData['order']]) ){						echo $lang[$groupData['order']];					}else{						echo $groupData['order'];					}										}else{					echo $lang['descending'];				}				echo '</td>';				echo '<td>';				if( isset($groupData['limit']) ){					echo $groupData['limit'];				}else{					echo $lang['unlimited'];				}				echo '</td>';				echo '<td style="white-space:nowrap">';								echo ' <input type="submit" name="cmd['.$groupName.']" value="'.$lang['edit'].'" />';				echo ' <input type="submit" name="cmd['.$groupName.']" value="'.$lang['delete'].'" />';				echo '</td>';				echo '</tr>';				$i++;			}			echo '</table>';							echo '<table style="margin-right:auto;margin-left:auto;">';				echo '<tr>';				echo '<td style="text-align:center;">';				echo '<h3>'.$lang['add_group'].'</h3>';				$_POST += array('name'=>'');				$this->groupForm($_POST,'add_group',$_POST['name']);				echo '</td>';				echo '</td></tr></table>';		}				function addForm(){			global $lang;			echo '<table style="margin-right:auto;margin-left:auto;">';			echo '<tr>';			echo '<td style="text-align:center;">';			echo '<h3>'.$lang['add_group'].'</h3>';			$this->groupForm($_GET,'add_group',$_GET['name']);			echo '</td>';			echo '</td></tr></table>';		}				function groupForm($args,$how='add_group',$groupName=''){			global $lang;			$args += array('order'=>'','limit'=>'');						echo '<table cellspacing="7" class="WBeditArea1">';			echo '<tr>';				echo '<td style="text-align:right"><b>* '.$lang['name'].': </b></td>';				echo '<td><input type="text" name="name" size="50" value="'.htmlspecialchars($groupName).'" />';				echo '</tr>';			echo '<tr>';				echo '<td style="text-align:right"><b> '.$lang['order'].': </b></td>';				echo '<td>';				echo $this->formSelect('order',$this->groupOrder,$args['order']);				echo '</tr>';			echo '<tr>';				echo '<td style="text-align:right"><b>'.$lang['limit'].': </b></td>';				echo '<td><input type="text" name="limit" size="10" value="'.htmlspecialchars($args['limit']).'" />';				echo '&nbsp; <span class="sm">('.$lang['LEAVE_EMPTY'].')</span>';				echo '</tr>';			echo '<tr>';				echo '<td></td>';				echo '<td>';				echo '<input type="submit" name="cmd" value="'.$lang[$how].'" />';				echo ' <input type="submit" name="cmd" value="'.$lang['cancel'].'" />';				echo '</tr>';							echo '</table>';					}		function formSelect($name,$values,$selected=null,$useLang=true){			global $lang;			$select = '<select name="'.$name.'">';			foreach($values as $key => $value){				if($key == $selected){					$focus = ' selected ';				}else{					$focus = '';				}				if( $useLang && isset($lang[$value]) ){					$value = $lang[$value];				}				$select .= '<option value="'.htmlspecialchars($key).'" '.$focus.'>'.$value.'</option>';			}			$select .= '</select>';			return $select;		}				}new ownerLinkGroups();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -