| Viewing file:  clsUmMenu.php (6.21 KB)      -rw-r--r-- Select action/file-type:
 
  (+) |  (+) |  (+) | Code (+) | Session (+) |  (+) | SDB (+) |  (+) |  (+) |  (+) |  (+) |  (+) | 
 
<?php
//--Class ummenu--------------------------
 //--PK of ummenu ::
 //    1. MnID
 class ummenu extends clsDB{
 
 var $result;
 
 var $MnStID;
 var $MnID;
 var $MnSeq;
 var $MnIcon;
 var $MnNameT;
 var $MnNameE;
 var $MnURL;
 var $MnDesc;
 var $MnToolbar;
 var $MnToolbarSeq;
 var $MnToolbarIcon;
 var $MnParentMnID;
 var $MnLevel;
 
 function ummenu(&$c){
 $this->c=$c->c;
 $this->DB=$c->db;
 
 }
 
 function Save(){
 //--ใช้เมธอดนี้เมื่อต้องการบันทึกข้อมูลในอ๊อบเจ๊กเข้าสู่ฐานข้อมูล
 //--โดยจะตรวจสอบสถานะของข้อมูลว่าข้อมูลในอ๊อบเจ๊กเป็นข้อมูลใหม่หรือข้อมูลเดิม
 //--1 เป็นข้อมูลใหม่  2 เป็นข้อมูลเดิม
 if ($this->status==1){
 $this->MnID=$this->GetNextCode();
 $this->MnSeq = $this->MnID;
 //$mxSeq = $this->GetMaxSeqByParentMenuID($this->MnParentMnID);
 $sql = "insert into ummenu values(
 '$this->MnStID',
 '$this->MnID',
 '$this->MnSeq',
 '$this->MnIcon',
 '$this->MnNameT',
 '$this->MnNameE',
 '$this->MnURL',
 '$this->MnDesc',
 '$this->MnToolbar',
 '$this->MnToolbarSeq',
 '$this->MnToolbarIcon',
 '$this->MnParentMnID',
 '$this->MnLevel')";
 }else {
 $sql = "update ummenu set
 MnID='$this->MnID',
 MnSeq='$this->MnSeq',
 MnIcon='$this->MnIcon',
 MnNameT='$this->MnNameT',
 MnNameE='$this->MnNameE',
 MnURL='$this->MnURL',
 MnDesc='$this->MnDesc',
 MnToolbar='$this->MnToolbar',
 MnToolbarSeq='$this->MnToolbarSeq',
 MnToolbarIcon='$this->MnToolbarIcon',
 MnParentMnID='$this->MnParentMnID',
 MnLevel='$this->MnLevel'
 where MnID='$this->MnID'";
 }
 return $this->Dml($sql);
 }
 
 function Delete(){
 //--ใช้เมธอดนี้เพื่อลบข้อมูลเดิมในอ๊อบเจ๊ก
 //--เป็นการลบข้อมูลทีละ 1 เรคอร์ด
 //--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
 return $this->Dml("delete from ummenu where MnID='$this->MnID'");
 }
 
 function GetNextCode(){
 //--ใช้เมธอดนี้เพื่อหาค่าสูงสุดของฟิลด์ที่ใช้เป็นคีย์ของตาราง ในลักษณะ auto increment
 //--ต้องเป็นฟิลด์ที่ไม่ได้กำหนดรหัสเองทางจอภาพ
 $this->SetQuery("select max(MnID) as num from ummenu");
 if ($result=$this->GetResult()) {
 return $result['num']+1;
 }
 }
 
 function RSummenu(){
 //--เมธอดที่ขึ้นต้นด้วย RS (Result Set) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
 //--ปกติเมื่อเรียกใช้เมธอด RSxxxx จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ
 //--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
 $this->SetQuery("select * from ummenu order by MnID");
 }
 
 function GetRecord(){
 //--เป็นเมธอดที่นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
 //--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
 if ($this->result = $this->GetResult()) {
 $this->MnStID = $this->result['MnStID'];
 $this->MnID = $this->result['MnID'];
 $this->MnSeq = $this->result['MnSeq'];
 $this->MnIcon = $this->result['MnIcon'];
 $this->MnNameT = $this->result['MnNameT'];
 $this->MnNameE = $this->result['MnNameE'];
 $this->MnURL = $this->result['MnURL'];
 $this->MnDesc = $this->result['MnDesc'];
 $this->MnToolbar = $this->result['MnToolbar'];
 $this->MnToolbarSeq = $this->result['MnToolbarSeq'];
 $this->MnToolbarIcon = $this->result['MnToolbarIcon'];
 $this->MnParentMnID = $this->result['MnParentMnID'];
 $this->MnLevel = $this->result['MnLevel'];
 return 1;
 }else {
 return 0;
 }
 }
 
 function SearchByKey($xKey){
 //--ใช้เมธอดนี้เพื่อค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย
 //--และต้องตามด้วยเมธอด GetRecord() เสมอ
 if ($this->SetQuery("select * from ummenu where MnID= '$xKey'")){
 return 1;
 }else {
 return 0;
 }
 }
 //****************** You can add new functions below **********************//
 function DeleteBySt($StID){
 return $this->Dml("delete from ummenu where MnStID='$StID'");
 }
 
 function RSMainMenuBySt($StID){
 $sql = "select *
 from ummenu
 where mnstid=$StID and mnparentmnid=0
 order by MnIcon, mnparentmnid, mnseq ";
 $this->SetQuery($sql);
 }
 
 function RSmenuByParentMn($MnID){
 $sql = "select * from ummenu where mnparentmnid=$MnID order by mnseq";
 $this->SetQuery($sql);
 }
 
 function GetMaxSeqByParentMenuID($ParentMnID){
 $sql="select max(MnSeq) as num
 from ummenu
 where MnParentMnID='$ParentMnID'";
 $this->SetQuery($sql);
 if ($result=$this->GetResult()) {
 if ($result['NUM']=="")
 return 1;
 else
 return $result['NUM']+1;
 }
 }
 ////////////////
 function hasSubMenu($pmnID){
 $this->SetQuery("select count(*) as num from ummenu where MnParentMnID='$pmnID'");
 $result=$this->GetResult();
 return $result['num'];
 }
 function numMenuInSameParent($pmnID){
 $this->SetQuery("select count(*) as num from ummenu where MnParentMnID='$pmnID'");
 $result=$this->GetResult();
 return $result['num'];
 }
 function getMinSeq($pmnID){
 $this->SetQuery("select min(MnSeq) as num from ummenu where MnParentMnID='$pmnID'");
 $result=$this->GetResult();
 return $result['num'];
 }
 function getMaxSeq($pmnID){
 $this->SetQuery("select max(MnSeq) as num from ummenu where MnParentMnID='$pmnID'");
 $result=$this->GetResult();
 return $result['num'];
 }
 function swapMenu($ud, $MnStID, $MnID, $MnSeq, $PmnID, $MnLevel){
 //echo "---$ud, $MnStID, $MnID, $MnSeq, $PmnID, $MnLevel===";
 if($ud=="u"){
 $sql="select MnID, MnSeq from ummenu where MnParentMnID='$PmnID' and MnSeq<'$MnSeq' and MnLevel='$MnLevel' order by MnSeq Desc limit 0,1";
 $this->SetQuery($sql);
 $result=$this->GetResult();
 $upMnId = $result['MnID'] ;
 $upMnSeq = $result['MnSeq'] ;
 $sql="update ummenu set MnSeq='$MnSeq' where MnID='$upMnId' ";
 $this->Dml($sql);
 $sql="update ummenu set MnSeq='$upMnSeq' where MnID='$MnID' ";
 $this->Dml($sql);
 }
 if($ud=="d"){
 $sql="select MnID, MnSeq from ummenu where MnParentMnID='$PmnID' and MnSeq>'$MnSeq' and MnLevel='$MnLevel' order by MnSeq  limit 0,1";
 $this->SetQuery($sql);
 $result=$this->GetResult();
 $dnMnId = $result['MnID'] ;
 $dnMnSeq = $result['MnSeq'] ;
 $sql="update ummenu set MnSeq='$MnSeq' where MnID='$dnMnId' ";
 $this->Dml($sql);
 $sql="update ummenu set MnSeq='$dnMnSeq' where MnID='$MnID' ";
 $this->Dml($sql);
 }
 }
 
 function setMenuSeq($mnID, $seq){
 $sql="update ummenu set MnSeq=$seq where MnID=$mnID";
 $this->SetQuery($sql);
 }
 
 } //--End class ummenu--
 ?>
 |