- Fixed Issue 185
- Moved some files from /icons to /html - Added /datum/getrev which should get the server revision info from local svn files. Settings in /config/svndir.txt. Added new OOC verb "Show Server Revision" git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2405 316c924e-a436-60f5-8080-3fe189b3f50e
88
code/datums/helper_datums/getrev.dm
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
/*
|
||||||
|
* This datum gets revision info from local svn 'entries' file
|
||||||
|
* Path to the directory containing it should be in 'config/svndir.txt' file
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
var/global/datum/getrev/revdata = new("config/svndir.txt")
|
||||||
|
|
||||||
|
//Oh yeah, I'm an OOP fag, lalala
|
||||||
|
/datum/getrev
|
||||||
|
var/revision
|
||||||
|
var/commiter
|
||||||
|
var/svndirpath
|
||||||
|
var/revhref
|
||||||
|
|
||||||
|
proc/abort()
|
||||||
|
spawn()
|
||||||
|
del src
|
||||||
|
|
||||||
|
New(filename)
|
||||||
|
..()
|
||||||
|
if(!fexists(filename))
|
||||||
|
return abort()
|
||||||
|
|
||||||
|
var/text = file2text(file(filename))
|
||||||
|
if(!text)
|
||||||
|
diary << "Unable to get [filename] contents, aborting"
|
||||||
|
return abort()
|
||||||
|
|
||||||
|
var/list/CL = dd_text2list(text, "\n")
|
||||||
|
for (var/t in CL)
|
||||||
|
if (!t)
|
||||||
|
continue
|
||||||
|
t = trim(t)
|
||||||
|
if (length(t) == 0)
|
||||||
|
continue
|
||||||
|
else if (copytext(t, 1, 2) == "#")
|
||||||
|
continue
|
||||||
|
var/pos = findtext(t, " ")
|
||||||
|
var/name = null
|
||||||
|
var/value = null
|
||||||
|
if (pos)
|
||||||
|
name = lowertext(copytext(t, 1, pos))
|
||||||
|
value = copytext(t, pos + 1)
|
||||||
|
else
|
||||||
|
name = lowertext(t)
|
||||||
|
if(!name)
|
||||||
|
continue
|
||||||
|
switch(name)
|
||||||
|
if("svndir")
|
||||||
|
svndirpath = value
|
||||||
|
if("revhref")
|
||||||
|
revhref = value
|
||||||
|
|
||||||
|
if(svndirpath && fexists(svndirpath) && fexists("[svndirpath]/entries") && isfile(file("[svndirpath]/entries")))
|
||||||
|
var/list/filelist = dd_file2list("[svndirpath]/entries",null)
|
||||||
|
revision = filelist[4]
|
||||||
|
commiter = filelist[12]
|
||||||
|
diary << "Revision info loaded succesfully"
|
||||||
|
return
|
||||||
|
return abort()
|
||||||
|
|
||||||
|
proc/getRevisionText()
|
||||||
|
var/output
|
||||||
|
if(revhref)
|
||||||
|
output = {"<a href="[revhref][revision]">[revision]</a>"}
|
||||||
|
else
|
||||||
|
output = revision
|
||||||
|
return output
|
||||||
|
|
||||||
|
proc/showInfo()
|
||||||
|
return {"<html>
|
||||||
|
<head>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p><b>Server Revision:</b> [getRevisionText()]<br/>
|
||||||
|
<b>Author:</b> [commiter]</p>
|
||||||
|
</body>
|
||||||
|
<html>"}
|
||||||
|
|
||||||
|
client/verb/showrevinfo()
|
||||||
|
set category = "OOC"
|
||||||
|
set name = "Show Server Revision"
|
||||||
|
var/output = "Sorry, the revision info is unavailable."
|
||||||
|
if(revdata)
|
||||||
|
output = revdata.showInfo()
|
||||||
|
usr << browse(output,"window=revdata");
|
||||||
|
return
|
||||||
@@ -53,4 +53,8 @@
|
|||||||
var/t = get(i)
|
var/t = get(i)
|
||||||
if(t)
|
if(t)
|
||||||
t = text2path(t)
|
t = text2path(t)
|
||||||
return ispath(t) ? t : null
|
return ispath(t) ? t : null
|
||||||
|
|
||||||
|
proc/getList(i)
|
||||||
|
var/t = getAndLocate(i)
|
||||||
|
return islist(t) ? t : null
|
||||||
@@ -1018,7 +1018,7 @@ datum
|
|||||||
build_type = PROTOLATHE
|
build_type = PROTOLATHE
|
||||||
materials = list("$metal" = 5000, "$glass" = 1000, "$uranium" = 500)
|
materials = list("$metal" = 5000, "$glass" = 1000, "$uranium" = 500)
|
||||||
reliability_base = 76
|
reliability_base = 76
|
||||||
build_path = "/obj/item/weapon/gun/energy/nuclear"
|
build_path = "/obj/item/weapon/gun/energy/gun/nuclear"
|
||||||
locked = 1
|
locked = 1
|
||||||
|
|
||||||
stunrevolver
|
stunrevolver
|
||||||
|
|||||||
5
config/svndir.txt
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#Path to the .svn directory. Used to get server revision info.
|
||||||
|
SVNDIR .svn
|
||||||
|
|
||||||
|
#Link to revision details.
|
||||||
|
REVHREF http://code.google.com/p/tgstation13/source/detail?r=
|
||||||
|
Before Width: | Height: | Size: 697 B After Width: | Height: | Size: 697 B |
|
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 810 B After Width: | Height: | Size: 810 B |
|
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 5.5 KiB |
|
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 8.5 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 958 B After Width: | Height: | Size: 958 B |
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
@@ -139,6 +139,7 @@
|
|||||||
#define FILE_DIR "code/WorkInProgress/recycling"
|
#define FILE_DIR "code/WorkInProgress/recycling"
|
||||||
#define FILE_DIR "code/WorkInProgress/virus2"
|
#define FILE_DIR "code/WorkInProgress/virus2"
|
||||||
#define FILE_DIR "code/WorkInProgress/virus2/Disease2"
|
#define FILE_DIR "code/WorkInProgress/virus2/Disease2"
|
||||||
|
#define FILE_DIR "html"
|
||||||
#define FILE_DIR "icons"
|
#define FILE_DIR "icons"
|
||||||
#define FILE_DIR "icons/effects"
|
#define FILE_DIR "icons/effects"
|
||||||
#define FILE_DIR "icons/misc"
|
#define FILE_DIR "icons/misc"
|
||||||
@@ -236,6 +237,7 @@
|
|||||||
#include "code\datums\diseases\wizarditis.dm"
|
#include "code\datums\diseases\wizarditis.dm"
|
||||||
#include "code\datums\diseases\xeno_transformation.dm"
|
#include "code\datums\diseases\xeno_transformation.dm"
|
||||||
#include "code\datums\helper_datums\construction_datum.dm"
|
#include "code\datums\helper_datums\construction_datum.dm"
|
||||||
|
#include "code\datums\helper_datums\getrev.dm"
|
||||||
#include "code\datums\helper_datums\global_iterator.dm"
|
#include "code\datums\helper_datums\global_iterator.dm"
|
||||||
#include "code\datums\helper_datums\tension.dm"
|
#include "code\datums\helper_datums\tension.dm"
|
||||||
#include "code\datums\helper_datums\topic_input.dm"
|
#include "code\datums\helper_datums\topic_input.dm"
|
||||||
|
|||||||