Advertisement
Guest User

get_details

a guest
May 25th, 2013
206
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 16.09 KB | None | 0 0
  1. <?php
  2.  
  3. ini_set('memory_limit', '256M');
  4. set_time_limit(1000000);
  5. require_once("../include/server.php");
  6. require_once("../include/function.php");
  7. require_once("rights_function.php");
  8.  
  9. $vUserName  = stripslashes(trim($_REQUEST["txtUser"]));
  10. $vPassword  = stripslashes(trim($_REQUEST["txtPass"]));
  11.  
  12. $returnFinalString  = "";
  13. $member_id          = 0;
  14. if($vUserName!="" and $vPassword!="")
  15. {  
  16.     //================= Member Details =====================//
  17.     $member_query   = "select * from member_mast
  18.                             where username = '".addslashes($vUserName)."' and password = '".addslashes($vPassword)."'
  19.                             and is_deleted_flg=0 and is_profile=0";
  20.     $member_res     = mysql_query($member_query);
  21.    
  22.     if(mysql_num_rows($member_res)>0)
  23.     {
  24.         $mem_row            = mysql_fetch_array($member_res);
  25.         $member_role        = $mem_row['member_role'];
  26.         $member_id          = $mem_row['user_id'];
  27.         $childUserString    = recursion_user($member_id);
  28.         $childUserArray     = explode(",",$childUserString);
  29.         //======================================================//
  30.    
  31.         #==================== Get Company ID ============================= 
  32.         //======= Find Company =========//
  33.         $CompanyIdArray = array();
  34.         $CompanyNameArray = array();
  35.         $sqlCompany = "     SELECT CM.company_id, CM.company_name
  36.                                 FROM company_mast CM ";
  37.         if($member_role=="Administrator")
  38.         {
  39.             $sqlCompany .= "    LEFT JOIN admin_company AC ON (AC.company_id=CM.company_id)
  40.                                 LEFT JOIN member_mast MM ON (MM.company_id=CM.company_id) ";
  41.         }
  42.         if($member_role=="Client" || $member_role=="Administrator")
  43.         {
  44.             $sqlCompany .= "    LEFT JOIN project_mast PM ON (PM.company_id=CM.company_id)
  45.                                 LEFT JOIN mem_pro_comp_right MPCR ON (MPCR.project_id=PM.project_id)";
  46.         }
  47.             $sqlCompany .= "    WHERE (CM.user_id IN (".$childUserString.")";
  48.            
  49.         if($member_role=="Client" || $member_role=="Administrator")
  50.         {
  51.             $sqlCompany .= "    OR MPCR.company_id='".$member_id."'";
  52.         }
  53.         if($member_role=="Administrator")
  54.         {
  55.             $sqlCompany .= "     OR MM.user_id='".$member_id."' OR AC.member_id = '".$member_id."' ";
  56.         }
  57.             $sqlCompany .= "    ) AND CM.is_deleted_flg=0
  58.                                 GROUP BY CM.company_id
  59.                                 ORDER BY CM.company_name ASC";                         
  60.            
  61.         $queryCompany = mysql_query($sqlCompany);
  62.         if(mysql_num_rows($queryCompany)>0)
  63.         {
  64.             while($rowCompany=mysql_fetch_array($queryCompany))
  65.             {
  66.                     $CompanyIdArray[]   = $rowCompany["company_id"];
  67.                     $CompanyNameArray[] = htmlentities(stripslashes($rowCompany["company_name"]));
  68.             }
  69.         }
  70.         //echo $sqlCompany."<br>"; 
  71.         //echo $member_role."<br>";
  72.         //======= Find Project =========//
  73.         $ProjectIdArray = array();
  74.         $ProjectNameArray = array();
  75.         $sqlProject = "     SELECT PM.company_id, PM.project_id, PM.project_title
  76.                                 FROM project_mast PM
  77.                                 LEFT JOIN company_mast CM ON (PM.company_id=CM.company_id)";   
  78.         if($member_role=="Administrator")
  79.         {
  80.             $sqlProject .= "    LEFT JOIN admin_company AC ON (AC.company_id=CM.company_id)
  81.                                 LEFT JOIN member_mast MM ON (MM.company_id=CM.company_id)";
  82.         }
  83.         if($member_role=="Client" || $member_role=="Administrator")
  84.         {
  85.             $sqlProject .= "    LEFT JOIN mem_pro_comp_right MPCR ON (MPCR.project_id=PM.project_id)";
  86.         }
  87.             $sqlProject .= "    WHERE (CM.user_id IN (".$childUserString.") ";
  88.         if($member_role=="Administrator")
  89.         {
  90.             $sqlProject .= "     OR AC.member_id = '".$member_id."' OR MM.user_id='".$member_id."' ";
  91.         }  
  92.         if($member_role=="Client" || $member_role=="Administrator")
  93.         {
  94.             $sqlProject .= "    OR MPCR.company_id='".$member_id."' ";
  95.         }
  96.             $sqlProject .= "    ) AND PM.is_deleted_flg=0
  97.                                 GROUP BY PM.project_id
  98.                                 ORDER BY CM.company_name, CM.company_id, PM.project_title, PM.project_id ";                        
  99.            
  100.         $queryProject = mysql_query($sqlProject);
  101.         if(mysql_num_rows($queryProject)>0)
  102.         {
  103.             while($rowProject=mysql_fetch_array($queryProject))
  104.             {
  105.                     $company_id                     = $rowProject["company_id"];
  106.                     $ProjectIdArray[$company_id][]  = $rowProject["project_id"];
  107.                     $ProjectNameArray[$company_id][]= htmlentities(stripslashes($rowProject["project_title"]));
  108.             }
  109.         }
  110.         //echo $sqlProject;
  111.        
  112.         //======= Find Component =========//
  113.         $ComponentIdArray           = array();
  114.         $ComponentNameArray         = array();
  115.         $ComponentPrimaryFieldArray = array();
  116.         $PrimaryFieldIdArray        = array();
  117.         $PrimaryFieldNameArray      = array();
  118.         $FileUploadFieldIdArray     = array();
  119.         $FileUploadFieldNameArray   = array(); 
  120.         $sqlComponent = "   SELECT CMP.company_id, CMP.project_id, CMP.component_id, CMP.component_name, CMP.table_name, CMP.user_id
  121.                                 FROM component_mast CMP
  122.                                 LEFT JOIN company_mast CM ON (CMP.company_id=CM.company_id)";
  123.         if($member_role=="Administrator")
  124.         {
  125.             $sqlComponent .= "  LEFT JOIN admin_company AC ON (AC.company_id=CM.company_id) ";
  126.         }
  127.         if($member_role=="Client" || $member_role=="Administrator")
  128.         {
  129.             $sqlComponent .= "  LEFT JOIN mem_pro_comp_right MPCR ON (MPCR.component_id=CMP.component_id)";
  130.         }
  131.             $sqlComponent .= "  WHERE (CM.user_id IN (".$childUserString.")";
  132.         if($member_role=="Administrator")
  133.         {
  134.             $sqlComponent .= "   OR AC.member_id = '".$member_id."'";
  135.         }
  136.            
  137.         if($member_role=="Client" || $member_role=="Administrator")
  138.         {
  139.             $sqlComponent .= "  OR MPCR.company_id='".$member_id."'";
  140.         }
  141.             $sqlComponent .= "  ) AND CMP.is_deleted_flg=0 AND CMP.field_create_from <> 'information'
  142.                                 GROUP BY CMP.component_id
  143.                                 ORDER BY CM.company_name, CM.company_id, CMP.component_name, CMP.component_id
  144.                                 ";                         
  145.            
  146.         $queryComponent = mysql_query($sqlComponent);
  147.         if(mysql_num_rows($queryComponent)>0)
  148.         {
  149.             while($rowComponent=mysql_fetch_array($queryComponent))
  150.             {
  151.                 $project_id         = $rowComponent["project_id"];
  152.                 $tmpComponentId     = $rowComponent["component_id"];    // Component Id
  153.                 $tmpComponentUserId = $rowComponent["user_id"];         // Component Creator
  154.                 $tmpComponentName   = htmlentities(stripslashes($rowComponent["component_name"]));
  155.                 $tmpComponentTable  = htmlentities(stripslashes($rowComponent["table_name"]));
  156.                
  157.                 if(getComponentTableExist($tmpComponentTable)==1)
  158.                 {                      
  159.                     // Get Primary Key of Component
  160.                     $primaryKeyArray        = getPrimaryAndSortOrderKeyOfComponent($tmpComponentId);
  161.                     $primaryColumnUniqueId  = $primaryKeyArray["column_unique_id"];
  162.                     $primaryDisplayName     = $primaryKeyArray["display_name"];
  163.                     $sortOrderColumnUniqueId= $primaryKeyArray["sortorder_unique_id"];
  164.                    
  165.                     // Check user's Rights
  166.                     if(in_array($tmpComponentUserId,$childUserArray)){
  167.                         $mainAccessFlg  = "Administrative";
  168.                     }else{
  169.                         $mainAccessFlg  = "Normal";
  170.                     }
  171.                     $getRowDataArray    = getRowDataOfComponent($tmpComponentId, $member_id, $tmpComponentTable, $mainAccessFlg, $primaryColumnUniqueId, $sortOrderColumnUniqueId);
  172.                     $getColumnDataArray = getColumnDataOfComponent($tmpComponentId, $member_id, $mainAccessFlg);
  173.                    
  174.                     if(count($getRowDataArray)>0)
  175.                     {
  176.                         // Store component Id, Name, PrimaryField Name
  177.                         $ComponentIdArray[$project_id][]            = $tmpComponentId;
  178.                         $ComponentNameArray[$project_id][]          = $tmpComponentName;
  179.                         $ComponentPrimaryFieldArray[$project_id][]  = $primaryDisplayName;
  180.                        
  181.                         for($z=0;$z<count($getRowDataArray);$z++)
  182.                         {
  183.                             $primaryFieldId                             = $getRowDataArray[$z]["id"];
  184.                             $PrimaryFieldIdArray[$tmpComponentId][]     = $getRowDataArray[$z]["id"];
  185.                             $PrimaryFieldNameArray[$tmpComponentId][]   = $getRowDataArray[$z]["column_data"];                                                 
  186.                         }
  187.                         for($y=0;$y<count($getColumnDataArray);$y++)
  188.                         {
  189.                             $FileUploadFieldIdArray[$tmpComponentId][]      = $getColumnDataArray[$y]["id"];
  190.                             $FileUploadFieldNameArray[$tmpComponentId][]    = $getColumnDataArray[$y]["column_data"];
  191.                         }
  192.                     }
  193.                     //echo $tmpComponentId."==>".$primaryColumnUniqueId."==>".$primaryDisplayName."<br>";
  194.                     //print_r($FileUploadFieldIdArray);
  195.                     //echo "<br>";             
  196.                 }              
  197.             }
  198.         }
  199.         //echo $sqlComponent;      
  200.         $total_company = count($CompanyIdArray);
  201.         // ReGenerate Array of company, Project And Component
  202.         $newCompanyIdArray              = array();
  203.         $newCompanyNameArray            = array();
  204.         $newProjectIdArray              = array();
  205.         $newProjectNameArray            = array();
  206.         $newComponentIdArray            = array();
  207.         $newComponentNameArray          = array();
  208.         $newComponentPrimaryFieldArray  = array();
  209.         $newPrimaryFieldIdArray         = array();
  210.         $newPrimaryFieldNameArray       = array();
  211.         $newFileUploadFieldIdArray      = array();
  212.         $newFileUploadFieldNameArray    = array();     
  213.         if($member_role=="Client")
  214.         {
  215.             if($total_company>0)
  216.             {
  217.                 for($i=0;$i<$total_company;$i++)
  218.                 {
  219.                     $company_id = $CompanyIdArray[$i];
  220.                     $total_project = count($ProjectIdArray[$company_id]);
  221.                     if($total_project>0)
  222.                     {
  223.                         $cntCom=0;         
  224.                         for($j=0;$j<$total_project;$j++)
  225.                         {
  226.                             $project_id         = $ProjectIdArray[$company_id][$j];
  227.                             $total_component    = count($ComponentIdArray[$project_id]);
  228.                             if($total_component>0)
  229.                             {
  230.                                 if($cntCom==0)
  231.                                 {
  232.                                     $newCompanyIdArray[]    = $company_id;
  233.                                     $newCompanyNameArray[]  = $CompanyNameArray[$i];
  234.                                     $cntCom=1;
  235.                                 }
  236.                                 $newProjectIdArray[$company_id][]   = $project_id;
  237.                                 $newProjectNameArray[$company_id][] = $ProjectNameArray[$company_id][$j];
  238.                                 for($k=0;$k<$total_component;$k++)
  239.                                 {
  240.                                     $component_id       = $ComponentIdArray[$project_id][$k];
  241.                                     $total_primaryField = count($PrimaryFieldIdArray[$component_id]);
  242.                                     if($total_primaryField>0)
  243.                                     {
  244.                                         $newComponentIdArray[$project_id][]         = $ComponentIdArray[$project_id][$k];
  245.                                         $newComponentNameArray[$project_id][]       = $ComponentNameArray[$project_id][$k];
  246.                                         $ComponentPrimaryFieldArray[$project_id][]  = $ComponentPrimaryFieldArray[$project_id][$k];                                                    
  247.                                         for($l=0;$l<$total_primaryField;$l++)
  248.                                         {
  249.                                             $primaryKeyFieldId                          = $PrimaryFieldIdArray[$component_id][$l];
  250.                                             $newPrimaryFieldIdArray[$component_id][]    = $primaryKeyFieldId;
  251.                                             $newPrimaryFieldNameArray[$component_id][]  = $PrimaryFieldNameArray[$component_id][$l];       
  252.                                                                                    
  253.                                         }
  254.                                         $total_FileUploadFields = count($FileUploadFieldIdArray[$component_id]);
  255.                                         for($m=0;$m<$total_FileUploadFields;$m++)
  256.                                         {
  257.                                             $newFileUploadFieldIdArray[$component_id][]     = $FileUploadFieldIdArray[$component_id][$m];
  258.                                             $newFileUploadFieldNameArray[$component_id][]   = $FileUploadFieldNameArray[$component_id][$m];
  259.                                         }                                      
  260.                                     }      
  261.                                 }
  262.                             }          
  263.                         }
  264.                     }              
  265.                 }
  266.             }
  267.         }
  268.         else
  269.         {
  270.             $newCompanyIdArray              = $CompanyIdArray;
  271.             $newCompanyNameArray            = $CompanyNameArray;
  272.             $newProjectIdArray              = $ProjectIdArray;
  273.             $newProjectNameArray            = $ProjectNameArray;
  274.             $newComponentIdArray            = $ComponentIdArray;
  275.             $newComponentNameArray          = $ComponentNameArray;
  276.             $newComponentPrimaryFieldArray  = $ComponentPrimaryFieldArray;
  277.             $newPrimaryFieldIdArray         = $PrimaryFieldIdArray;
  278.             $newPrimaryFieldNameArray       = $PrimaryFieldNameArray;
  279.             $newFileUploadFieldIdArray      = $FileUploadFieldIdArray;
  280.             $newFileUploadFieldNameArray    = $FileUploadFieldNameArray;       
  281.         }
  282.         $newTotalCompany    = count($newCompanyIdArray);
  283.        
  284.         // ========= Main Content Part ========= //
  285.  
  286.         if($newTotalCompany>0)
  287.         {
  288.             for($i=0;$i<$newTotalCompany;$i++)
  289.             {
  290.                 $CompanyId          = $newCompanyIdArray[$i];
  291.                 $CompanyName        = $newCompanyNameArray[$i];
  292.                 $newTotalProject    = count($newProjectIdArray[$CompanyId]);
  293.                
  294.                 if($newTotalProject>0)
  295.                 {
  296.                     $returnFinalString .= "<dict>";
  297.                     $returnFinalString .= "<key>iId</key>";
  298.                     $returnFinalString .= "<string>".$CompanyId."</string>";
  299.                    
  300.                     $returnFinalString .= "<key>itemTitle</key>";
  301.                     $returnFinalString .= "<string>".$CompanyName."</string>";             
  302.                    
  303.                     $returnFinalString .= "<key>itemChildren</key>";
  304.                     $returnFinalString .= "<array>";
  305.                    
  306.                     for($j=0;$j<$newTotalProject;$j++)
  307.                     {
  308.                         $ProjectId          = $newProjectIdArray[$CompanyId][$j];
  309.                         $ProjectName        = $newProjectNameArray[$CompanyId][$j];
  310.                         $newTotalComponent  = count($newComponentIdArray[$ProjectId]);
  311.                        
  312.                         if($newTotalComponent>0)
  313.                         {
  314.                             $returnFinalString .= "<dict>";
  315.                             $returnFinalString .= "<key>iId</key>";
  316.                             $returnFinalString .= "<string>".$ProjectId."</string>";
  317.                            
  318.                             $returnFinalString .= "<key>itemTitle</key>";
  319.                             $returnFinalString .= "<string>".$ProjectName."</string>";                         
  320.                            
  321.                             $returnFinalString .= "<key>itemChildren</key>";
  322.                             $returnFinalString .= "<array>";                           
  323.                            
  324.                             for($k=0;$k<$newTotalComponent;$k++)
  325.                             {
  326.                                 $ComponentId            = $newComponentIdArray[$ProjectId][$k];
  327.                                 $ComponentName          = $newComponentNameArray[$ProjectId][$k];
  328.                                 $ComponentPrimaryName   = $newComponentPrimaryFieldArray[$ProjectId][$k];
  329.                                 $newTotalPrimaryField   = count($newPrimaryFieldIdArray[$ComponentId]);
  330.                                
  331.                                 if($newTotalPrimaryField>0)
  332.                                 {
  333.                                     $returnFinalString .= "<dict>";
  334.                                     $returnFinalString .= "<key>iId</key>";
  335.                                     $returnFinalString .= "<string>".$ComponentId."</string>";
  336.                                    
  337.                                     $returnFinalString .= "<key>itemTitle</key>";
  338.                                     $returnFinalString .= "<string>".$ComponentName."</string>";
  339.                                    
  340.                                     $returnFinalString .= "<key>iSubTitle</key>";
  341.                                     $returnFinalString .= "<string>".$ComponentPrimaryName."</string>";
  342.                                    
  343.                                     $returnFinalString .= "<key>itemChildren</key>";
  344.                                     $returnFinalString .= "<array>";
  345.                                    
  346.                                     for($l=0;$l<$newTotalPrimaryField;$l++)
  347.                                     {
  348.                                         $PrimaryFieldId             = $newPrimaryFieldIdArray[$ComponentId][$l];
  349.                                         $PrimaryFieldName           = $newPrimaryFieldNameArray[$ComponentId][$l];
  350.                                        
  351.                                        
  352.                                         $returnFinalString .= "<dict>";
  353.                                         $returnFinalString .= "<key>iId</key>";
  354.                                         $returnFinalString .= "<string>".$PrimaryFieldId."</string>";
  355.                                        
  356.                                         $returnFinalString .= "<key>itemTitle</key>";
  357.                                         $returnFinalString .= "<string>".$PrimaryFieldName."</string>";                                    
  358.                                        
  359.                                         $returnFinalString .= "</dict>";                                       
  360.                                     }
  361.                                    
  362.                                     $returnFinalString .= "</array>";
  363.                                     $returnFinalString .= "<key>itemChildren1</key>";
  364.                                     $returnFinalString .= "<array>";
  365.                                    
  366.                                     $newTotalFileUploadField    = count($newFileUploadFieldIdArray[$ComponentId]); 
  367.                                     for($m=0;$m<$newTotalFileUploadField;$m++)
  368.                                     {
  369.                                         $FileUploadFieldId      = $newFileUploadFieldIdArray[$ComponentId][$m];
  370.                                         $FileUploadFieldName    = $newFileUploadFieldNameArray[$ComponentId][$m];
  371.                                        
  372.                                         $returnFinalString .= "<dict>";
  373.                                         $returnFinalString .= "<key>iId</key>";
  374.                                         $returnFinalString .= "<string>".$FileUploadFieldId."</string>";
  375.                                        
  376.                                         $returnFinalString .= "<key>itemTitle</key>";
  377.                                         $returnFinalString .= "<string>".$FileUploadFieldName."</string>";
  378.                                                                                
  379.                                         $returnFinalString .= "</dict>";                                           
  380.                                     }
  381.                                                                    
  382.                                     $returnFinalString .= "</array>";
  383.                                     $returnFinalString .= "</dict>";
  384.                                 }
  385.                                
  386.                             }
  387.                            
  388.                             $returnFinalString .= "</array>";
  389.                             $returnFinalString .= "</dict>";
  390.                                                        
  391.                         } // if($newTotalComponent>0)
  392.                    
  393.                     } // for($j=0;$j<$newTotalProject;$j++)
  394.                    
  395.                     $returnFinalString .= "</array>";
  396.                     $returnFinalString .= "</dict>";
  397.                    
  398.                 } // if($newTotalProject>0)
  399.                            
  400.             }// for($i=0;$i<$newTotalCompany;$i++)
  401.        
  402.         } // if($newTotalCompany>0)
  403.        
  404.         // ========= Main Content Part End ========= //
  405.        
  406.     }// if(mysql_num_rows($member_res)>0)
  407.    
  408. } // if($vUserName!="" and $vPassword!="") 
  409.  
  410.     $ret_str    =  "<?xml version='1.0' encoding='UTF-8'?>";
  411.     $ret_str    .= "<!DOCTYPE plist PUBLIC '-//Apple//DTD PLIST 1.0//EN' 'http://www.apple.com/DTDs/PropertyList-1.0.dtd'>";
  412.     $ret_str    .= "<plist version='1.0'>";
  413.                    
  414.     $ret_str    .= "<dict>";
  415.     $ret_str    .= "<key>iId</key>";
  416.     $ret_str    .= "<string>".$member_id."</string>";
  417.     $ret_str    .= "<key>itemChildren</key>";
  418.     $ret_str    .= "<array>";  
  419.        
  420.     $ret_str    .= $returnFinalString;
  421.    
  422.     $ret_str    .= "</array>"; 
  423.     $ret_str    .= "</dict>";
  424.  
  425.     $ret_str    .= "</plist>";
  426.  
  427.     echo $ret_str;
  428.  
  429. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement