Пример #1
0
    void LoadLinkshellList()
    {
	    int32 ret = Sql_Query(SqlHandle, "SELECT linkshellid, color, name, poster, message, messagetime FROM linkshells");

	    if( ret != SQL_ERROR && Sql_NumRows(SqlHandle) != 0)
	    {
		    while(Sql_NextRow(SqlHandle) == SQL_SUCCESS) 
		    {
			    CLinkshell* PLinkshell = new CLinkshell(Sql_GetUIntData(SqlHandle,0));
			
			    PLinkshell->setColor(Sql_GetIntData(SqlHandle,1));
                int8 EncodedName[16];
                EncodeStringLinkshell(Sql_GetData(SqlHandle,2), EncodedName);
                PLinkshell->setName(EncodedName);
                PLinkshell->setPoster(Sql_GetData(SqlHandle,3));

                int8* linkshellMessage = Sql_GetData(SqlHandle, 4);
                if (linkshellMessage != nullptr)
                    PLinkshell->setMessage(linkshellMessage);
                else
                    PLinkshell->setMessage("");
                PLinkshell->setMessageTime(Sql_GetUIntData(SqlHandle,5));

                LinkshellList[PLinkshell->getID()] = PLinkshell;
		    }
	    }
    }
Пример #2
0
    uint32 RegisterNewLinkshell(const int8* name, uint16 color)
    {
        if (IsValidLinkshellName(name))
        {
		    if (Sql_Query(SqlHandle, "INSERT INTO linkshells (name, color) VALUES ('%s', %u)", name, color) != SQL_ERROR)
            {
                CLinkshell* PLinkshell = new CLinkshell(Sql_LastInsertId(SqlHandle));
			
			    PLinkshell->setColor(color);
                PLinkshell->setName((int8*)name);
                
                LinkshellList[PLinkshell->getID()] = PLinkshell;

                return PLinkshell->getID();
            }
        }
        return 0;
    }