This commit is contained in:
Nimetu 2014-01-03 18:03:11 +02:00
parent 9ac6ba900e
commit d6a41e652f
45 changed files with 879 additions and 542 deletions

View file

@ -226,6 +226,7 @@ code\ryzom\tools\server\ryzom_ams\old
# AMS ignore # AMS ignore
code/ryzom/tools/server/ryzom_ams/www/config.php code/ryzom/tools/server/ryzom_ams/www/config.php
code/ryzom/tools/server/ryzom_ams/www/is_installed
#tools and external dir's #tools and external dir's
external external

View file

@ -595,7 +595,7 @@ MACRO(NL_SETUP_BUILD)
SET(NL_DEBUG_CFLAGS "/Zi /MDd /RTC1 /D_DEBUG ${DEBUG_CFLAGS} ${NL_DEBUG_CFLAGS}") SET(NL_DEBUG_CFLAGS "/Zi /MDd /RTC1 /D_DEBUG ${DEBUG_CFLAGS} ${NL_DEBUG_CFLAGS}")
SET(NL_RELEASE_CFLAGS "/MD /DNDEBUG ${RELEASE_CFLAGS} ${NL_RELEASE_CFLAGS}") SET(NL_RELEASE_CFLAGS "/MD /DNDEBUG ${RELEASE_CFLAGS} ${NL_RELEASE_CFLAGS}")
SET(NL_DEBUG_LINKFLAGS "/DEBUG /OPT:NOREF /OPT:NOICF /NODEFAULTLIB:msvcrt /INCREMENTAL:YES ${NL_DEBUG_LINKFLAGS}") SET(NL_DEBUG_LINKFLAGS "/DEBUG /OPT:NOREF /OPT:NOICF /NODEFAULTLIB:msvcrt ${MSVC_INCREMENTAL_YES_FLAG} ${NL_DEBUG_LINKFLAGS}")
SET(NL_RELEASE_LINKFLAGS "/OPT:REF /OPT:ICF /INCREMENTAL:NO ${NL_RELEASE_LINKFLAGS}") SET(NL_RELEASE_LINKFLAGS "/OPT:REF /OPT:ICF /INCREMENTAL:NO ${NL_RELEASE_LINKFLAGS}")
IF(WITH_WARNINGS) IF(WITH_WARNINGS)
@ -789,12 +789,7 @@ MACRO(NL_SETUP_BUILD)
SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} ${XARCH}-Wl,-macosx_version_min,${CMAKE_OSX_DEPLOYMENT_TARGET}") SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} ${XARCH}-Wl,-macosx_version_min,${CMAKE_OSX_DEPLOYMENT_TARGET}")
ENDIF(CMAKE_IOS_SIMULATOR_SYSROOT AND TARGET_X86) ENDIF(CMAKE_IOS_SIMULATOR_SYSROOT AND TARGET_X86)
ELSE(IOS) ELSE(IOS)
IF(CMAKE_OSX_SYSROOT)
ADD_PLATFORM_FLAGS("-isysroot ${CMAKE_OSX_SYSROOT}")
ENDIF(CMAKE_OSX_SYSROOT)
# Always force -mmacosx-version-min to override environement variable # Always force -mmacosx-version-min to override environement variable
ADD_PLATFORM_FLAGS("-mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}")
SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-macosx_version_min,${CMAKE_OSX_DEPLOYMENT_TARGET}") SET(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -Wl,-macosx_version_min,${CMAKE_OSX_DEPLOYMENT_TARGET}")
ENDIF(IOS) ENDIF(IOS)

View file

@ -12,7 +12,7 @@ each other so you can use only the parts you really need in your project.
If you want know more about the library content and functionalities, you If you want know more about the library content and functionalities, you
should take a look on the documents present in the doc directory. should take a look on the documents present in the doc directory.
Ryzom Core is currently developped and tested under GNU/Linux and Windows Ryzom Core is currently developed and tested under GNU/Linux and Windows
environments. environments.
@ -29,4 +29,7 @@ file for for more details on license terms and other legal issues.
Installation Installation
------------ ------------
Please visit http://dev.ryzom.com for more information. Please visit https://ryzomcore.atlassian.net/wiki/display/RC/Ryzom+Core+Home for more information.
In particular the Getting Started section on the right side of the webpage includes build
instructions for Windows, Linux and Mac.

View file

@ -128,7 +128,7 @@ inline uint32 CPSAttribMakerBinOp<uint32>::getMinValue(void) const
{ {
uint32 lhs = _Arg[0]->getMinValue(); uint32 lhs = _Arg[0]->getMinValue();
uint32 rhs = _Arg[1]->getMaxValue(); uint32 rhs = _Arg[1]->getMaxValue();
return lhs > rhs ? 0 : lhs - rhs; return rhs > lhs ? 0 : lhs - rhs;
} }
break; break;
default: default:
@ -153,7 +153,7 @@ inline uint32 CPSAttribMakerBinOp<uint32>::getMaxValue(void) const
{ {
uint32 lhs = _Arg[0]->getMaxValue(); uint32 lhs = _Arg[0]->getMaxValue();
uint32 rhs = _Arg[1]->getMinValue(); uint32 rhs = _Arg[1]->getMinValue();
return lhs > rhs ? 0 : lhs - rhs; return rhs > lhs ? 0 : lhs - rhs;
} }
break; break;
default: default:

View file

@ -586,7 +586,7 @@ template<class T, class U> inline T type_cast(U o)
#ifdef NL_ISO_CPP0X_AVAILABLE #ifdef NL_ISO_CPP0X_AVAILABLE
# define nlctassert(cond) static_assert(cond, "Compile time assert in "#cond) # define nlctassert(cond) static_assert(cond, "Compile time assert in "#cond)
#else #else
# define nlctassert(cond) sizeof(uint[(cond) ? 1 : 0]) # define nlctassert(cond) (void)sizeof(uint[(cond) ? 1 : 0])
#endif #endif
/** /**

View file

@ -2191,6 +2191,7 @@ void CDriverGL::setSwapVBLInterval(uint interval)
res = nwglSwapIntervalEXT(_Interval) == TRUE; res = nwglSwapIntervalEXT(_Interval) == TRUE;
} }
#elif defined(NL_OS_MAC) #elif defined(NL_OS_MAC)
[_ctx setValues:(GLint*)&interval forParameter:NSOpenGLCPSwapInterval];
#elif defined(NL_OS_UNIX) #elif defined(NL_OS_UNIX)
if (_win && _Extensions.GLXEXTSwapControl) if (_win && _Extensions.GLXEXTSwapControl)
{ {
@ -2251,6 +2252,8 @@ void CDriverGL::enablePolygonSmoothing(bool smooth)
{ {
H_AUTO_OGL(CDriverGL_enablePolygonSmoothing); H_AUTO_OGL(CDriverGL_enablePolygonSmoothing);
if (_PolygonSmooth == smooth) return;
#ifndef USE_OPENGLES #ifndef USE_OPENGLES
if(smooth) if(smooth)
glEnable(GL_POLYGON_SMOOTH); glEnable(GL_POLYGON_SMOOTH);

View file

@ -202,24 +202,21 @@ namespace NLGUI
prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_normal" ); prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_normal" );
if (prop) if (prop)
{ {
string TxName = (const char *) prop; string TxName = NLMISC::toLower((const char *) prop);
TxName = strlwr(TxName);
_TextureIdNormal.setTexture(TxName.c_str()); _TextureIdNormal.setTexture(TxName.c_str());
} }
prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_pushed" ); prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_pushed" );
if (prop) if (prop)
{ {
string TxName = (const char *) prop; string TxName = NLMISC::toLower((const char *) prop);
TxName = strlwr(TxName);
_TextureIdPushed.setTexture(TxName.c_str()); _TextureIdPushed.setTexture(TxName.c_str());
} }
prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_over" ); prop = (char*) xmlGetProp( cur, (xmlChar*)"tx_over" );
if (prop) if (prop)
{ {
string TxName = (const char *) prop; string TxName = NLMISC::toLower((const char *) prop);
TxName = strlwr(TxName);
_TextureIdOver.setTexture(TxName.c_str()); _TextureIdOver.setTexture(TxName.c_str());
} }

View file

@ -2051,10 +2051,10 @@ namespace NLGUI
// Clear all structures used only for init // Clear all structures used only for init
//NLMISC::contReset (_ParentPositionsMap); NLMISC::contReset (_ParentPositionsMap);
//NLMISC::contReset (_ParentSizesMap); NLMISC::contReset (_ParentSizesMap);
//NLMISC::contReset (_ParentSizesMaxMap); NLMISC::contReset (_ParentSizesMaxMap);
//NLMISC::contReset (_LuaClassAssociation); NLMISC::contReset (_LuaClassAssociation);
return true; return true;
} }

View file

@ -2880,7 +2880,7 @@ namespace NLGUI
bool CWidgetManager::serializeTreeData( xmlNodePtr parentNode ) const bool CWidgetManager::serializeTreeData( xmlNodePtr parentNode ) const
{ {
if( parentNode == NULL ) if( parentNode == NULL )
return NULL; return false;
std::vector< SMasterGroup >::size_type i; std::vector< SMasterGroup >::size_type i;
for( i = 0; i < _MasterGroups.size(); i++ ) for( i = 0; i < _MasterGroups.size(); i++ )

View file

@ -138,7 +138,7 @@ namespace GUIEditor
info.description = value.toUtf8().constData(); info.description = value.toUtf8().constData();
else else
if( key == "icon" ) if( key == "icon" )
info.icon == value.toUtf8().constData(); info.icon = value.toUtf8().constData();
else else
if( key == "abstract" ) if( key == "abstract" )
{ {

View file

@ -85,7 +85,7 @@ void ZoneBuilder::actionLigoTile(const LigoData &data, const ZonePosition &zoneP
return; return;
checkBeginMacro(); checkBeginMacro();
// nlinfo(QString("%1 %2 %3 (%4 %5)").arg(data.zoneName.c_str()).arg(zonePos.x).arg(zonePos.y).arg(data.posX).arg(data.posY).toStdString().c_str()); // nlinfo(QString("%1 %2 %3 (%4 %5)").arg(data.zoneName.c_str()).arg(zonePos.x).arg(zonePos.y).arg(data.posX).arg(data.posY).toUtf8().constData());
m_zonePositionList.push_back(zonePos); m_zonePositionList.push_back(zonePos);
m_undoStack->push(new LigoTileCommand(data, zonePos, this, m_landscapeScene)); m_undoStack->push(new LigoTileCommand(data, zonePos, this, m_landscapeScene));
} }
@ -105,7 +105,7 @@ void ZoneBuilder::actionLigoResize(uint index, sint32 newMinX, sint32 newMaxX, s
return; return;
checkBeginMacro(); checkBeginMacro();
// nlinfo(QString("minX=%1 maxX=%2 minY=%3 maxY=%4").arg(newMinX).arg(newMaxX).arg(newMinY).arg(newMaxY).toStdString().c_str()); // nlinfo(QString("minX=%1 maxX=%2 minY=%3 maxY=%4").arg(newMinX).arg(newMaxX).arg(newMinY).arg(newMaxY).toUtf8().constData());
m_undoStack->push(new LigoResizeCommand(index, newMinX, newMaxX, newMinY, newMaxY, this)); m_undoStack->push(new LigoResizeCommand(index, newMinX, newMaxX, newMinY, newMaxY, this));
} }
@ -119,7 +119,7 @@ void ZoneBuilder::addZone(sint32 posX, sint32 posY)
return; return;
// Check zone name // Check zone name
std::string zoneName = m_listZonesWidget->currentZoneName().toStdString(); std::string zoneName = m_listZonesWidget->currentZoneName().toUtf8().constData();
if (zoneName.empty()) if (zoneName.empty())
return; return;
@ -161,7 +161,7 @@ void ZoneBuilder::addTransition(const sint32 posX, const sint32 posY)
m_createdAction = false; m_createdAction = false;
m_zonePositionList.clear(); m_zonePositionList.clear();
nlinfo(QString("trans %1,%2").arg(posX).arg(posY).toStdString().c_str()); nlinfo(QString("trans %1,%2").arg(posX).arg(posY).toUtf8().constData());
sint32 x = (sint32)floor(float(posX) / m_landscapeScene->cellSize()); sint32 x = (sint32)floor(float(posX) / m_landscapeScene->cellSize());
sint32 y = (sint32)floor(float(posY) / m_landscapeScene->cellSize()); sint32 y = (sint32)floor(float(posY) / m_landscapeScene->cellSize());
@ -271,7 +271,7 @@ int ZoneBuilder::createZoneRegion(const QString &fileName)
{ {
LandscapeItem landItem; LandscapeItem landItem;
landItem.zoneRegionObject = new ZoneRegionObject(); landItem.zoneRegionObject = new ZoneRegionObject();
landItem.zoneRegionObject->load(fileName.toStdString()); landItem.zoneRegionObject->load(fileName.toUtf8().constData());
if (checkOverlaps(landItem.zoneRegionObject->ligoZoneRegion())) if (checkOverlaps(landItem.zoneRegionObject->ligoZoneRegion()))
{ {
@ -382,8 +382,8 @@ bool ZoneBuilder::initZoneBank (const QString &pathName)
std::string error; std::string error;
Q_FOREACH(QString file, listFiles) Q_FOREACH(QString file, listFiles)
{ {
//nlinfo(file.toStdString().c_str()); //nlinfo(file.toUtf8().constData());
if (!m_zoneBank.addElement((pathName + file).toStdString(), error)) if (!m_zoneBank.addElement((pathName + file).toUtf8().constData(), error))
QMessageBox::critical(0, QObject::tr("Landscape editor"), QString(error.c_str()), QMessageBox::Ok); QMessageBox::critical(0, QObject::tr("Landscape editor"), QString(error.c_str()), QMessageBox::Ok);
} }
delete dir; delete dir;

View file

@ -81,7 +81,7 @@ int ZoneBuilderBase::loadZoneRegion(const QString &fileName, int defaultId)
{ {
LandscapeItem landItem; LandscapeItem landItem;
landItem.zoneRegionObject = new ZoneRegionObject(); landItem.zoneRegionObject = new ZoneRegionObject();
landItem.zoneRegionObject->load(fileName.toStdString()); landItem.zoneRegionObject->load(fileName.toUtf8().constData());
if (!checkOverlaps(landItem.zoneRegionObject->ligoZoneRegion())) if (!checkOverlaps(landItem.zoneRegionObject->ligoZoneRegion()))
{ {
@ -138,8 +138,8 @@ bool ZoneBuilderBase::initZoneBank (const QString &pathName)
std::string error; std::string error;
Q_FOREACH(QString file, listFiles) Q_FOREACH(QString file, listFiles)
{ {
//nlinfo(file.toStdString().c_str()); //nlinfo(file.toUtf8().constData());
if (!m_zoneBank.addElement((pathName + file).toStdString(), error)) if (!m_zoneBank.addElement((pathName + file).toUtf8().constData(), error))
QMessageBox::critical(0, QObject::tr("Landscape editor"), QString(error.c_str()), QMessageBox::Ok); QMessageBox::critical(0, QObject::tr("Landscape editor"), QString(error.c_str()), QMessageBox::Ok);
} }
delete dir; delete dir;

View file

@ -311,7 +311,7 @@ void LandscapeEditorWindow::saveLandscape(int row, bool force)
tr("NeL Ligo land file (*.land)")); tr("NeL Ligo land file (*.land)"));
if (!fileName.isEmpty()) if (!fileName.isEmpty())
{ {
regionObject->setFileName(fileName.toStdString()); regionObject->setFileName(fileName.toUtf8().constData());
regionObject->save(); regionObject->save();
regionObject->setModified(false); regionObject->setModified(false);
item->setText(fileName); item->setText(fileName);

View file

@ -128,7 +128,7 @@ QPixmap *ListZonesModel::getPixmap(const QString &zoneName) const
{ {
QPixmap *result = 0; QPixmap *result = 0;
if (!m_pixmapMap.contains(zoneName)) if (!m_pixmapMap.contains(zoneName))
nlwarning("QPixmap %s not found", zoneName.toStdString().c_str()); nlwarning("QPixmap %s not found", zoneName.toUtf8().constData());
else else
result = m_pixmapMap.value(zoneName); result = m_pixmapMap.value(zoneName);
return result; return result;

View file

@ -191,7 +191,7 @@ void ListZonesWidget::updateFilters_1(const QString &value)
{ {
disableSignals(true); disableSignals(true);
std::vector<std::string> allCategoryValues; std::vector<std::string> allCategoryValues;
m_zoneBuilder->getZoneBank().getCategoryValues(value.toStdString(), allCategoryValues); m_zoneBuilder->getZoneBank().getCategoryValues(value.toUtf8().constData(), allCategoryValues);
m_ui.categoryValueComboBox_1->clear(); m_ui.categoryValueComboBox_1->clear();
for(size_t i = 0; i < allCategoryValues.size(); ++i) for(size_t i = 0; i < allCategoryValues.size(); ++i)
m_ui.categoryValueComboBox_1->addItem(QString(allCategoryValues[i].c_str())); m_ui.categoryValueComboBox_1->addItem(QString(allCategoryValues[i].c_str()));
@ -204,7 +204,7 @@ void ListZonesWidget::updateFilters_2(const QString &value)
{ {
disableSignals(true); disableSignals(true);
std::vector<std::string> allCategoryValues; std::vector<std::string> allCategoryValues;
m_zoneBuilder->getZoneBank().getCategoryValues(value.toStdString(), allCategoryValues); m_zoneBuilder->getZoneBank().getCategoryValues(value.toUtf8().constData(), allCategoryValues);
m_ui.categoryValueComboBox_2->clear(); m_ui.categoryValueComboBox_2->clear();
for(size_t i = 0; i < allCategoryValues.size(); ++i) for(size_t i = 0; i < allCategoryValues.size(); ++i)
@ -218,7 +218,7 @@ void ListZonesWidget::updateFilters_3(const QString &value)
{ {
disableSignals(true); disableSignals(true);
std::vector<std::string> allCategoryValues; std::vector<std::string> allCategoryValues;
m_zoneBuilder->getZoneBank().getCategoryValues(value.toStdString(), allCategoryValues); m_zoneBuilder->getZoneBank().getCategoryValues(value.toUtf8().constData(), allCategoryValues);
m_ui.categoryValueComboBox_3->clear(); m_ui.categoryValueComboBox_3->clear();
for(size_t i = 0; i < allCategoryValues.size(); ++i) for(size_t i = 0; i < allCategoryValues.size(); ++i)
@ -232,7 +232,7 @@ void ListZonesWidget::updateFilters_4(const QString &value)
{ {
disableSignals(true); disableSignals(true);
std::vector<std::string> allCategoryValues; std::vector<std::string> allCategoryValues;
m_zoneBuilder->getZoneBank().getCategoryValues(value.toStdString(), allCategoryValues); m_zoneBuilder->getZoneBank().getCategoryValues(value.toUtf8().constData(), allCategoryValues);
m_ui.categoryValueComboBox_4->clear(); m_ui.categoryValueComboBox_4->clear();
for(size_t i = 0; i < allCategoryValues.size(); ++i) for(size_t i = 0; i < allCategoryValues.size(); ++i)
@ -249,37 +249,37 @@ void ListZonesWidget::updateListZones()
zoneBank.resetSelection (); zoneBank.resetSelection ();
if(m_ui.categoryTypeComboBox_1->currentIndex() > 0 ) if(m_ui.categoryTypeComboBox_1->currentIndex() > 0 )
zoneBank.addOrSwitch (m_ui.categoryTypeComboBox_1->currentText().toStdString() zoneBank.addOrSwitch (m_ui.categoryTypeComboBox_1->currentText().toUtf8().constData()
, m_ui.categoryValueComboBox_1->currentText().toStdString()); , m_ui.categoryValueComboBox_1->currentText().toUtf8().constData());
if(m_ui.categoryTypeComboBox_2->currentIndex() > 0 ) if(m_ui.categoryTypeComboBox_2->currentIndex() > 0 )
{ {
if (m_ui.logicComboBox_2->currentIndex() == 0) // AND switch wanted if (m_ui.logicComboBox_2->currentIndex() == 0) // AND switch wanted
zoneBank.addAndSwitch(m_ui.categoryTypeComboBox_2->currentText().toStdString() zoneBank.addAndSwitch(m_ui.categoryTypeComboBox_2->currentText().toUtf8().constData()
,m_ui.categoryValueComboBox_2->currentText().toStdString()); ,m_ui.categoryValueComboBox_2->currentText().toUtf8().constData());
else // OR switch wanted else // OR switch wanted
zoneBank.addOrSwitch(m_ui.categoryTypeComboBox_2->currentText().toStdString() zoneBank.addOrSwitch(m_ui.categoryTypeComboBox_2->currentText().toUtf8().constData()
,m_ui.categoryValueComboBox_2->currentText().toStdString()); ,m_ui.categoryValueComboBox_2->currentText().toUtf8().constData());
} }
if(m_ui.categoryTypeComboBox_3->currentIndex() > 0 ) if(m_ui.categoryTypeComboBox_3->currentIndex() > 0 )
{ {
if (m_ui.logicComboBox_3->currentIndex() == 0) // AND switch wanted if (m_ui.logicComboBox_3->currentIndex() == 0) // AND switch wanted
zoneBank.addAndSwitch(m_ui.categoryTypeComboBox_3->currentText().toStdString() zoneBank.addAndSwitch(m_ui.categoryTypeComboBox_3->currentText().toUtf8().constData()
,m_ui.categoryValueComboBox_3->currentText().toStdString()); ,m_ui.categoryValueComboBox_3->currentText().toUtf8().constData());
else // OR switch wanted else // OR switch wanted
zoneBank.addOrSwitch(m_ui.categoryTypeComboBox_3->currentText().toStdString() zoneBank.addOrSwitch(m_ui.categoryTypeComboBox_3->currentText().toUtf8().constData()
,m_ui.categoryValueComboBox_3->currentText().toStdString()); ,m_ui.categoryValueComboBox_3->currentText().toUtf8().constData());
} }
if(m_ui.categoryTypeComboBox_4->currentIndex() > 0 ) if(m_ui.categoryTypeComboBox_4->currentIndex() > 0 )
{ {
if (m_ui.logicComboBox_4->currentIndex() == 0) // AND switch wanted if (m_ui.logicComboBox_4->currentIndex() == 0) // AND switch wanted
zoneBank.addAndSwitch(m_ui.categoryTypeComboBox_4->currentText().toStdString() zoneBank.addAndSwitch(m_ui.categoryTypeComboBox_4->currentText().toUtf8().constData()
,m_ui.categoryValueComboBox_4->currentText().toStdString()); ,m_ui.categoryValueComboBox_4->currentText().toUtf8().constData());
else // OR switch wanted else // OR switch wanted
zoneBank.addOrSwitch(m_ui.categoryTypeComboBox_4->currentText().toStdString() zoneBank.addOrSwitch(m_ui.categoryTypeComboBox_4->currentText().toUtf8().constData()
,m_ui.categoryValueComboBox_4->currentText().toStdString()); ,m_ui.categoryValueComboBox_4->currentText().toUtf8().constData());
} }
std::vector<NLLIGO::CZoneBankElement *> currentSelection; std::vector<NLLIGO::CZoneBankElement *> currentSelection;

View file

@ -96,7 +96,7 @@ bool PixmapDatabase::loadPixmaps(const QString &zonePath, NLLIGO::CZoneBank &zon
painter.end(); painter.end();
delete pixmap; delete pixmap;
m_pixmapMap.insert(zonePixmapName, emptyPixmap); m_pixmapMap.insert(zonePixmapName, emptyPixmap);
nlwarning(QString("not found " + zonePath + zonePixmapName + ".png").toStdString().c_str()); nlwarning(QString("not found " + zonePath + zonePixmapName + ".png").toUtf8().constData());
} }
// All pixmaps must be have same size // All pixmaps must be have same size
else if (pixmap->width() != sizeX * m_textureSize) else if (pixmap->width() != sizeX * m_textureSize)
@ -140,7 +140,7 @@ QPixmap *PixmapDatabase::pixmap(const QString &zoneName) const
{ {
QPixmap *result = m_errorPixmap; QPixmap *result = m_errorPixmap;
if (!m_pixmapMap.contains(zoneName)) if (!m_pixmapMap.contains(zoneName))
nlwarning("QPixmap %s not found", zoneName.toStdString().c_str()); nlwarning("QPixmap %s not found", zoneName.toUtf8().constData());
else else
result = m_pixmapMap.value(zoneName); result = m_pixmapMap.value(zoneName);
return result; return result;

View file

@ -205,7 +205,7 @@ void PrimitivesView::save()
if (node->data(Constants::PRIMITIVE_FILE_IS_CREATED).toBool()) if (node->data(Constants::PRIMITIVE_FILE_IS_CREATED).toBool())
{ {
if (!NLLIGO::saveXmlPrimitiveFile(*node->primitives(), node->fileName().toStdString())) if (!NLLIGO::saveXmlPrimitiveFile(*node->primitives(), node->fileName().toUtf8().constData()))
QMessageBox::warning(this, "World Editor Qt", tr("Error writing output file: %1").arg(node->fileName())); QMessageBox::warning(this, "World Editor Qt", tr("Error writing output file: %1").arg(node->fileName()));
else else
node->setData(Constants::PRIMITIVE_IS_MODIFIED, false); node->setData(Constants::PRIMITIVE_IS_MODIFIED, false);
@ -230,7 +230,7 @@ void PrimitivesView::saveAs()
RootPrimitiveNode *node = static_cast<RootPrimitiveNode *>(index.internalPointer()); RootPrimitiveNode *node = static_cast<RootPrimitiveNode *>(index.internalPointer());
if (!NLLIGO::saveXmlPrimitiveFile(*node->primitives(), fileName.toStdString())) if (!NLLIGO::saveXmlPrimitiveFile(*node->primitives(), fileName.toUtf8().constData()))
QMessageBox::warning(this, "World Editor Qt", tr("Error writing output file: %1").arg(fileName)); QMessageBox::warning(this, "World Editor Qt", tr("Error writing output file: %1").arg(fileName));
else else
{ {

View file

@ -190,12 +190,12 @@ void PropertyEditorWidget::updateSelection(Node *node)
void PropertyEditorWidget::propertyChanged(QtProperty *property) void PropertyEditorWidget::propertyChanged(QtProperty *property)
{ {
nlinfo(QString("property %1 changed").arg(property->propertyName()).toStdString().c_str()); nlinfo(QString("property %1 changed").arg(property->propertyName()).toUtf8().constData());
} }
void PropertyEditorWidget::resetProperty(QtProperty *property) void PropertyEditorWidget::resetProperty(QtProperty *property)
{ {
nlinfo(QString("property %1 reset").arg(property->propertyName()).toStdString().c_str()); nlinfo(QString("property %1 reset").arg(property->propertyName()).toUtf8().constData());
} }
QtProperty *PropertyEditorWidget::addBoolProperty(const NLLIGO::IProperty *property, QtProperty *PropertyEditorWidget::addBoolProperty(const NLLIGO::IProperty *property,
@ -248,7 +248,7 @@ QtProperty *PropertyEditorWidget::addConstStringProperty(const NLLIGO::IProperty
// Find index of current value // Find index of current value
for (int i = 0; i < listEnums.size(); i++) for (int i = 0; i < listEnums.size(); i++)
{ {
if (value == listEnums[i].toStdString()) if (value == std::string(listEnums[i].toUtf8().constData()))
{ {
m_enumManager->setValue(prop, i); m_enumManager->setValue(prop, i);
break; break;
@ -346,7 +346,7 @@ QtProperty *PropertyEditorWidget::addConstStringArrayProperty(const NLLIGO::IPro
// Find index of current value // Find index of current value
//for (int i = 0; i < listEnums.size(); i++) //for (int i = 0; i < listEnums.size(); i++)
//{ //{
// if (value == listEnums[i].toStdString()) // if (value == std::string(listEnums[i].toUtf8().constData()))
// { // {
// m_enumManager->setValue(prop, i); // m_enumManager->setValue(prop, i);
// break; // break;

View file

@ -346,7 +346,7 @@ void LoadRootPrimitiveCommand::redo()
// set the primitive context // set the primitive context
NLLIGO::CPrimitiveContext::instance().CurrentPrimitive = primitives; NLLIGO::CPrimitiveContext::instance().CurrentPrimitive = primitives;
NLLIGO::loadXmlPrimitiveFile(*primitives, m_fileName.toStdString(), *Utils::ligoConfig()); NLLIGO::loadXmlPrimitiveFile(*primitives, m_fileName.toUtf8().constData(), *Utils::ligoConfig());
// unset the context // unset the context
NLLIGO::CPrimitiveContext::instance().CurrentPrimitive = NULL; NLLIGO::CPrimitiveContext::instance().CurrentPrimitive = NULL;
@ -358,7 +358,7 @@ void LoadRootPrimitiveCommand::redo()
// Check property types // Check property types
if (Utils::recursiveUpdateDefaultValues(primitives->RootNode)) if (Utils::recursiveUpdateDefaultValues(primitives->RootNode))
{ {
nlwarning("In file (%s) : Some primitives have been modified to initialise their default values\nor to change their properties type.", m_fileName.toStdString().c_str()); nlwarning("In file (%s) : Some primitives have been modified to initialise their default values\nor to change their properties type.", m_fileName.toUtf8().constData());
} }
m_rootPrimIndex = m_model->createRootPrimitiveNode(m_fileName, primitives); m_rootPrimIndex = m_model->createRootPrimitiveNode(m_fileName, primitives);
@ -460,15 +460,17 @@ void AddPrimitiveByClassCommand::redo()
PrimitiveNode *parentNode = static_cast<PrimitiveNode *>(parentIndex.internalPointer()); PrimitiveNode *parentNode = static_cast<PrimitiveNode *>(parentIndex.internalPointer());
const NLLIGO::CPrimitiveClass *primClass = parentNode->primitiveClass(); const NLLIGO::CPrimitiveClass *primClass = parentNode->primitiveClass();
std::string className = m_className.toUtf8().constData();
int id = 0; int id = 0;
while (primClass->DynamicChildren[id].ClassName != m_className.toStdString()) while (primClass->DynamicChildren[id].ClassName != className)
++id; ++id;
// set the primitive context // set the primitive context
NLLIGO::CPrimitiveContext::instance().CurrentPrimitive = parentNode->rootPrimitiveNode()->primitives(); NLLIGO::CPrimitiveContext::instance().CurrentPrimitive = parentNode->rootPrimitiveNode()->primitives();
QString namePrimititve = QString("%1_%2").arg(m_className).arg(parentNode->childCount()); QString namePrimititve = QString("%1_%2").arg(m_className).arg(parentNode->childCount());
NLLIGO::IPrimitive *newPrimitive = Utils::createPrimitive(m_className.toStdString().c_str(), namePrimititve.toStdString().c_str(), NLLIGO::IPrimitive *newPrimitive = Utils::createPrimitive(m_className.toUtf8().constData(), namePrimititve.toUtf8().constData(),
NLMISC::CVector(m_initPos.x(), -m_initPos.y(), 0.0), m_delta, primClass->DynamicChildren[id].Parameters, parentNode->primitive()); NLMISC::CVector(m_initPos.x(), -m_initPos.y(), 0.0), m_delta, primClass->DynamicChildren[id].Parameters, parentNode->primitive());
// unset the context // unset the context

View file

@ -62,7 +62,7 @@ bool WorldEditorPlugin::initialize(ExtensionSystem::IPluginManager *pluginManage
try try
{ {
// Search path of file world_editor_classes.xml // Search path of file world_editor_classes.xml
std::string ligoPath = NLMISC::CPath::lookup(fileName.toStdString()); std::string ligoPath = NLMISC::CPath::lookup(fileName.toUtf8().constData());
// Init LIGO // Init LIGO
m_ligoConfig.readPrimitiveClass(ligoPath.c_str(), true); m_ligoConfig.readPrimitiveClass(ligoPath.c_str(), true);
NLLIGO::Register(); NLLIGO::Register();

View file

@ -168,7 +168,7 @@ void WorldEditorWindow::loadWorldEditFile(const QString &fileName)
return; return;
Utils::WorldEditList worldEditList; Utils::WorldEditList worldEditList;
if (!Utils::loadWorldEditFile(fileName.toStdString(), worldEditList)) if (!Utils::loadWorldEditFile(fileName.toUtf8().constData(), worldEditList))
{ {
// TODO: add the message box // TODO: add the message box
return; return;

View file

@ -146,7 +146,8 @@ if not args.noconf:
try: try:
MaxUserDirectory MaxUserDirectory
except NameError: except NameError:
MaxUserDirectory = "C:/Users/Kaetemi/AppData/Local/Autodesk/3dsMax/2010 - 32bit/enu" import os
MaxUserDirectory = os.path.normpath(os.environ["LOCALAPPDATA"] + "/Autodesk/3dsMax/2010 - 32bit/enu")
try: try:
MaxExecutable MaxExecutable
except NameError: except NameError:

View file

@ -0,0 +1,17 @@
TITLE 1_export.py
1_export.py
TITLE 2_build.py
2_build.py
TITLE 3_install.py
3_install.py
TITLE 4_data_shard.py
4_data_shard.py
TITLE 5_client_dev.py
5_client_dev.py
TITLE 6_client_patch.py
6_client_patch.py -bo
TITLE 7_client_install.py
7_client_install.py
PAUSE

View file

@ -82,7 +82,7 @@ if MaxAvailable:
sDst.close() sDst.close()
while tagDiff > 0: while tagDiff > 0:
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-mip" ])
tagList = findFiles(log, outputDirectory, "", ".%PreGenFileExtension%") tagList = findFiles(log, outputDirectory, "", ".%PreGenFileExtension%")
newTagLen = len(tagList) newTagLen = len(tagList)
tagDiff = newTagLen - tagLen tagDiff = newTagLen - tagLen

View file

@ -93,7 +93,7 @@ if MaxAvailable:
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -99,7 +99,7 @@ if MaxAvailable:
# sDst.close() # sDst.close()
# while tagDiff > 0: # while tagDiff > 0:
# printLog(log, "MAXSCRIPT " + scriptDst) # printLog(log, "MAXSCRIPT " + scriptDst)
# subprocess.call([ Max, "-U", "MAXScript", "dummy_export.ms", "-q", "-mi", "-vn" ]) # subprocess.call([ Max, "-U", "MAXScript", "dummy_export.ms", "-q", "-mi", "-mip" ])
# tagList = findFiles(log, outDirTag, "", ".tag") # tagList = findFiles(log, outDirTag, "", ".tag")
# newTagLen = len(tagList) # newTagLen = len(tagList)
# tagDiff = newTagLen - tagLen # tagDiff = newTagLen - tagLen

View file

@ -93,7 +93,7 @@ if MaxAvailable:
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "anim_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "anim_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -93,7 +93,7 @@ if MaxAvailable:
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "clod_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "clod_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -78,7 +78,7 @@ def igExport(sourceDir, targetDir):
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "ig_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "ig_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -93,7 +93,7 @@ if LigoExportLand == "" or LigoExportOnePass == 1:
sDst.close() sDst.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "nel_ligo_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "nel_ligo_export.ms", "-q", "-mi", "-mip" ])
os.remove(scriptDst) os.remove(scriptDst)
printLog(log, "") printLog(log, "")

View file

@ -93,7 +93,7 @@ if MaxAvailable:
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "pacs_prim_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "pacs_prim_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -93,7 +93,7 @@ if MaxAvailable:
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "cmb_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "cmb_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -112,7 +112,7 @@ if MaxAvailable:
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "shape_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "shape_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -82,7 +82,7 @@ if MaxAvailable:
sDst.close() sDst.close()
while tagDiff > 0: while tagDiff > 0:
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "skel_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "skel_export.ms", "-q", "-mi", "-mip" ])
tagList = findFiles(log, outputDirectory, "", ".skel") tagList = findFiles(log, outputDirectory, "", ".skel")
newTagLen = len(tagList) newTagLen = len(tagList)
tagDiff = newTagLen - tagLen tagDiff = newTagLen - tagLen

View file

@ -82,7 +82,7 @@ if MaxAvailable:
sDst.close() sDst.close()
while tagDiff > 0: while tagDiff > 0:
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "swt_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "swt_export.ms", "-q", "-mi", "-mip" ])
tagList = findFiles(log, outputDirectory, "", ".swt") tagList = findFiles(log, outputDirectory, "", ".swt")
newTagLen = len(tagList) newTagLen = len(tagList)
tagDiff = newTagLen - tagLen tagDiff = newTagLen - tagLen

View file

@ -93,7 +93,7 @@ if MaxAvailable:
mrt.write("moe-moe-kyun") mrt.write("moe-moe-kyun")
mrt.close() mrt.close()
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "veget_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "veget_export.ms", "-q", "-mi", "-mip" ])
if os.path.exists(outputLogfile): if os.path.exists(outputLogfile):
try: try:
lSrc = open(outputLogfile, "r") lSrc = open(outputLogfile, "r")

View file

@ -82,7 +82,7 @@ if MaxAvailable:
sDst.close() sDst.close()
while tagDiff > 0: while tagDiff > 0:
printLog(log, "MAXSCRIPT " + scriptDst) printLog(log, "MAXSCRIPT " + scriptDst)
subprocess.call([ Max, "-U", "MAXScript", "zone_export.ms", "-q", "-mi", "-vn" ]) subprocess.call([ Max, "-U", "MAXScript", "zone_export.ms", "-q", "-mi", "-mip" ])
tagList = findFiles(log, outputDirectory, "", ".zone") tagList = findFiles(log, outputDirectory, "", ".zone")
newTagLen = len(tagList) newTagLen = len(tagList)
tagDiff = newTagLen - tagLen tagDiff = newTagLen - tagLen

View file

@ -47,7 +47,11 @@ SignUpURL = "";
StartupHost = "shard.ryzomcore.org:40916"; StartupHost = "shard.ryzomcore.org:40916";
StartupPage = "/login/r2_login.php"; StartupPage = "/login/r2_login.php";
InstallStatsUrl = "http://open.ryzom.com:50000/stats/stats.php"; InstallStatsUrl = "http://open.ryzom.com:50000/stats/stats.php";
CreateAccountURL = ""; CreateAccountURL = "http://shard.ryzomcore.org/ams/?page=register";
EditAccountURL = "http://shard.ryzomcore.org/ams/?page=settings";
ConditionsTermsURL = "http://www.gnu.org/licenses/agpl-3.0.html";
ForgetPwdURL = "http://shard.ryzomcore.org/ams/?page=forgot_password";
LoginSupportURL = "https://plus.google.com/u/0/communities/103798956862568269036";
InstallWebPage = ""; InstallWebPage = "";

View file

@ -889,6 +889,12 @@ void CClientConfig::setValues()
READ_STRING_DEV(FreeTrialURL) READ_STRING_DEV(FreeTrialURL)
READ_STRING_DEV(LoginSupportURL) READ_STRING_DEV(LoginSupportURL)
READ_STRING_FV(CreateAccountURL)
READ_STRING_FV(EditAccountURL)
READ_STRING_FV(ConditionsTermsURL)
READ_STRING_FV(ForgetPwdURL)
READ_STRING_FV(LoginSupportURL)
#ifndef RZ_NO_CLIENT #ifndef RZ_NO_CLIENT
// if cookie is not empty, it means that the client was launch // if cookie is not empty, it means that the client was launch
// by the nel_launcher, so it can't be local // by the nel_launcher, so it can't be local

View file

@ -688,15 +688,13 @@ void updateWeather()
} }
#endif #endif
// FIXME: temporary fix for teleportation crash
// Update new sky // Update new sky
if (ContinentMngr.cur() && !ContinentMngr.cur()->Indoor) if (ContinentMngr.cur() && Driver->getPolygonMode() == UDriver::Filled && Filter3D[FilterSky])
{
if(Driver->getPolygonMode() == UDriver::Filled)
{
if (Filter3D[FilterSky])
{ {
CSky &sky = ContinentMngr.cur()->CurrentSky; CSky &sky = ContinentMngr.cur()->CurrentSky;
if (sky.getScene())
if (!ContinentMngr.cur()->Indoor && sky.getScene())
{ {
s_SkyMode = NewSky; s_SkyMode = NewSky;
sky.getScene()->animate(TimeInSec-FirstTimeInSec); sky.getScene()->animate(TimeInSec-FirstTimeInSec);
@ -708,8 +706,6 @@ void updateWeather()
s_SkyMode = OldSky; s_SkyMode = OldSky;
} }
} }
}
}
} }
// *************************************************************************************************************************** // ***************************************************************************************************************************

View file

@ -41,6 +41,7 @@ static std::string pactTypeStrings[]=
"Type3", "Type3",
"Type4", "Type4",
"Type5", "Type5",
"Type6",
"unknown" "unknown"
}; };

View file

@ -2,7 +2,7 @@
; Comments start with ';', as in php.ini ; Comments start with ';', as in php.ini
[install] [install]
login_info = "Please enter your MySQL Username and Password to install the database.<br>This is being loaded because config.php is missing.<br>This process will take about 30 seconds." login_info = "Please enter your MySQL Username and Password to install the database.<br>This is being loaded because the is_installed file is missing.<br>This process will take about 30 seconds."
login_here = "here" login_here = "here"
[dashboard] [dashboard]

View file

@ -25,7 +25,7 @@ $cfg['db']['shard']['name'] = 'nel';
$cfg['db']['shard']['user'] = 'shard'; $cfg['db']['shard']['user'] = 'shard';
$cfg['db']['shard']['pass'] = ''; $cfg['db']['shard']['pass'] = '';
// Variables for database access to the open_ring database // Variables for database access to the ring_open database
$cfg['db']['ring']['host'] = 'localhost'; $cfg['db']['ring']['host'] = 'localhost';
$cfg['db']['ring']['port'] = '3306'; $cfg['db']['ring']['port'] = '3306';
$cfg['db']['ring']['name'] = 'ring_open'; $cfg['db']['ring']['name'] = 'ring_open';

View file

@ -14,9 +14,12 @@
error_reporting(E_ALL); error_reporting(E_ALL);
ini_set('display_errors', 'on'); ini_set('display_errors', 'on');
require_once( '../../ams_lib/libinclude.php' ); require_once( '../../ams_lib/libinclude.php' );
if (!@include '../config.php') { if (!file_exists('../is_installed')) {
//if config doesnt exist run setup //if is_installed doesnt exist run setup
require( 'installer/libsetup.php' ); require( 'installer/libsetup.php' );
} elseif (isset($_POST["function"]) && $_POST["function"] == "do_install") {
echo "Can't run setup while file '../is_installed' exists, please remove that file if you wish to run the install";
exit;
} else { } else {
//if config exists then include it //if config exists then include it
require( '../config.php' ); require( '../config.php' );

View file

@ -23,7 +23,7 @@
error_reporting( E_ALL ); error_reporting( E_ALL );
if (file_exists('../config.php')) { if (file_exists('../config.php')) {
require( '../config.php' ); require_once( '../config.php' );
} else { } else {
//copy config.default.php to config.php! //copy config.default.php to config.php!
if (!file_exists('../config.php')) { if (!file_exists('../config.php')) {
@ -31,6 +31,8 @@
echo "failed to copy ../config.php ...\n"; echo "failed to copy ../config.php ...\n";
echo '<br><a href="'.$_SERVER['REQUEST_URI'].'" >Reload!</a> '; echo '<br><a href="'.$_SERVER['REQUEST_URI'].'" >Reload!</a> ';
exit; exit;
} else {
require_once( '../config.php' );
} }
} }
} }
@ -60,11 +62,8 @@
`ReceiveMail` int(1) NOT NULL DEFAULT 1, `ReceiveMail` int(1) NOT NULL DEFAULT 1,
`Language` varchar(3) DEFAULT NULL, `Language` varchar(3) DEFAULT NULL,
PRIMARY KEY (`UId`) PRIMARY KEY (`UId`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='contains all users information for ryzom_ams'; ) ENGINE = InnoDB;
GRANT ALL ON `" . $cfg['db']['web']['name'] ."`.* TO `" . $cfg['db']['web']['user'] ."`@".$cfg['db']['web']['host']." identified by '".$cfg['db']['web']['pass']."';
);
GRANT ALL ON `" . $cfg['db']['web']['name'] ."`.* TO `" . $cfg['db']['web']['user'] ."`@".$cfg['db']['web']['host'].";
"; ";
$dbw->executeWithoutParams($sql); $dbw->executeWithoutParams($sql);
@ -470,7 +469,7 @@
ON DELETE NO ACTION ON DELETE NO ACTION
ON UPDATE NO ACTION) ON UPDATE NO ACTION)
ENGINE = InnoDB; ENGINE = InnoDB;
GRANT ALL ON `" . $cfg['db']['lib']['name'] ."`.* TO `" . $cfg['db']['lib']['user'] ."`@".$cfg['db']['lib']['host']."; GRANT ALL ON `" . $cfg['db']['lib']['name'] ."`.* TO `" . $cfg['db']['lib']['user'] ."`@".$cfg['db']['lib']['host']." identified by '".$cfg['db']['lib']['pass']."';
"; ";
$dbl->executeWithoutParams($sql); $dbl->executeWithoutParams($sql);
print "The Lib & Web database were correctly installed! <br />"; print "The Lib & Web database were correctly installed! <br />";
@ -585,7 +584,7 @@
KEY `GMId` (`GMId`) KEY `GMId` (`GMId`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='contains all users informations for login system' AUTO_INCREMENT=1 ; ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='contains all users informations for login system' AUTO_INCREMENT=1 ;
GRANT ALL ON `" . $cfg['db']['shard']['name'] ."`.* TO `" . $cfg['db']['shard']['user'] ."`@".$cfg['db']['shard']['host']."; GRANT ALL ON `" . $cfg['db']['shard']['name'] ."`.* TO `" . $cfg['db']['shard']['user'] ."`@".$cfg['db']['shard']['host']." identified by '".$cfg['db']['shard']['pass']."';
"; ";
$dbs->executeWithoutParams($sql); $dbs->executeWithoutParams($sql);
print "The shard database was correctly installed! <br />"; print "The shard database was correctly installed! <br />";
@ -596,8 +595,8 @@
CREATE DATABASE IF NOT EXISTS `" . $cfg['db']['tool']['name'] ."`; CREATE DATABASE IF NOT EXISTS `" . $cfg['db']['tool']['name'] ."`;
USE `". $cfg['db']['tool']['name'] . "`; USE `". $cfg['db']['tool']['name'] . "`;
CREATE DATABASE IF NOT EXISTS `nel_tool` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci; CREATE DATABASE IF NOT EXISTS `" . $cfg['db']['tool']['name'] ."` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE `nel_tool`; USE `" . $cfg['db']['tool']['name'] ."`;
CREATE TABLE IF NOT EXISTS `neltool_annotations` ( CREATE TABLE IF NOT EXISTS `neltool_annotations` (
`annotation_id` int(11) NOT NULL AUTO_INCREMENT, `annotation_id` int(11) NOT NULL AUTO_INCREMENT,
@ -1368,11 +1367,317 @@
(164, 31, 104, 9), (164, 31, 104, 9),
(165, 31, 103, 9); (165, 31, 103, 9);
GRANT ALL ON `" . $cfg['db']['tool']['name'] ."`.* TO `" . $cfg['db']['tool']['user'] ."`@".$cfg['db']['tool']['host']."; GRANT ALL ON `" . $cfg['db']['tool']['name'] ."`.* TO `" . $cfg['db']['tool']['user'] ."`@".$cfg['db']['tool']['host']." identified by '".$cfg['db']['tool']['pass']."';
"; ";
$dbn->executeWithoutParams($sql); $dbn->executeWithoutParams($sql);
print "The nel_tool database was correctly installed! <br />"; print "The nel_tool database was correctly installed! <br />";
//SETUP THE OPEN_SHARD DB
$dbw = new DBLayer("install", "ring");
$sql = "
CREATE DATABASE IF NOT EXISTS `" . $cfg['db']['ring']['name'] ."`;
USE `" . $cfg['db']['ring']['name'] ."`;
CREATE TABLE IF NOT EXISTS `characters` (
`char_id` int(10) unsigned NOT NULL DEFAULT '0',
`char_name` varchar(20) NOT NULL DEFAULT '',
`user_id` int(10) unsigned NOT NULL DEFAULT '0',
`guild_id` int(10) unsigned NOT NULL DEFAULT '0',
`best_combat_level` int(10) unsigned NOT NULL DEFAULT '0',
`home_mainland_session_id` int(10) unsigned NOT NULL DEFAULT '0',
`ring_access` varchar(63) NOT NULL DEFAULT '',
`race` enum('r_fyros','r_matis','r_tryker','r_zorai') NOT NULL DEFAULT 'r_fyros',
`civilisation` enum('c_neutral','c_fyros','c_fyros','c_matis','c_tryker','c_zorai') NOT NULL DEFAULT 'c_neutral',
`cult` enum('c_neutral','c_kami','c_karavan') NOT NULL DEFAULT 'c_neutral',
`current_session` int(11) unsigned NOT NULL DEFAULT '0',
`rrp_am` int(11) unsigned NOT NULL DEFAULT '0',
`rrp_masterless` int(11) unsigned NOT NULL DEFAULT '0',
`rrp_author` int(11) unsigned NOT NULL DEFAULT '0',
`newcomer` tinyint(1) NOT NULL DEFAULT '1',
`creation_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`last_played_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`char_id`),
UNIQUE KEY `char_name_idx` (`char_name`,`home_mainland_session_id`),
KEY `user_id_idx` (`user_id`),
KEY `guild_idx` (`guild_id`),
KEY `guild_id_idx` (`guild_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `folder` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`owner` int(10) unsigned NOT NULL DEFAULT '0',
`title` varchar(40) NOT NULL DEFAULT '',
`comments` text NOT NULL,
PRIMARY KEY (`Id`),
KEY `owner_idx` (`owner`),
KEY `title_idx` (`title`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `folder_access` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`folder_id` int(10) unsigned NOT NULL DEFAULT '0',
`user_id` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`Id`),
KEY `folder_id_idx` (`folder_id`),
KEY `user_idx` (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `guild_invites` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`session_id` int(10) unsigned NOT NULL DEFAULT '0',
`guild_id` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`Id`),
KEY `guild_id_idx` (`guild_id`),
KEY `session_id_idx` (`session_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `guilds` (
`guild_id` int(10) unsigned NOT NULL DEFAULT '0',
`guild_name` varchar(50) NOT NULL DEFAULT '',
`shard_id` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`guild_id`),
KEY `shard_id_idx` (`shard_id`),
KEY `guild_name_idx` (`guild_name`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;
CREATE TABLE IF NOT EXISTS `journal_entry` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`session_id` int(10) unsigned NOT NULL DEFAULT '0',
`author` int(10) unsigned NOT NULL DEFAULT '0',
`type` enum('jet_credits','jet_notes') NOT NULL DEFAULT 'jet_notes',
`text` text NOT NULL,
`time_stamp` datetime NOT NULL DEFAULT '2005-09-07 12:41:33',
PRIMARY KEY (`Id`),
KEY `session_id_idx` (`session_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `known_users` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`owner` int(10) unsigned NOT NULL DEFAULT '0',
`targer_user` int(10) unsigned NOT NULL DEFAULT '0',
`targer_character` int(10) unsigned NOT NULL DEFAULT '0',
`relation_type` enum('rt_friend','rt_banned','rt_friend_dm') NOT NULL DEFAULT 'rt_friend',
`comments` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`Id`),
KEY `user_index` (`owner`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `mfs_erased_mail_series` (
`erased_char_id` int(11) unsigned NOT NULL DEFAULT '0',
`erased_char_name` varchar(32) NOT NULL DEFAULT '',
`erased_series` int(11) unsigned NOT NULL AUTO_INCREMENT,
`erase_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`erased_series`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `mfs_guild_thread` (
`thread_id` int(11) NOT NULL AUTO_INCREMENT,
`guild_id` int(11) unsigned NOT NULL DEFAULT '0',
`topic` varchar(255) NOT NULL DEFAULT '',
`author_name` varchar(32) NOT NULL DEFAULT '',
`last_post_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`post_count` int(11) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`thread_id`),
KEY `guild_index` (`guild_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `mfs_guild_thread_message` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`thread_id` int(11) unsigned NOT NULL DEFAULT '0',
`author_name` varchar(32) NOT NULL DEFAULT '',
`date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`content` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `mfs_mail` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sender_name` varchar(32) NOT NULL DEFAULT '',
`subject` varchar(250) NOT NULL DEFAULT '',
`date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`status` enum('ms_new','ms_read','ms_erased') NOT NULL DEFAULT 'ms_new',
`dest_char_id` int(11) unsigned NOT NULL DEFAULT '0',
`erase_series` int(11) unsigned NOT NULL DEFAULT '0',
`content` text NOT NULL,
PRIMARY KEY (`id`),
KEY `dest_index` (`dest_char_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `outlands` (
`session_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`island_name` text NOT NULL,
`billing_instance_id` int(11) unsigned NOT NULL DEFAULT '0',
`anim_session_id` int(11) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`session_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `player_rating` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`scenario_id` int(10) unsigned NOT NULL DEFAULT '0',
`session_id` int(10) unsigned NOT NULL DEFAULT '0',
`rate_fun` tinyint(3) unsigned NOT NULL DEFAULT '0',
`rate_difficulty` tinyint(3) unsigned NOT NULL DEFAULT '0',
`rate_accessibility` tinyint(3) unsigned NOT NULL DEFAULT '0',
`rate_originality` tinyint(3) unsigned NOT NULL DEFAULT '0',
`rate_direction` tinyint(3) unsigned NOT NULL DEFAULT '0',
`author` int(10) unsigned NOT NULL DEFAULT '0',
`rating` int(10) NOT NULL DEFAULT '0',
`comments` text NOT NULL,
`time_stamp` datetime NOT NULL DEFAULT '2005-09-07 12:41:33',
PRIMARY KEY (`Id`),
KEY `session_id_idx` (`scenario_id`),
KEY `author_idx` (`author`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `ring_users` (
`user_id` int(10) unsigned NOT NULL DEFAULT '0',
`user_name` varchar(20) NOT NULL DEFAULT '',
`user_type` enum('ut_character','ut_pioneer') NOT NULL DEFAULT 'ut_character',
`current_session` int(10) unsigned NOT NULL DEFAULT '0',
`current_activity` enum('ca_none','ca_play','ca_edit','ca_anim') NOT NULL DEFAULT 'ca_none',
`current_status` enum('cs_offline','cs_logged','cs_online') NOT NULL DEFAULT 'cs_offline',
`public_level` enum('pl_none','pl_public') NOT NULL DEFAULT 'pl_none',
`account_type` enum('at_normal','at_gold') NOT NULL DEFAULT 'at_normal',
`content_access_level` varchar(20) NOT NULL DEFAULT '',
`description` text NOT NULL,
`lang` enum('lang_en','lang_fr','lang_de') NOT NULL DEFAULT 'lang_en',
`cookie` varchar(30) NOT NULL DEFAULT '',
`current_domain_id` int(10) NOT NULL DEFAULT '-1',
`pioneer_char_id` int(11) unsigned NOT NULL DEFAULT '0',
`current_char` int(11) NOT NULL DEFAULT '0',
`add_privileges` varchar(64) NOT NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_name_idx` (`user_name`),
KEY `cookie_idx` (`cookie`),
KEY `current_session_idx` (`current_session`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;
CREATE TABLE IF NOT EXISTS `scenario` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`md5` varchar(64) NOT NULL DEFAULT '',
`title` varchar(32) NOT NULL DEFAULT '',
`description` text NOT NULL,
`author` varchar(32) NOT NULL DEFAULT '',
`rrp_total` int(11) unsigned NOT NULL DEFAULT '0',
`anim_mode` enum('am_dm','am_autonomous') NOT NULL DEFAULT 'am_dm',
`language` varchar(11) NOT NULL DEFAULT '',
`orientation` enum('so_newbie_training','so_story_telling','so_mistery','so_hack_slash','so_guild_training','so_other') NOT NULL DEFAULT 'so_other',
`level` enum('sl_a','sl_b','sl_c','sl_d','sl_e','sl_f') NOT NULL DEFAULT 'sl_a',
`allow_free_trial` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `scenario_desc` (
`session_id` int(10) unsigned NOT NULL DEFAULT '0',
`parent_scenario` int(10) unsigned NOT NULL DEFAULT '0',
`description` text NOT NULL,
`relation_to_parent` enum('rtp_same','rtp_variant','rtp_different') NOT NULL DEFAULT 'rtp_same',
`title` varchar(40) NOT NULL DEFAULT '',
`num_player` int(10) unsigned NOT NULL DEFAULT '0',
`content_access_level` varchar(20) NOT NULL DEFAULT '',
PRIMARY KEY (`session_id`),
UNIQUE KEY `title_idx` (`title`),
KEY `parent_idx` (`parent_scenario`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;
CREATE TABLE IF NOT EXISTS `session_log` (
`id` int(11) NOT NULL DEFAULT '0',
`scenario_id` int(11) unsigned NOT NULL DEFAULT '0',
`rrp_scored` int(11) unsigned NOT NULL DEFAULT '0',
`scenario_point_scored` int(11) unsigned NOT NULL DEFAULT '0',
`time_taken` int(11) unsigned NOT NULL DEFAULT '0',
`participants` text NOT NULL,
`launch_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`owner` varchar(32) NOT NULL DEFAULT '0',
`guild_name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;
CREATE TABLE IF NOT EXISTS `session_participant` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`session_id` int(10) unsigned NOT NULL DEFAULT '0',
`char_id` int(10) unsigned NOT NULL DEFAULT '0',
`status` enum('sps_play_subscribed','sps_play_invited','sps_edit_invited','sps_anim_invited','sps_playing','sps_editing','sps_animating') NOT NULL DEFAULT 'sps_play_subscribed',
`kicked` tinyint(1) unsigned NOT NULL DEFAULT '0',
`session_rated` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`Id`),
KEY `session_idx` (`session_id`),
KEY `user_idx` (`char_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `sessions` (
`session_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`session_type` enum('st_edit','st_anim','st_outland','st_mainland') NOT NULL DEFAULT 'st_edit',
`title` varchar(40) NOT NULL DEFAULT '',
`owner` int(10) unsigned NOT NULL DEFAULT '0',
`plan_date` datetime NOT NULL DEFAULT '2005-09-21 12:41:33',
`start_date` datetime NOT NULL DEFAULT '2005-08-31 00:00:00',
`description` text NOT NULL,
`orientation` enum('so_newbie_training','so_story_telling','so_mistery','so_hack_slash','so_guild_training','so_other') NOT NULL DEFAULT 'so_other',
`level` enum('sl_a','sl_b','sl_c','sl_d','sl_e','sl_f') NOT NULL DEFAULT 'sl_a',
`rule_type` enum('rt_strict','rt_liberal') NOT NULL DEFAULT 'rt_strict',
`access_type` enum('at_public','at_private') NOT NULL DEFAULT 'at_private',
`state` enum('ss_planned','ss_open','ss_locked','ss_closed') NOT NULL DEFAULT 'ss_planned',
`host_shard_id` int(11) NOT NULL DEFAULT '0',
`subscription_slots` int(11) unsigned NOT NULL DEFAULT '0',
`reserved_slots` int(10) unsigned NOT NULL DEFAULT '0',
`free_slots` int(10) unsigned NOT NULL DEFAULT '0',
`estimated_duration` enum('et_short','et_medium','et_long') NOT NULL DEFAULT 'et_short',
`final_duration` int(10) unsigned NOT NULL DEFAULT '0',
`folder_id` int(10) unsigned NOT NULL DEFAULT '0',
`lang` varchar(20) NOT NULL DEFAULT '',
`icone` varchar(70) NOT NULL DEFAULT '',
`anim_mode` enum('am_dm','am_autonomous') NOT NULL DEFAULT 'am_dm',
`race_filter` set('rf_fyros','rf_matis','rf_tryker','rf_zorai') NOT NULL DEFAULT '',
`religion_filter` set('rf_kami','rf_karavan','rf_neutral') NOT NULL DEFAULT '',
`guild_filter` enum('gf_only_my_guild','gf_any_player') DEFAULT 'gf_only_my_guild',
`shard_filter` set('sf_shard00','sf_shard01','sf_shard02','sf_shard03','sf_shard04','sf_shard05','sf_shard06','sf_shard07','sf_shard08','sf_shard09','sf_shard10','sf_shard11','sf_shard12','sf_shard13','sf_shard14','sf_shard15','sf_shard16','sf_shard17','sf_shard18','sf_shard19','sf_shard20','sf_shard21','sf_shard22','sf_shard23','sf_shard24','sf_shard25','sf_shard26','sf_shard27','sf_shard28','sf_shard29','sf_shard30','sf_shard31') NOT NULL DEFAULT 'sf_shard00,sf_shard01,sf_shard02,sf_shard03,sf_shard04,sf_shard05,sf_shard06,sf_shard07,sf_shard08,sf_shard09,sf_shard10,sf_shard11,sf_shard12,sf_shard13,sf_shard14,sf_shard15,sf_shard16,sf_shard17,sf_shard18,sf_shard19,sf_shard20,sf_shard21,sf_shard22,sf_shard23,sf_shard24,sf_shard25,sf_shard26,sf_shard27,sf_shard28,sf_shard29,sf_shard30,sf_shard31',
`level_filter` set('lf_a','lf_b','lf_c','lf_d','lf_e','lf_f') NOT NULL DEFAULT 'lf_a,lf_b,lf_c,lf_d,lf_e,lf_f',
`subscription_closed` tinyint(1) NOT NULL DEFAULT '0',
`newcomer` tinyint(1) unsigned zerofill NOT NULL DEFAULT '0',
PRIMARY KEY (`session_id`),
KEY `owner_idx` (`owner`),
KEY `folder_idx` (`folder_id`),
KEY `state_type_idx` (`state`,`session_type`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=303 ;
INSERT INTO `sessions` (`session_id`, `session_type`, `title`, `owner`, `plan_date`, `start_date`, `description`, `orientation`, `level`, `rule_type`, `access_type`, `state`, `host_shard_id`, `subscription_slots`, `reserved_slots`, `free_slots`, `estimated_duration`, `final_duration`, `folder_id`, `lang`, `icone`, `anim_mode`, `race_filter`, `religion_filter`, `guild_filter`, `shard_filter`, `level_filter`, `subscription_closed`, `newcomer`) VALUES
(302, 'st_mainland', 'open shard mainland', 0, '2005-09-21 12:41:33', '2005-08-31 00:00:00', '', 'so_other', 'sl_a', 'rt_strict', 'at_public', 'ss_planned', 0, 0, 0, 0, 'et_short', 0, 0, 'lang_en', '', 'am_dm', 'rf_fyros,rf_matis,rf_tryker,rf_zorai', 'rf_kami,rf_karavan,rf_neutral', 'gf_any_player', '', 'lf_a,lf_b,lf_c,lf_d,lf_e,lf_f', 0, 0);
CREATE TABLE IF NOT EXISTS `shard` (
`shard_id` int(10) NOT NULL DEFAULT '0',
`WSOnline` tinyint(1) NOT NULL DEFAULT '0',
`MOTD` text NOT NULL,
`OldState` enum('ds_close','ds_dev','ds_restricted','ds_open') NOT NULL DEFAULT 'ds_restricted',
`RequiredState` enum('ds_close','ds_dev','ds_restricted','ds_open') NOT NULL DEFAULT 'ds_dev',
PRIMARY KEY (`shard_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED;
INSERT INTO `shard` (`shard_id`, `WSOnline`, `MOTD`, `OldState`, `RequiredState`) VALUES
(302, 1, 'Shard up', 'ds_restricted', 'ds_open');
GRANT ALL ON `" . $cfg['db']['ring']['name'] ."`.* TO `" . $cfg['db']['ring']['user'] ."`@".$cfg['db']['ring']['host']." identified by '".$cfg['db']['ring']['pass']."';
";
$dbw->executeWithoutParams($sql);
print "The ring_open database was correctly installed! <br />";
//Now create an admin account! //Now create an admin account!
$hashpass = crypt("admin", Users::generateSALT()); $hashpass = crypt("admin", Users::generateSALT());
@ -1380,21 +1685,24 @@
'name' => "admin", 'name' => "admin",
'pass' => $hashpass, 'pass' => $hashpass,
'mail' => "admin@admin.com", 'mail' => "admin@admin.com",
'permission' => 3,
'lang' => "en"
); );
try{ try{
$dbw = new DBLayer("web"); $user_id = WebUsers::createWebuser($params['name'], $params['pass'],$params['mail']);
$user_id = $dbw->executeReturnId("INSERT INTO ams_user (Login, Password, Email, Permission, Language) VALUES (:name, :pass, :mail, :permission, :lang)",$params); $result = Webusers::createUser($params, $user_id);
Users::createUser($params, $user_id); Users::createPermissions(array($params['name']));
$dbl = new DBLayer("lib"); $dbl = new DBLayer("lib");
$dbl->execute("UPDATE ticket_user SET Permission = 3 WHERE TUserId = :user_id",array('user_id' => $user_id)); $dbl->execute("UPDATE ticket_user SET Permission = 3 WHERE TUserId = :user_id",array('user_id' => $user_id));
print "The admin account is created, you can login with id: admin, pass: admin!"; print "The admin account is created, you can login with id: admin, pass: admin!";
}catch (PDOException $e){ }catch (PDOException $e){
print "There was an error while creating the admin account! "; print "There was an error while creating the admin account! ";
print_r($e);
} }
echo '<br><a href="'.$_SERVER['REQUEST_URI'].'" >Reload!</a> '; echo '<br><a href="'.$_SERVER['REQUEST_URI'].'" >Reload!</a> ';
touch("../is_installed");
exit; exit;