root/original/common/class.corp.php

Revision 1, 2.5 KB (checked in by andrewgunn, 14 years ago)

Added original EVE-Killboard.net source code.

Line 
1<?
2  require_once( "db.php" );
3  require_once( "class.alliance.php" );
4
5  class Corporation {
6
7    function Corporation( $id = 0 )
8    {
9      $this->id_ = $id;
10      $this->qry_ = new DBQuery();
11
12    }
13
14    function getID()
15    {
16      return $this->id_;
17    }
18
19    function getName()
20    {
21      $this->execQuery();
22      return $this->row_['crp_name'];
23    }
24
25    function getAlliance()
26    {
27      $this->execQuery();
28      return new Alliance( $this->row_['crp_all_id'] );
29    }
30
31    function lookup( $name )
32    {
33      $qry = new DBQuery();
34      $qry->execute( "select *
35                        from kb3_corps
36                       where crp_name = '".slashfix( $name )."'" );
37                                                                               
38      $row = $qry->getRow();
39      if ( $row['crp_id'] ) $this->id_ = $row['crp_id'];
40    }
41
42    function execQuery()
43    {
44      if ( !$this->qry_->executed_ ) {
45        $this->sql_ = "select *
46                         from kb3_corps
47                        where crp_id = ".$this->id_;
48        $this->qry_->execute( $this->sql_ );
49        $this->row_ = $this->qry_->getRow();
50      }
51    }
52
53    function add( $name, $alliance, $timestamp )
54    {
55      $qry = new DBQuery();
56      $qry->execute( "select *
57                        from kb3_corps
58                       where crp_name = '".slashfix( $name )."'" );
59       
60      if ( $qry->recordCount() == 0 ) {
61        $qry->execute( "insert into kb3_corps values ( null,
62                                                       '".slashfix( $name )."',
63                                                       ".$alliance->getID().",
64                                                       0,
65                                                       date_format( '"
66                                                         .$timestamp."',
67                                                         '%Y.%m.%d %H:%i:%s')
68                                                      )" );
69        $this->id_ = $qry->getInsertID();
70      }
71      else {
72        $row = $qry->getRow();
73        $this->id_ = $row['crp_id'];
74        if ( $this->isUpdatable( $timestamp ) &&
75             $row['crp_all_id'] != $alliance->getID() ) {
76          $qry->execute( "update kb3_corps
77                             set crp_all_id = ".$alliance->getID().",
78                                 crp_updated = date_format( '".$timestamp."',
79                                                            '%Y.%m.%d %H:%i:%s')
80                           where crp_id = ".$this->id_ );
81        }
82      }
83
84      return $this->id_;
85    }
86
87    function isUpdatable( $timestamp )
88    {
89      $qry = new DBQuery();
90      $qry->execute( "select crp_id
91                        from kb3_corps
92                       where crp_id = ".$this->id_."
93                         and ( crp_updated < date_format( '".$timestamp."',
94                                                          '%Y.%m.%d %H:%i' )
95                               or crp_updated is null )" );
96
97      return $qry->recordCount() == 1;
98    }
99  }
100?>
Note: See TracBrowser for help on using the browser.