Changeset 65


Ignore:
Timestamp:
Aug 6, 2009, 8:37:02 AM (15 years ago)
Author:
george
Message:
  • Opraveno: Editace a ukládání podrobného nastavení světů.
  • Opraveno: Světy v generovaném realmlistu nebyly viditelné.
Location:
trunk/www
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/www/model/realm.php

    r64 r65  
    9696      'mysql --user=server'.$this->Data['Server'].' --password=server'.$this->Data['Server'].' realm'.$this->Id.'_scriptdev2 < emulator/'.$Database['Emulator'].'/source/src/bindings/ScriptDev2/sql/scriptdev2_script_full.sql',
    9797      'mysql --user=server'.$this->Data['Server'].' --password=server'.$this->Data['Server'].' realm'.$this->Id.'_mangos < emulator/'.$Database['Emulator'].'/source/src/bindings/ScriptDev2/sql/mangos_scriptname_full.sql',
    98       'mysql --user=server'.$this->Data['Server'].' --password=server'.$this->Data['Server'].' realm'.$this->Id.'_characters < emulator/'.$Database['Emulator'].'/share/mangos/sql/characters.sql'));
     98      'mysql --user=server'.$this->Data['Server'].' --password=server'.$this->Data['Server'].' realm'.$this->Id.'_characters < emulator/'.$Database['Emulator'].'/source/sql/characters.sql'));
    9999    if($Database['ACIDSourceFileName'] != '')
    100100      $CommandList[] = 'mysql --user=server'.$this->Data['Server'].' --password=server'.$this->Data['Server'].' realm'.$this->Id.'_mangos < database/'.$Database['Id'].'/'.$Database['ACIDSourceFileName'];
     
    215215   
    216216    // mangosd.conf
     217    if(!file_exists($RealmEtcDir.'mangosd.conf'))
     218      file_put_contents($RealmEtcDir.'mangosd.conf', file_get_contents($EmulatorEtcDir.'mangosd.conf.dist'));
    217219    $EmulatorConfig = new MangosConfigurationFile($this->Database);
    218     $EmulatorConfig->Load($EmulatorEtcDir.'mangosd.conf.dist');
     220    $EmulatorConfig->Load($RealmEtcDir.'mangosd.conf');
    219221    $EmulatorConfig->ParameterList['LoginDatabaseInfo'] = 'localhost;3306;server'.$this->Data['Server'].';server'.$this->Data['Server'].';server'.$this->Data['Server'].'_realmd';
    220222    $EmulatorConfig->ParameterList['WorldDatabaseInfo'] = 'localhost;3306;server'.$this->Data['Server'].';server'.$this->Data['Server'].';realm'.$this->Id.'_mangos';
  • trunk/www/model/server.php

    r63 r65  
    101101    while($Realm = $DbResult->fetch_assoc())
    102102    {
    103       $this->Database->insert('server'.$this->Id.'_realmd`.`realmlist', array('name' => addslashes($Realm['Name']), 'address' => $Config['Web']['Host'], 'port' => $Realm['NetworkPortWorldd']));
     103      $this->Database->insert('server'.$this->Id.'_realmd`.`realmlist', array('name' => addslashes($Realm['Name']), 'address' => $Config['Web']['Host'], 'port' => $Realm['NetworkPortWorldd'], 'icon' => 0, 'timezone' => 1, 'color' => 0));
    104104    }
    105105  }
  • trunk/www/types/Custom.php

    r56 r65  
    33RegisterType('YesNo', 'Enumeration', array('Ano', 'Ne'));
    44RegisterType('NoYes', 'Enumeration', array('Ne', 'Ano'));
     5RegisterType('GameType', 'Enumeration', array('Normální', 'PvP', 6 => 'RP', 8 => 'RPPvP'));
    56RegisterType('SecurityLevel', 'Enumeration', array('Hráči', 'Moderátoři', 'GM', 'Administrátoři', 'Nikdo'));
    67RegisterType('SkipCinematics', 'Enumeration', array('Ukázat vždy', 'Ukázat pouze pro první postavu rasy', 'Neukazovat vůbec'));
  • trunk/www/view/realm.php

    r64 r65  
    6464    'Items' => array(
    6565      'RealmId' => array('Type' => 'Hidden', 'Caption' => 'Id', 'Default' => 0),
     66      'PlayerLimit' => array('Type' => 'Integer', 'Caption' => 'Max. počet hráčů online', 'Default' => 100),
     67      'PlayerSaveInterval' => array('Type' => 'Integer', 'Caption' => 'Perioda ukládání postav hráčů do databáze', 'Default' => 60000),
     68      'vmap_enableLOS' => array('Type' => 'Boolean', 'Caption' => 'Povolení systému Line-of-sight', 'Default' => 0),
     69      'UpdateUptimeInterval' => array('Type' => 'Integer', 'Caption' => 'Perioda aktualizace doby běhu světa v databázi', 'Default' => 10),
     70      'GameType' => array('Type' => 'GameType', 'Caption' => 'Typ světa', 'Default' => 0),
     71      'Motd' => array('Type' => 'String', 'Caption' => 'Zpráva dne zobrazovaná hráčům při přihlášení', 'Default' => 'Vítej hráči!'),
    6672      'SkipCinematics' => array('Type' => 'SkipCinematics', 'Caption' => 'Zobrazovat úvodní video', 'Default' => ''),
    6773      'StartPlayerLevel' => array('Type' => 'Integer', 'Caption' => 'Počáteční úroveň hráčů', 'Default' => 1),
     
    8389      'MaxGroupXPDistance' => array('Type' => 'Integer', 'Caption' => 'Max. rozdíl XP ve skupině', 'Default' => 74),         
    8490      'MailDeliveryDelay' => array('Type' => 'Integer', 'Caption' => 'Zpoždění doručení pošty', 'Default' => 3600),         
    85       'Event.Announce' => array('Type' => 'Boolean', 'Caption' => 'Ohlašování událostí', 'Default' => 0),         
    86       'AllowTwoSide.Accounts' => array('Type' => 'Boolean', 'Caption' => 'Povolit účty s postavami obou stran', 'Default' => 0),         
    87       'AllowTwoSide.Interaction.Chat' => array('Type' => 'Boolean', 'Caption' => 'Povolit komunikaci mezi stranami', 'Default' => 0),         
    88       'AllowTwoSide.Interaction.Channel' => array('Type' => 'Boolean', 'Caption' => 'Povolit kanály mezi stranami', 'Default' => 0),
    89       'AllowTwoSide.WhoList' => array('Type' => 'Boolean', 'Caption' => 'Povolit obě strany v seznamu přítomných', 'Default' => 0),               
     91      'Event_Announce' => array('Type' => 'Boolean', 'Caption' => 'Ohlašování událostí', 'Default' => 0),         
     92      'AllowTwoSide_Accounts' => array('Type' => 'Boolean', 'Caption' => 'Povolit účty s postavami obou stran', 'Default' => 0),         
     93      'AllowTwoSide_Interaction_Chat' => array('Type' => 'Boolean', 'Caption' => 'Povolit komunikaci mezi stranami', 'Default' => 0),         
     94      'AllowTwoSide_Interaction_Channel' => array('Type' => 'Boolean', 'Caption' => 'Povolit kanály mezi stranami', 'Default' => 0),
     95      'AllowTwoSide_WhoList' => array('Type' => 'Boolean', 'Caption' => 'Povolit obě strany v seznamu přítomných', 'Default' => 0),
     96      'Rate_XP_Kill' => array('Type' => 'Integer', 'Caption' => 'Násobek získaných zkušeností za zabití', 'Default' => 1),
     97      'Rate_XP_Quest' => array('Type' => 'Integer', 'Caption' => 'Násobek získaných zkušeností za dokončení výpravy', 'Default' => 1),
     98      'Rate_XP_Explore' => array('Type' => 'Integer', 'Caption' => 'Násobek získaných zkušeností za objevení oblasti', 'Default' => 1),
     99      'Console_Enable' => array('Type' => 'Boolean', 'Caption' => 'Povolení vzdálená konzoly.', 'Default' => 0),
    90100    ),
    91101  ); 
     
    277287      $EmulatorConfig = new MangosConfigurationFile($this->Database);
    278288      $EmulatorConfig->Load('../realm/'.$Realm->Id.'/etc/mangosd.conf');
    279       $Form->Values = $EmulatorConfig->ParameterList;
     289      $Form->Values = array();
     290      foreach($EmulatorConfig->ParameterList as $Index => $Item)
     291        $Form->Values[str_replace('.', '_', $Index)] = $Item;
    280292      $Form->Values['RealmId'] = $_GET['Id'];
    281293      $Form->OnSubmit = '?Action=RealmSaveDetailed';
     
    288300  {
    289301    $Output = '';
    290     $Realm = new Realm($this->Database, $_POST['ServerId']);
     302    $Realm = new Realm($this->Database, $_POST['RealmId']);
    291303    if(($this->System->Modules['User']->User['Id'] == $Realm->GetUser()) or ($this->System->Modules['User']->User['Role'] >= USER_ROLE_ADMINISTRATOR))
    292304    {
    293       $Form = new Form($this->$SettingDetailedFormClass, array());
     305      $Form = new Form($this->SettingDetailedFormClass, array());
    294306      $Form->LoadValuesFromForm();
    295307      $EmulatorConfig = new MangosConfigurationFile($this->Database);
    296308      $EmulatorConfig->Load('../realm/'.$Realm->Id.'/etc/mangosd.conf');
    297       foreach($Form->Values as $Index => $Item)
    298         $EmulatorConfig->ParameterList[$Index] = $Item;
    299       $EmulatorConfig->Save('../server/'.$Realm->Id.'/etc/mangosd.conf');
     309      foreach($Form->Definition['Items'] as $Index => $Item)
     310      {
     311        if(!array_key_exists($Index, $Form->Values))
     312          $Form->Values[$Index] = 0;
     313        $EmulatorConfig->ParameterList[str_replace('_', '.', $Index)] = $Form->Values[$Index];
     314      }
     315      print_r($EmulatorConfig->ParameterList);
     316      $EmulatorConfig->Save('../realm/'.$Realm->Id.'/etc/mangosd.conf');
    300317      $RealmId = $_POST['RealmId'];
    301318      unset($Form->Values['RealmId']);
Note: See TracChangeset for help on using the changeset viewer.