This commit is contained in:
ManfredAabye
2025-10-19 11:15:38 +02:00
committed by GitHub
parent 69e021b014
commit fe3e34616b
2 changed files with 1185 additions and 0 deletions
+345
View File
@@ -0,0 +1,345 @@
# OpenSim Webinterface - Datenbank-basierter Verbesserungsplan 2025
## **Datenbankanalyse: Was vorhanden ist vs. was genutzt wird**
### **✅ Vorhandene Datenstrukturen (stark untergenutzt):**
#### **🏆 Vollständige Features bereit für Implementation:**
- **`classifieds`** - Klassifizierte Anzeigen komplett implementiert ✅
- **`userpicks`** - Benutzer-Favoriten/Orte komplett da ✅
- **`userprofile`** - Detaillierte Profile mit Partner, Skills, etc. ✅
- **`usernotes`** - Notizen zwischen Benutzern ✅
- **`usersettings`** - E-Mail-Präferenzen und Sichtbarkeit ✅
- **`Friends`** - Vollständiges Freundessystem ✅
- **`MuteList`** - Ignore/Mute-Funktionalität ✅
- **`os_groups_*`** - Komplettes Gruppensystem (8 Tabellen!) ✅
- **`transactions`** + **`balances`** - Vollständiges Wirtschaftssystem ✅
- **`im_offline`** - Offline-Nachrichten System ✅
#### **💰 Economy-System (vollständig vorhanden):**
- **`balances`** - Benutzer-Guthaben
- **`transactions`** - Alle Transaktionen mit Details
- **`totalsales`** - Verkaufsstatistiken
- **`userinfo`** - Zusätzliche Wirtschaftsinfo
## 🚀 **Prioritäre Erweiterungen - Datenbank-orientiert**
### **Phase 1: Ungenutztes Potenzial aktivieren (SOFORT)**
#### 1. **Klassifizierte Anzeigen aktivieren**
**Tabelle:** `classifieds` (komplett vorhanden!)
```php
// classifieds.php - NEU ERSTELLEN
- Liste aller Anzeigen nach Kategorie
- Detail-Ansicht mit Karte/Teleport
- Eigene Anzeigen verwalten
- Suchfunktion nach Region/Kategorie
```
#### 2. **Benutzer-Favoriten (Picks) implementieren**
**Tabelle:** `userpicks` (komplett vorhanden!)
```php
// picks.php - NEU ERSTELLEN
- Favoriten-Orte anzeigen
- Neue Picks hinzufügen
- Top-Picks highlighten
- Öffentliche Picks durchsuchen
```
#### 3. **Vollständige Profile aktivieren**
**Tabelle:** `userprofile` (komplett vorhanden!)
```php
// profile.php - ERWEITERN
- Partner-System
- Skills und Interessen
- Sprachen und About-Text
- Erste und zweite Life-Tabs
- Profilbilder-Management
```
#### 4. **Freundessystem implementieren**
**Tabelle:** `Friends` (komplett vorhanden!)
```php
// friends.php - NEU ERSTELLEN
- Freundesliste anzeigen
- Freundschaftsanfragen senden/akzeptieren
- Online-Status der Freunde
- Freunde-Management
```
#### 5. **Gruppensystem aktivieren**
**Tabellen:** `os_groups_*` (8 Tabellen - komplett!)
```php
// groups.php - NEU ERSTELLEN
- Gruppensuche und -beitritt
- Gruppenmitgliedschaft verwalten
- Gruppennachrichten (Notices)
- Rollen und Berechtigungen
- Gruppeninvites
```
#### 6. **Economy-Dashboard implementieren**
**Tabellen:** `transactions`, `balances`, `totalsales`
```php
// economy.php - NEU ERSTELLEN
- Kontostand anzeigen
- Transaktionshistorie
- Verkaufsstatistiken
- Geld senden/empfangen
```
### **Phase 2: Erweiterte Features auf Datenbasis**
#### 1. **Offline-Nachrichten System**
**Tabelle:** `im_offline` (vorhanden!)
```php
// messages.php - ERWEITERN
- Offline-Nachrichten anzeigen
- Nachrichten senden wenn User offline
- Nachrichten-Archiv
- Benachrichtigungen
```
#### 2. **Region-Management Dashboard**
**Tabelle:** `regions` (vorhanden!)
```php
// regions.php - NEU ERSTELLEN
- Alle Regionen anzeigen
- Region-Details und Status
- Owner-Verwaltung
- Performance-Statistiken
```
#### 3. **Asset-Management System**
**Tabelle:** `assets` (vorhanden!)
```php
// assets.php - NEU ERSTELLEN
- Asset-Browser
- Upload-Management
- Asset-Statistiken
- Inventory-Verwaltung
```
### **Phase 3: Admin & Analytics**
#### 1. **User-Management Dashboard**
**Tabellen:** `UserAccounts`, `auth`, `GridUser`
```php
// admin/users.php - NEU ERSTELLEN
- Alle Benutzer verwalten
- Online-Status überwachen
- Account-Aktivierung
- Benutzerstatistiken
```
#### 2. **Advanced Analytics**
**Alle verfügbaren Tabellen nutzen:**
```php
// analytics.php - NEU ERSTELLEN
- Grid-Aktivitätsstatistiken
- Wirtschaftsanalysen
- Benutzer-Engagement
- Region-Performance
```
## 🎯 **Sofort umsetzbare Verbesserungen (diese Woche)**
### **1. Klassifizierte Anzeigen (classifieds.php)**
**ROI: Hoch** - Tabelle ist komplett da, nur Frontend fehlt!
### **2. Benutzer-Picks (picks.php)**
**ROI: Hoch** - Vollständig implementierbare Orte-Favoriten
### **3. Vollständige Profile (erweiterte profile.php)**
**ROI: Mittel** - Nutzt vorhandene umfangreiche Profildaten
### **4. Freundessystem (friends.php)**
**ROI: Hoch** - Soziale Features stark nachgefragt
## 💡 **Der Schlüssel: Ihre Datenbank ist ein Goldschatz!**
**Sie haben bereits 95% der Backend-Logik - es fehlen nur die Webinterfaces!**
**Aktuell ungenutzt:**
- Klassifizierte Anzeigen (komplette Infrastruktur)
- Benutzer-Favoriten (Picks)
- Erweiterte Profile mit Partner-System
- Vollständiges Freundessystem
- Komplettes Gruppensystem (8 Tabellen!)
- Economy-Dashboard
- Offline-Nachrichten
- Asset-Management
**Mit minimalem Aufwand aktivierbar:**
Jede dieser Features benötigt nur PHP-Frontend-Code - die Datenstrukturen sind perfekt!
## 🚀 **Empfohlene Implementierungs-Reihenfolge**
### **Woche 1-2: Quick Wins**
1. `classifieds.php` - Klassifizierte Anzeigen
2. `picks.php` - Benutzer-Favoriten
3. Profile erweitern
### **Woche 3-4: Soziale Features**
1. `friends.php` - Freundessystem
2. `groups.php` - Gruppenverwaltung
3. `messages.php` erweitern
### **Monat 2: Economy & Management**
1. `economy.php` - Wirtschafts-Dashboard
2. `regions.php` - Region-Management
3. `admin/users.php` - User-Verwaltung
**Das wird Ihr Interface von "basic" zu "professional enterprise-level" upgraden!**
- Advanced Rate-Limiting per Feature
#### 3. **Backup & Recovery**
- Automatische Datenbank-Backups
- Configuration-Backup System
- Disaster-Recovery Procedures
### **Phase 3: Performance & Skalierung (Mittel)**
#### 1. **Caching-System**
```php
// include/cache.php
class OSWebCache {
public static function get($key);
public static function set($key, $value, $ttl = 3600);
public static function delete($key);
public static function flush();
}
```
#### 2. **Database-Optimierung**
- Query-Optimierung mit Indizes
- Connection-Pooling
- Read/Write-Splitting
- Database-Monitoring
#### 3. **API-Integration**
- REST-API für externe Anwendungen
- Webhook-System für Events
- Third-Party Integration (Discord, Slack)
### **Phase 4: Benutzerfreundlichkeit (Mittel)**
#### 1. **Enhanced UI/UX**
- Real-time Notifications (WebSocket)
- Progressive Web App (PWA) Features
- Dark/Light Mode Toggle
- Accessibility (ARIA, Screen Reader)
#### 2. **Multi-Language Support**
```php
// include/i18n.php
class Internationalization {
public static function loadLanguage($lang);
public static function translate($key, $params = []);
public static function getAvailableLanguages();
}
```
#### 3. **Advanced Analytics**
- User-Behavior Tracking
- Performance Metrics
- Grid-Health Monitoring
- Custom Dashboards
### **Phase 5: Integration & Erweiterungen (Niedrig)**
#### 1. **External Services**
- Payment-Gateway Integration
- Social Media Login (OAuth)
- Email-Newsletter System
- Help-Desk/Ticket-System
#### 2. **Mobile App Support**
- Mobile-API Endpoints
- Push-Notifications
- Offline-Funktionalität
- App-Integration
## 🛠️ **Implementierungs-Reihenfolge**
### **Sofort (Woche 1-2):**
1. `gridsearch.php` erstellen (wird in Robust.ini referenziert)
2. Places-Suche in `searchservicemanni.php` vervollständigen
3. Basic Admin-Dashboard implementieren
### **Kurzfristig (Monat 1):**
1. 2FA-System implementieren
2. Erweiterte Benutzer-Profile
3. Audit-Logging System
### **Mittelfristig (Monat 2-3):**
1. Caching-System implementieren
2. Performance-Optimierungen
3. API-Entwicklung
### **Langfristig (Monat 4-6):**
1. Multi-Language Support
2. Advanced Analytics
3. External Service Integration
## 📋 **Nächste Schritte**
1. **Prioritäten festlegen** - Welche Features sind für Ihr Grid am wichtigsten?
2. **Entwicklungsplan erstellen** - Timeline und Ressourcen definieren
3. **Testing-Umgebung** einrichten
4. **Kontinuierliche Integration** für Updates
## 💡 **Empfohlene Sofort-Maßnahmen**
1. **Erstellen Sie die fehlende `gridsearch.php`**
2. **Implementieren Sie ein Admin-Dashboard**
3. **Erweitern Sie die Suchfunktionen**
4. **Fügen Sie Audit-Logging hinzu**
Das Interface hat bereits eine sehr solide Basis - mit diesen Erweiterungen wird es zu einer professionellen, vollständigen OpenSim-Management-Lösung!
+840
View File
@@ -0,0 +1,840 @@
-- phpMyAdmin SQL Dump
-- version 5.1.1deb5ubuntu1
-- https://www.phpmyadmin.net/
--
-- Host: localhost:3306
-- Erstellungszeit: 19. Okt 2025 um 11:02
-- Server-Version: 10.6.22-MariaDB-0ubuntu0.22.04.1
-- PHP-Version: 8.1.2-1ubuntu2.22
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Datenbank: `robust`
--
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `AgentPrefs`
--
CREATE TABLE `AgentPrefs` (
`PrincipalID` char(36) NOT NULL,
`AccessPrefs` char(2) NOT NULL DEFAULT 'M',
`HoverHeight` double(30,27) NOT NULL DEFAULT 0.000000000000000000000000000,
`Language` char(5) NOT NULL DEFAULT 'en-us',
`LanguageIsPublic` tinyint(1) NOT NULL DEFAULT 1,
`PermEveryone` int(6) NOT NULL DEFAULT 0,
`PermGroup` int(6) NOT NULL DEFAULT 0,
`PermNextOwner` int(6) NOT NULL DEFAULT 532480
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `assets`
--
CREATE TABLE `assets` (
`name` varchar(64) NOT NULL,
`description` varchar(64) NOT NULL,
`assetType` tinyint(4) NOT NULL,
`local` tinyint(1) NOT NULL,
`temporary` tinyint(1) NOT NULL,
`data` longblob NOT NULL,
`id` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`create_time` int(11) DEFAULT 0,
`access_time` int(11) DEFAULT 0,
`asset_flags` int(11) NOT NULL DEFAULT 0,
`CreatorID` varchar(128) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `auth`
--
CREATE TABLE `auth` (
`UUID` char(36) NOT NULL,
`passwordHash` char(32) NOT NULL DEFAULT '',
`passwordSalt` char(32) NOT NULL DEFAULT '',
`webLoginKey` varchar(255) NOT NULL DEFAULT '',
`accountType` varchar(32) NOT NULL DEFAULT 'UserAccount'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `Avatars`
--
CREATE TABLE `Avatars` (
`PrincipalID` char(36) NOT NULL,
`Name` varchar(32) NOT NULL,
`Value` text DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `balances`
--
CREATE TABLE `balances` (
`user` varchar(36) NOT NULL,
`balance` int(10) NOT NULL,
`status` tinyint(2) DEFAULT NULL,
`type` tinyint(2) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci COMMENT='Rev.4';
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `classifieds`
--
CREATE TABLE `classifieds` (
`classifieduuid` char(36) NOT NULL,
`creatoruuid` char(36) NOT NULL,
`creationdate` int(20) NOT NULL,
`expirationdate` int(20) NOT NULL,
`category` varchar(20) NOT NULL,
`name` varchar(255) NOT NULL,
`description` text NOT NULL,
`parceluuid` char(36) NOT NULL,
`parentestate` int(11) NOT NULL,
`snapshotuuid` char(36) NOT NULL,
`simname` varchar(255) NOT NULL,
`posglobal` varchar(255) NOT NULL,
`parcelname` varchar(255) NOT NULL,
`classifiedflags` int(8) NOT NULL,
`priceforlisting` int(5) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `Friends`
--
CREATE TABLE `Friends` (
`PrincipalID` varchar(255) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`Friend` varchar(255) NOT NULL,
`Flags` varchar(16) NOT NULL DEFAULT '0',
`Offered` varchar(32) NOT NULL DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `GridUser`
--
CREATE TABLE `GridUser` (
`UserID` varchar(255) NOT NULL,
`HomeRegionID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`HomePosition` char(64) NOT NULL DEFAULT '<0,0,0>',
`HomeLookAt` char(64) NOT NULL DEFAULT '<0,0,0>',
`LastRegionID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`LastPosition` char(64) NOT NULL DEFAULT '<0,0,0>',
`LastLookAt` char(64) NOT NULL DEFAULT '<0,0,0>',
`Online` char(5) NOT NULL DEFAULT 'false',
`Login` char(16) NOT NULL DEFAULT '0',
`Logout` char(16) NOT NULL DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `hg_traveling_data`
--
CREATE TABLE `hg_traveling_data` (
`SessionID` varchar(36) NOT NULL,
`UserID` varchar(36) NOT NULL,
`GridExternalName` varchar(255) NOT NULL DEFAULT '',
`ServiceToken` varchar(255) NOT NULL DEFAULT '',
`ClientIPAddress` varchar(16) NOT NULL DEFAULT '',
`MyIPAddress` varchar(16) NOT NULL DEFAULT '',
`TMStamp` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `im_offline`
--
CREATE TABLE `im_offline` (
`ID` mediumint(9) NOT NULL,
`PrincipalID` char(36) NOT NULL DEFAULT '',
`FromID` char(36) NOT NULL DEFAULT '',
`Message` text NOT NULL,
`TMStamp` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `inventoryfolders`
--
CREATE TABLE `inventoryfolders` (
`folderName` varchar(64) DEFAULT NULL,
`type` smallint(6) NOT NULL DEFAULT 0,
`version` int(11) NOT NULL DEFAULT 0,
`folderID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`agentID` char(36) DEFAULT NULL,
`parentFolderID` char(36) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `inventoryitems`
--
CREATE TABLE `inventoryitems` (
`assetID` varchar(36) DEFAULT NULL,
`assetType` int(11) DEFAULT NULL,
`inventoryName` varchar(64) DEFAULT NULL,
`inventoryDescription` varchar(128) DEFAULT NULL,
`inventoryNextPermissions` int(10) UNSIGNED DEFAULT NULL,
`inventoryCurrentPermissions` int(10) UNSIGNED DEFAULT NULL,
`invType` int(11) DEFAULT NULL,
`creatorID` varchar(255) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`inventoryBasePermissions` int(10) UNSIGNED NOT NULL DEFAULT 0,
`inventoryEveryOnePermissions` int(10) UNSIGNED NOT NULL DEFAULT 0,
`salePrice` int(11) NOT NULL DEFAULT 0,
`saleType` tinyint(4) NOT NULL DEFAULT 0,
`creationDate` int(11) NOT NULL DEFAULT 0,
`groupID` varchar(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`groupOwned` tinyint(4) NOT NULL DEFAULT 0,
`flags` int(11) UNSIGNED NOT NULL DEFAULT 0,
`inventoryID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`avatarID` char(36) DEFAULT NULL,
`parentFolderID` char(36) DEFAULT NULL,
`inventoryGroupPermissions` int(10) UNSIGNED NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `migrations`
--
CREATE TABLE `migrations` (
`name` varchar(100) DEFAULT NULL,
`version` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `MuteList`
--
CREATE TABLE `MuteList` (
`AgentID` char(36) NOT NULL,
`MuteID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`MuteName` varchar(64) NOT NULL DEFAULT '',
`MuteType` int(11) NOT NULL DEFAULT 1,
`MuteFlags` int(11) NOT NULL DEFAULT 0,
`Stamp` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `os_groups_groups`
--
CREATE TABLE `os_groups_groups` (
`GroupID` char(36) NOT NULL DEFAULT '',
`Location` varchar(255) NOT NULL DEFAULT '',
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '',
`Charter` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,
`InsigniaID` char(36) NOT NULL DEFAULT '',
`FounderID` char(36) NOT NULL DEFAULT '',
`MembershipFee` int(11) NOT NULL DEFAULT 0,
`OpenEnrollment` varchar(255) NOT NULL DEFAULT '',
`ShowInList` int(4) NOT NULL DEFAULT 0,
`AllowPublish` int(4) NOT NULL DEFAULT 0,
`MaturePublish` int(4) NOT NULL DEFAULT 0,
`OwnerRoleID` char(36) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `os_groups_invites`
--
CREATE TABLE `os_groups_invites` (
`InviteID` char(36) NOT NULL DEFAULT '',
`GroupID` char(36) NOT NULL DEFAULT '',
`RoleID` char(36) NOT NULL DEFAULT '',
`PrincipalID` varchar(255) NOT NULL DEFAULT '',
`TMStamp` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `os_groups_membership`
--
CREATE TABLE `os_groups_membership` (
`GroupID` char(36) NOT NULL DEFAULT '',
`PrincipalID` varchar(255) NOT NULL DEFAULT '',
`SelectedRoleID` char(36) NOT NULL DEFAULT '',
`Contribution` int(11) NOT NULL DEFAULT 0,
`ListInProfile` int(4) NOT NULL DEFAULT 1,
`AcceptNotices` int(4) NOT NULL DEFAULT 1,
`AccessToken` char(36) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `os_groups_notices`
--
CREATE TABLE `os_groups_notices` (
`GroupID` char(36) NOT NULL DEFAULT '',
`NoticeID` char(36) NOT NULL DEFAULT '',
`TMStamp` int(10) UNSIGNED NOT NULL DEFAULT 0,
`FromName` varchar(255) NOT NULL DEFAULT '',
`Subject` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '',
`Message` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,
`HasAttachment` int(4) NOT NULL DEFAULT 0,
`AttachmentType` int(4) NOT NULL DEFAULT 0,
`AttachmentName` varchar(128) NOT NULL DEFAULT '',
`AttachmentItemID` char(36) NOT NULL DEFAULT '',
`AttachmentOwnerID` varchar(255) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `os_groups_principals`
--
CREATE TABLE `os_groups_principals` (
`PrincipalID` varchar(255) NOT NULL DEFAULT '',
`ActiveGroupID` char(36) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `os_groups_rolemembership`
--
CREATE TABLE `os_groups_rolemembership` (
`GroupID` char(36) NOT NULL DEFAULT '',
`RoleID` char(36) NOT NULL DEFAULT '',
`PrincipalID` varchar(255) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `os_groups_roles`
--
CREATE TABLE `os_groups_roles` (
`GroupID` char(36) NOT NULL DEFAULT '',
`RoleID` char(36) NOT NULL DEFAULT '',
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '',
`Description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '',
`Title` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '',
`Powers` bigint(20) UNSIGNED NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `Presence`
--
CREATE TABLE `Presence` (
`UserID` varchar(255) NOT NULL,
`RegionID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`SessionID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`SecureSessionID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`LastSeen` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `regions`
--
CREATE TABLE `regions` (
`uuid` varchar(36) NOT NULL,
`regionHandle` bigint(20) UNSIGNED NOT NULL,
`regionName` varchar(128) DEFAULT NULL,
`regionRecvKey` varchar(128) DEFAULT NULL,
`regionSendKey` varchar(128) DEFAULT NULL,
`regionSecret` varchar(128) DEFAULT NULL,
`regionDataURI` varchar(255) DEFAULT NULL,
`serverIP` varchar(64) DEFAULT NULL,
`serverPort` int(10) UNSIGNED DEFAULT NULL,
`serverURI` varchar(255) DEFAULT NULL,
`locX` int(10) UNSIGNED DEFAULT NULL,
`locY` int(10) UNSIGNED DEFAULT NULL,
`locZ` int(10) UNSIGNED DEFAULT NULL,
`eastOverrideHandle` bigint(20) UNSIGNED DEFAULT NULL,
`westOverrideHandle` bigint(20) UNSIGNED DEFAULT NULL,
`southOverrideHandle` bigint(20) UNSIGNED DEFAULT NULL,
`northOverrideHandle` bigint(20) UNSIGNED DEFAULT NULL,
`regionAssetURI` varchar(255) DEFAULT NULL,
`regionAssetRecvKey` varchar(128) DEFAULT NULL,
`regionAssetSendKey` varchar(128) DEFAULT NULL,
`regionUserURI` varchar(255) DEFAULT NULL,
`regionUserRecvKey` varchar(128) DEFAULT NULL,
`regionUserSendKey` varchar(128) DEFAULT NULL,
`regionMapTexture` varchar(36) DEFAULT NULL,
`serverHttpPort` int(10) DEFAULT NULL,
`serverRemotingPort` int(10) DEFAULT NULL,
`owner_uuid` varchar(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`originUUID` varchar(36) DEFAULT NULL,
`access` int(10) UNSIGNED DEFAULT 1,
`ScopeID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`sizeX` int(11) NOT NULL DEFAULT 0,
`sizeY` int(11) NOT NULL DEFAULT 0,
`flags` int(11) NOT NULL DEFAULT 0,
`last_seen` int(11) NOT NULL DEFAULT 0,
`PrincipalID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
`Token` varchar(255) NOT NULL,
`parcelMapTexture` varchar(36) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `tokens`
--
CREATE TABLE `tokens` (
`UUID` char(36) NOT NULL,
`token` varchar(255) NOT NULL,
`validity` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `totalsales`
--
CREATE TABLE `totalsales` (
`UUID` varchar(36) NOT NULL,
`user` varchar(36) NOT NULL,
`objectUUID` varchar(36) NOT NULL,
`type` int(10) NOT NULL,
`TotalCount` int(10) NOT NULL DEFAULT 0,
`TotalAmount` int(10) NOT NULL DEFAULT 0,
`time` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci COMMENT='Rev.3';
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `transactions`
--
CREATE TABLE `transactions` (
`UUID` varchar(36) NOT NULL,
`sender` varchar(36) NOT NULL,
`receiver` varchar(36) NOT NULL,
`amount` int(10) NOT NULL,
`senderBalance` int(10) NOT NULL DEFAULT -1,
`receiverBalance` int(10) NOT NULL DEFAULT -1,
`objectUUID` varchar(36) DEFAULT NULL,
`objectName` varchar(255) DEFAULT NULL,
`regionHandle` varchar(36) NOT NULL,
`regionUUID` varchar(36) NOT NULL,
`type` int(10) NOT NULL,
`time` int(11) NOT NULL,
`secure` varchar(36) NOT NULL,
`status` tinyint(1) NOT NULL,
`commonName` varchar(128) NOT NULL,
`description` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci COMMENT='Rev.12';
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `UserAccounts`
--
CREATE TABLE `UserAccounts` (
`PrincipalID` char(36) NOT NULL,
`ScopeID` char(36) NOT NULL,
`FirstName` varchar(64) NOT NULL,
`LastName` varchar(64) NOT NULL,
`Email` varchar(64) DEFAULT NULL,
`ServiceURLs` text DEFAULT NULL,
`Created` int(11) DEFAULT NULL,
`UserLevel` int(11) NOT NULL DEFAULT 0,
`UserFlags` int(11) NOT NULL DEFAULT 0,
`UserTitle` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL DEFAULT '',
`active` int(11) NOT NULL DEFAULT 1
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `userdata`
--
CREATE TABLE `userdata` (
`UserId` char(36) NOT NULL,
`TagId` varchar(64) NOT NULL,
`DataKey` varchar(255) DEFAULT NULL,
`DataVal` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `userinfo`
--
CREATE TABLE `userinfo` (
`user` varchar(36) NOT NULL,
`simip` varchar(64) NOT NULL,
`avatar` varchar(50) NOT NULL,
`pass` varchar(36) NOT NULL DEFAULT '',
`type` tinyint(2) NOT NULL DEFAULT 0,
`class` tinyint(2) NOT NULL DEFAULT 0,
`serverurl` varchar(255) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci COMMENT='Rev.3';
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `usernotes`
--
CREATE TABLE `usernotes` (
`useruuid` varchar(36) NOT NULL,
`targetuuid` varchar(36) NOT NULL,
`notes` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `userpicks`
--
CREATE TABLE `userpicks` (
`pickuuid` varchar(36) NOT NULL,
`creatoruuid` varchar(36) NOT NULL,
`toppick` enum('true','false') NOT NULL,
`parceluuid` varchar(36) NOT NULL,
`name` varchar(255) NOT NULL,
`description` text NOT NULL,
`snapshotuuid` varchar(36) NOT NULL,
`user` varchar(255) NOT NULL,
`originalname` varchar(255) NOT NULL,
`simname` varchar(255) NOT NULL,
`posglobal` varchar(255) NOT NULL,
`sortorder` int(2) NOT NULL,
`enabled` enum('true','false') NOT NULL,
`gatekeeper` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `userprofile`
--
CREATE TABLE `userprofile` (
`useruuid` varchar(36) NOT NULL,
`profilePartner` varchar(36) NOT NULL,
`profileAllowPublish` binary(1) NOT NULL,
`profileMaturePublish` binary(1) NOT NULL,
`profileURL` varchar(255) NOT NULL,
`profileWantToMask` int(3) NOT NULL,
`profileWantToText` text NOT NULL,
`profileSkillsMask` int(3) NOT NULL,
`profileSkillsText` text NOT NULL,
`profileLanguages` text NOT NULL,
`profileImage` varchar(36) NOT NULL,
`profileAboutText` text NOT NULL,
`profileFirstImage` varchar(36) NOT NULL,
`profileFirstText` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `usersettings`
--
CREATE TABLE `usersettings` (
`useruuid` varchar(36) NOT NULL,
`imviaemail` enum('true','false') NOT NULL,
`visible` enum('true','false') NOT NULL,
`email` varchar(254) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
--
-- Indizes der exportierten Tabellen
--
--
-- Indizes für die Tabelle `AgentPrefs`
--
ALTER TABLE `AgentPrefs`
ADD PRIMARY KEY (`PrincipalID`),
ADD UNIQUE KEY `PrincipalID` (`PrincipalID`);
--
-- Indizes für die Tabelle `assets`
--
ALTER TABLE `assets`
ADD PRIMARY KEY (`id`);
--
-- Indizes für die Tabelle `auth`
--
ALTER TABLE `auth`
ADD PRIMARY KEY (`UUID`);
--
-- Indizes für die Tabelle `Avatars`
--
ALTER TABLE `Avatars`
ADD PRIMARY KEY (`PrincipalID`,`Name`),
ADD KEY `PrincipalID` (`PrincipalID`);
--
-- Indizes für die Tabelle `balances`
--
ALTER TABLE `balances`
ADD PRIMARY KEY (`user`);
--
-- Indizes für die Tabelle `classifieds`
--
ALTER TABLE `classifieds`
ADD PRIMARY KEY (`classifieduuid`);
--
-- Indizes für die Tabelle `Friends`
--
ALTER TABLE `Friends`
ADD PRIMARY KEY (`PrincipalID`(36),`Friend`(36)),
ADD KEY `PrincipalID` (`PrincipalID`);
--
-- Indizes für die Tabelle `GridUser`
--
ALTER TABLE `GridUser`
ADD PRIMARY KEY (`UserID`);
--
-- Indizes für die Tabelle `hg_traveling_data`
--
ALTER TABLE `hg_traveling_data`
ADD PRIMARY KEY (`SessionID`),
ADD KEY `UserID` (`UserID`);
--
-- Indizes für die Tabelle `im_offline`
--
ALTER TABLE `im_offline`
ADD PRIMARY KEY (`ID`),
ADD KEY `PrincipalID` (`PrincipalID`),
ADD KEY `FromID` (`FromID`);
--
-- Indizes für die Tabelle `inventoryfolders`
--
ALTER TABLE `inventoryfolders`
ADD PRIMARY KEY (`folderID`),
ADD KEY `inventoryfolders_agentid` (`agentID`),
ADD KEY `inventoryfolders_parentFolderid` (`parentFolderID`);
--
-- Indizes für die Tabelle `inventoryitems`
--
ALTER TABLE `inventoryitems`
ADD PRIMARY KEY (`inventoryID`),
ADD KEY `inventoryitems_avatarid` (`avatarID`),
ADD KEY `inventoryitems_parentFolderid` (`parentFolderID`);
--
-- Indizes für die Tabelle `MuteList`
--
ALTER TABLE `MuteList`
ADD UNIQUE KEY `AgentID_2` (`AgentID`,`MuteID`,`MuteName`),
ADD KEY `AgentID` (`AgentID`);
--
-- Indizes für die Tabelle `os_groups_groups`
--
ALTER TABLE `os_groups_groups`
ADD PRIMARY KEY (`GroupID`),
ADD UNIQUE KEY `Name` (`Name`);
ALTER TABLE `os_groups_groups` ADD FULLTEXT KEY `Name_2` (`Name`);
--
-- Indizes für die Tabelle `os_groups_invites`
--
ALTER TABLE `os_groups_invites`
ADD PRIMARY KEY (`InviteID`),
ADD UNIQUE KEY `PrincipalGroup` (`GroupID`,`PrincipalID`);
--
-- Indizes für die Tabelle `os_groups_membership`
--
ALTER TABLE `os_groups_membership`
ADD PRIMARY KEY (`GroupID`,`PrincipalID`),
ADD KEY `PrincipalID` (`PrincipalID`);
--
-- Indizes für die Tabelle `os_groups_notices`
--
ALTER TABLE `os_groups_notices`
ADD PRIMARY KEY (`NoticeID`),
ADD KEY `GroupID` (`GroupID`),
ADD KEY `TMStamp` (`TMStamp`);
--
-- Indizes für die Tabelle `os_groups_principals`
--
ALTER TABLE `os_groups_principals`
ADD PRIMARY KEY (`PrincipalID`);
--
-- Indizes für die Tabelle `os_groups_rolemembership`
--
ALTER TABLE `os_groups_rolemembership`
ADD PRIMARY KEY (`GroupID`,`RoleID`,`PrincipalID`),
ADD KEY `PrincipalID` (`PrincipalID`);
--
-- Indizes für die Tabelle `os_groups_roles`
--
ALTER TABLE `os_groups_roles`
ADD PRIMARY KEY (`GroupID`,`RoleID`),
ADD KEY `GroupID` (`GroupID`);
--
-- Indizes für die Tabelle `Presence`
--
ALTER TABLE `Presence`
ADD UNIQUE KEY `SessionID` (`SessionID`),
ADD KEY `UserID` (`UserID`),
ADD KEY `RegionID` (`RegionID`);
--
-- Indizes für die Tabelle `regions`
--
ALTER TABLE `regions`
ADD PRIMARY KEY (`uuid`),
ADD KEY `regionName` (`regionName`),
ADD KEY `regionHandle` (`regionHandle`),
ADD KEY `overrideHandles` (`eastOverrideHandle`,`westOverrideHandle`,`southOverrideHandle`,`northOverrideHandle`),
ADD KEY `ScopeID` (`ScopeID`),
ADD KEY `flags` (`flags`);
--
-- Indizes für die Tabelle `tokens`
--
ALTER TABLE `tokens`
ADD UNIQUE KEY `uuid_token` (`UUID`,`token`),
ADD KEY `UUID` (`UUID`),
ADD KEY `token` (`token`),
ADD KEY `validity` (`validity`);
--
-- Indizes für die Tabelle `totalsales`
--
ALTER TABLE `totalsales`
ADD PRIMARY KEY (`UUID`);
--
-- Indizes für die Tabelle `transactions`
--
ALTER TABLE `transactions`
ADD PRIMARY KEY (`UUID`);
--
-- Indizes für die Tabelle `UserAccounts`
--
ALTER TABLE `UserAccounts`
ADD UNIQUE KEY `PrincipalID` (`PrincipalID`),
ADD KEY `Email` (`Email`),
ADD KEY `FirstName` (`FirstName`),
ADD KEY `LastName` (`LastName`),
ADD KEY `Name` (`FirstName`,`LastName`);
--
-- Indizes für die Tabelle `userdata`
--
ALTER TABLE `userdata`
ADD PRIMARY KEY (`UserId`,`TagId`);
--
-- Indizes für die Tabelle `userinfo`
--
ALTER TABLE `userinfo`
ADD PRIMARY KEY (`user`);
--
-- Indizes für die Tabelle `usernotes`
--
ALTER TABLE `usernotes`
ADD UNIQUE KEY `useruuid` (`useruuid`,`targetuuid`);
--
-- Indizes für die Tabelle `userpicks`
--
ALTER TABLE `userpicks`
ADD PRIMARY KEY (`pickuuid`);
--
-- Indizes für die Tabelle `userprofile`
--
ALTER TABLE `userprofile`
ADD PRIMARY KEY (`useruuid`);
--
-- Indizes für die Tabelle `usersettings`
--
ALTER TABLE `usersettings`
ADD PRIMARY KEY (`useruuid`);
--
-- AUTO_INCREMENT für exportierte Tabellen
--
--
-- AUTO_INCREMENT für Tabelle `im_offline`
--
ALTER TABLE `im_offline`
MODIFY `ID` mediumint(9) NOT NULL AUTO_INCREMENT;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;