XAdmin

Dokumentation

Innehåll

  1. Introduktion
  2. Vad som krävs för att använda XAdmin
  3. Installation
    1. Uppdatering
    2. Avinstallation
  4. Komma igång
    1. Enkel guide
    2. Avancerad guide
  5. Integrera XAdmin i en befintlig/ny layout
  6. Funktionsreferens

Introduktion

Vad är då XAdmin?

Förmodligen har du lite koll på det eftersom du trots allt ändå har laddat ner det och nu läser den här manualen. Men jag tänkte ändå passa på att ta upp lite om vad XAdmin är och vad det är kapabelt till att göra.

XAdmin är ett CMS som i första hand är riktat till Counter-Strike klaner som eftersöker en enkel plattform att bygga sin klanhemsida kring. Det är inte det första i sitt slag, tvärt om, letar man så finns det en uppsjö av liknande system. Alla har dock en, i mina ögon, stor nackdel; dom är oerhört stora och komplicerade. Oftast krävs det väldigt goda kunskaper i det språk systemet har utvecklats i (oftast PHP) för att kunna ens göra enklare ändringar i layouten.

Mitt långsiktiga mål med XAdmin är att man som användare av systemet inte ska behöva några direkta förkunskaper i PHP för att kunna använda och implementera systemet på sin egna sida. Nu är det därmed inte sagt att det målet har uppfyllts, men det är något jag hela tiden strävar efter när jag skriver XAdmin. Tanken är att man genom några enkla funktionsanrop skall få en fullt fungerande, dynamisk sida till sin befintliga layout.

XAdmin kom i sin första variant någonstans kring juli 2006 och innehöll mycket av det XAdmin 2 nu innehåller (faktiskt så har jag för mig att XAdmin v1.x hade fler funktioner än vad XAdmin 2 i nuläget har). XAdmin v1 släpptes med ganska stora förväntningar från min sida. Jag ville göra något stort och riktigt bra, men samtidigt simpelt att använda. Man skulle inte behöva kunna PHP för att integrera systemet i sin hemsida, det skulle bara "funka". Tyvärr så var mina kunskaper i PHP då ganska så begränsade vilket också resulterade i en ganska kass strukturerad kod som i slutändan gjorde systemet i princip omöjligt att underhålla (att folk ändå orkade sätta sig in i det och faktiskt bygga på/om det är för mig ett under, credz till er!). Det i samband med svalnande intresse från min sida gjorde att projektet snart dog ut. Inte officiellt sett, men det hände ingenting på ett antal år(!).

Utvecklingen av XAdmin 2 började runt 2006, strax efter att XAdmin v1 var släppt. Jag hade då insett den omöjliga uppgiften att försöka underhålla koden i den tidigare versionen och bestämde mig för att trasha den och börja om på nytt. Så skedde även, men som tidigare nämnt svalnade mitt intresse för just XAdmin under en väldigt lång period, och då jag tog upp arbetet igen började jag hela tiden om från noll. Detta då jag utvecklats som programmerare under mina "pauser" och inte var helt nöjd med vad jag åstakommit tidigare.

XAdmin v2 tog dock sin nuvarande form mellan 20e och 24e december 2008. Jag hade inget att göra dessa dagar, och satte då upp ett mål att för en gångs skull göra klart XAdmin v2 och sedan släppa det på julafton. Sagt och gjort, systemet var faktiskt klart den 24e och släpptes för allmänheten klocka 15:00, lagom till Kalle Anka.

Nu har jag pratat om mycket ointressanta saker, så jag får avsluta med att önska dig som användare en trevlig upplevelse med systemet. Har du några frågor och/eller synpunkter så tveka inte att kontakta mig på gustav@xcoders.info.

Upp

Vad som krävs för att använda XAdmin

För att kunna använda XAdmin krävs det i nuläget att servern som XAdmin körs på har Apache 1.3 eller senare, PHP 5.1.0 eller senare samt MySQL 5.0 eller senare.

Gällande MySQL är det ytterst troligt att XAdmin fungerar även på äldre versioner, från 4.3 och uppåt, men jag har i nuläget inte kunnat testa det. Angående PHP så är 5.1.0 nödvändigt på grund av det objektorienterade stödet som infördes i PHP 5, och är det så att webhotellet/servern inte har det så föreslår jag att ni skickar iväg ett mail till den ansvarige och ber dom att uppgradera. PHP 4 är sedan länge avslutat hos utvecklarna av PHP och stödjs numera inte officiellt.

Har heller inte haft möjlighet att testa XAdmin under en IIS-installation (dvs. en Windows-dator utan Apache), men förutsatt att PHP fungerar som det ska och är minst version 5.1.0 bör det fungera (finns ingen anledning så som jag ser det till att det inte skulle göra det).

Med tiden så kommer förhoppningsvis kompabilitetslistan att öka i takt med att koden optimeras för att fungera på så många uppsättningar som möjligt.

XAdmin är för närvarande testat och bekräftat fungerade på följande setuper:

Upp

Installation

Att installera XAdmin är numera lättare än tidigare. Allt som behövs är att ladda upp alla filer till din webbserver, och därefter endera gå till http://dinurl.se/ins/ eller http://dinurl.se/plats-till-xadmin/ins/ för att starta installationen. Innan installationen börjar (alternativt under den) bör du plocka fram dina uppgifter till MySQL-servern. Vad som behövs är nämligen användarnamnet, lösenordet samt adressen till servern där den körs på. Saknar du en sådan adress; lämna det fältet med standardvärdet (localhost) och hoppas på att det fungerar.

I nuläget stödjs ingen annan databas än MySQL, så om ditt webbhotell inte erbjuder det går det tyvärr inte att använda XAdmin, förutsatt att du inte hittar en av de få gratishoster för MySQL-databaser (exempelvis FreeSQL).

När du sedan har laddat upp filerna till servern och startat installationen är det endast att följa instruktionerna som guiden ger. Skulle det vara så att du får felet "Kunde inte ändra skrivrättigheter på /adm/lib/config.php automatiskt." följ då instruktionerna om hur man ändrar skrivrättigheter som installationen ger. /adm/lib/config.php bör ha skrivrättigheterna 0777 (alt. 777) för att garantera att det ska fungera. Vet du inte hur man ändrar skrivrättigheter (chmod) föreslår jag en enkel sökning på google innehållandes din FTP-klients namn samt chmod.

Om inga andra hinder uppstår så skall installationen gå snabbt och smärtfritt, och när allt är klart är det bara att logga in och börja vänja dig vid systemet.

Upp

Uppdatering

För att uppdatera XAdmin till en ny version behövs endast en fungerande installation av XAdmin samt den senaste versionen från http://xcoders.info/ uppackad lokal på datorn.

Uppdateringen i sig är sedan mycket enkel; se bara till att ladda upp alla filer från arkivet utom config.php. Laddas config.php upp försvinner nämligen alla inloggningsuppgifter och dylikt, vilket gör systemet oanvändbart. Skulle mot förmodan config.php skrivas över så gå till /ins/recovery.php för att återskapa config.php med de värden som den hade sedan tidigare. Notera att du fortfarande måste ha alla MySQL-uppgifter till hands vid en eventuell återskapning.

När alla nya filer är uppdaterade; gå bara till /ins/update.php för att starta uppdateringen. Tidigare krävdes det att man gick till en specifik fil beroende på vilken version man uppdaterade i från, men sedan v2.0b4 gäller samma fil oberoende av vilken version man har sen tidigare. Därefter torde uppdateringsprocessen flyta på av sig själv.

Upp

Avinstallation

För att avinstallera XAdmin krävs det endast att man tar bort de uppladdade filerna. Finns det även tillgång till PhpMyAdmin eller liknande, alternativt MySQL-terminalen så ta även bort alla tabeller som har det prefixet som sattes vid installationen (standard är "xa_").

Upp

Komma igång

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed tempor lectus sed nulla. Suspendisse sed nisl. Donec pulvinar, justo ut faucibus fringilla, ligula orci lobortis augue, dapibus lobortis dui sapien vitae lacus. Morbi ut nulla ac ligula euismod congue. Quisque a orci. Morbi a leo eu erat scelerisque scelerisque. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus laoreet. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras tristique metus sed urna. Curabitur ultrices iaculis neque. Nam at sem. Aenean tincidunt nisi quis risus. Phasellus lobortis tortor. Etiam suscipit erat a massa. Donec sollicitudin. Nullam et sapien vitae nunc tristique aliquet.

Upp

Enkel guide

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed tempor lectus sed nulla. Suspendisse sed nisl. Donec pulvinar, justo ut faucibus fringilla, ligula orci lobortis augue, dapibus lobortis dui sapien vitae lacus. Morbi ut nulla ac ligula euismod congue. Quisque a orci. Morbi a leo eu erat scelerisque scelerisque. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus laoreet. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras tristique metus sed urna. Curabitur ultrices iaculis neque. Nam at sem. Aenean tincidunt nisi quis risus. Phasellus lobortis tortor. Etiam suscipit erat a massa. Donec sollicitudin. Nullam et sapien vitae nunc tristique aliquet.

Upp

Avancerad guide

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed tempor lectus sed nulla. Suspendisse sed nisl. Donec pulvinar, justo ut faucibus fringilla, ligula orci lobortis augue, dapibus lobortis dui sapien vitae lacus. Morbi ut nulla ac ligula euismod congue. Quisque a orci. Morbi a leo eu erat scelerisque scelerisque. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus laoreet. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras tristique metus sed urna. Curabitur ultrices iaculis neque. Nam at sem. Aenean tincidunt nisi quis risus. Phasellus lobortis tortor. Etiam suscipit erat a massa. Donec sollicitudin. Nullam et sapien vitae nunc tristique aliquet.

Upp

Integrera XAdmin i en befintlig/ny layout

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed tempor lectus sed nulla. Suspendisse sed nisl. Donec pulvinar, justo ut faucibus fringilla, ligula orci lobortis augue, dapibus lobortis dui sapien vitae lacus. Morbi ut nulla ac ligula euismod congue. Quisque a orci. Morbi a leo eu erat scelerisque scelerisque. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus laoreet. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Cras tristique metus sed urna. Curabitur ultrices iaculis neque. Nam at sem. Aenean tincidunt nisi quis risus. Phasellus lobortis tortor. Etiam suscipit erat a massa. Donec sollicitudin. Nullam et sapien vitae nunc tristique aliquet.

Upp

Funktionsreferens

Här nedan finns det en komplett funktionsreferens för alla funktioner som kan användas för att publicera innehållet som skapats i admindelen publikt. Varje funktion och vad den gör illustreras med en beskrivning samt ett exempel på hur den kan användas.

getClanName

			getClanName()
			

Anropas utan argument och returnerar namnet på klanen.

Exempel:

			echo getClanName();
			

getNewsItem

			getNewsItem($item, $id = false)
			

Anropas med ett eller två argument. $item ska vara endera "titel", "nyhet", "skribent" eller "datum", beroende på vilken output som önskas. Finns inte $id med i argumentet returneras värdet från senaste nyheten, annars från nyheten specifisierad i $id.

Exempel:

			echo getNewsItem("skribent"); // Returnerar skribenten för senaste nyheten
			// ------
			echo getNewsItem("datum", $_GET['visa']); // Returnerar datumet då nyheten med id't som finns i $_GET['visa'] postades.
			

getNewsComments

			getNewsComments($item, $id, $lim)
			

Anropas med två eller tre argument. $item och $id måste alltid finnas med, där $item även behöver vara något av följande:

Allt beroende på vad för output man önskar. $id ska vara nyhetsid:t för den nyhet man vill ha ut kommentarer från. Vill man inte skriva ut alla kommentarer går $lim även att lägga till i funktionsanropet. $lim indikerar då hur många kommentarer som returneras. Notera att kommentarerna alltid sorteras

 

Exempel:

			echo getHistory();
			

getMemberItem

			getMemberItem($item, $id)
			

Anropas med argumenten $item samt $id, där $item är något av följande:

Detta beroende på vad för output som önskas. $id är det id på medlemmen vars information eftersöks.

Exempel:

			echo getMemberInfo("nick", 10); // Returnerar nicket för medlem med id 10.
			// ------
			echo getMemberInfo("info", $_GET['medlem']); // Returnerar infon om medlemmen med id:t som återfinns i $_GET['medlem']
			

getMatchItem

			getMatchItem($item, $id)
			

Anropas med argumenten $item samt $id, där $item är något av följande:

Detta beroende på vad för output som önskas. $id är det id på matchen vars information eftersöks.

Exempel:

			echo getMatchItem("karta", 1); // Returnerar kartan för matchen med id 1
			// ------
			echo getMatchItem("motstand", $matchid); // Returnerar motståndet för matchen med id $matchid
			

getMatchWinner

			getMatchWinner($res)
			

Anropas med argumentet $res som är det getMatchItem("resultat", $id) returnerar. Funtkionen returnerar 1 om ens egen klan vann, 0 vid oavgjort och -1 vid förlust.

Exempel:

			$resultat = getMatchItem("resultat", $matchid);
			$res = getMatchWinner($resultat);
			$r = explode("-", $resultat);
			if($res == 1) {
				echo '<span class="vinst">{$r[0]}</span> - <span class="forlust">{$r[1]}</span>';
			}
			elseif($res == 0) {
				echo '<span class="oavgjort">{$r[0]}</span> - <span class="oavgjort">{$r[1]}</span>';
			}
			else {
				echo '<span class="forlust">{$r[0]}</span> - <span class="vinst">{$r[1]}</span>';
			}
			// Skrivet ut rätt text beroende på vilket lag som vann
			

getHistory

			getHistory()
			

Anropas utan några argument och returnerar historian för klanen.

Exempel:

			echo getHistory();
			

Upp