[ Index ]
 

Code source de CMS made simple 1.0.5

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/modules/News/ -> method.install.php (source)

   1  <?php
   2  if (!isset($gCms)) exit;
   3  
   4  $db =& $this->GetDb();
   5  
   6  $dict = NewDataDictionary($db);
   7  $flds = "
   8      news_id I KEY,
   9      news_category_id I,
  10      news_title C(255),
  11      news_data X,
  12      news_date " . CMS_ADODB_DT . ",
  13      summary X,
  14      start_time " . CMS_ADODB_DT . ",
  15      end_time " . CMS_ADODB_DT . ",
  16      status C(25),
  17      icon C(255),
  18      create_date " . CMS_ADODB_DT . ",
  19      modified_date " . CMS_ADODB_DT . ",
  20      author_id I
  21  ";
  22  
  23  $taboptarray = array('mysql' => 'TYPE=MyISAM');
  24  $sqlarray = $dict->CreateTableSQL(cms_db_prefix()."module_news", 
  25          $flds, $taboptarray);
  26  $dict->ExecuteSQLArray($sqlarray);
  27  
  28  $db->CreateSequence(cms_db_prefix()."module_news_seq");
  29  
  30  $flds = "
  31      news_category_id I KEY,
  32      news_category_name C(255),
  33      parent_id I,
  34      hierarchy C(255),
  35      long_name X,
  36      create_date T,
  37      modified_date T
  38  ";
  39  
  40  $taboptarray = array('mysql' => 'TYPE=MyISAM');
  41  $sqlarray = $dict->CreateTableSQL(cms_db_prefix()."module_news_categories", 
  42          $flds, $taboptarray);
  43  $dict->ExecuteSQLArray($sqlarray);
  44  
  45  $db->CreateSequence(cms_db_prefix()."module_news_categories_seq");
  46  
  47  #Set Permission
  48  $this->CreatePermission('Modify News', 'Modify News');
  49  
  50  # Setup summary template
  51  $this->SetTemplate('displaysummary', $this->GetSummaryHtmlTemplate());
  52  
  53  # Setup detail template
  54  $this->SetTemplate('displaydetail', $this->GetDetailHtmlTemplate());
  55  
  56  # Setup General category
  57  $catid = $db->GenID(cms_db_prefix()."module_news_categories_seq");
  58  $query = 'INSERT INTO '.cms_db_prefix().'module_news_categories (news_category_id, news_category_name, parent_id, create_date, modified_date) VALUES (?,?,?,'.$db->DBTimeStamp(time()).','.$db->DBTimeStamp(time()).')';
  59  $db->Execute($query, array($catid, 'General', -1));
  60  
  61  # Setup initial news article
  62  $articleid = $db->GenID(cms_db_prefix()."module_news_seq");
  63  $query = 'INSERT INTO '.cms_db_prefix().'module_news ( NEWS_ID, NEWS_CATEGORY_ID, AUTHOR_ID, NEWS_TITLE, NEWS_DATA, NEWS_DATE, SUMMARY, START_TIME, END_TIME, STATUS, ICON, CREATE_DATE, MODIFIED_DATE ) VALUES (?,?,?,?,?,'.$db->DBTimeStamp(time()).',?,?,?,?,?,'.$db->DBTimeStamp(time()).','.$db->DBTimeStamp(time()).')';
  64  $db->Execute($query, array($articleid, $catid, 1, 'News Module Installed', 'The news module was installed.  Exciting. This news article is not using the Summary field and therefore there is no link to read more. But you can click on the news heading to read only this article.', null, null, null, 'published', null));
  65  
  66  $this->UpdateHierarchyPositions();
  67  
  68  # Setup permissions
  69  $perm_id = $db->GetOne("SELECT permission_id FROM ".cms_db_prefix()."permissions WHERE permission_name = 'Modify News'");
  70  $group_id = $db->GetOne("SELECT group_id FROM ".cms_db_prefix()."groups WHERE group_name = 'Admin'");
  71  
  72  $count = $db->GetOne("SELECT count(*) FROM " . cms_db_prefix() . "group_perms WHERE group_id = ? AND permission_id = ?", array($group_id, $perm_id));
  73  if (isset($count) && intval($count) == 0)
  74  {
  75      $new_id = $db->GenID(cms_db_prefix()."group_perms_seq");
  76      $query = "INSERT INTO " . cms_db_prefix() . "group_perms (group_perm_id, group_id, permission_id, create_date, modified_date) VALUES (".$new_id.", ".$group_id.", ".$perm_id.", ". $db->DBTimeStamp(time()) . ", " . $db->DBTimeStamp(time()) . ")";
  77      $db->Execute($query);
  78  }
  79  
  80  $group_id = $db->GetOne("SELECT group_id FROM ".cms_db_prefix()."groups WHERE group_name = 'Editor'");
  81  
  82  $count = $db->GetOne("SELECT count(*) FROM " . cms_db_prefix() . "group_perms WHERE group_id = ? AND permission_id = ?", array($group_id, $perm_id));
  83  if (isset($count) && intval($count) == 0)
  84  {
  85      $new_id = $db->GenID(cms_db_prefix()."group_perms_seq");
  86      $query = "INSERT INTO " . cms_db_prefix() . "group_perms (group_perm_id, group_id, permission_id, create_date, modified_date) VALUES (".$new_id.", ".$group_id.", ".$perm_id.", ". $db->DBTimeStamp(time()) . ", " . $db->DBTimeStamp(time()) . ")";
  87      $db->Execute($query);
  88  }
  89  
  90  #Setup events
  91  $this->CreateEvent('NewsArticleAdded');
  92  $this->CreateEvent('NewsArticleEdited');
  93  $this->CreateEvent('NewsArticleDeleted');
  94  $this->CreateEvent('NewsCategoryAdded');
  95  $this->CreateEvent('NewsCategoryEdited');
  96  $this->CreateEvent('NewsCategoryDeleted');
  97  
  98  ?>


Généré le : Tue Apr 3 18:50:37 2007 par Balluche grâce à PHPXref 0.7