Commit graph

2866 commits

Author SHA1 Message Date
Greg Taylor
ffe9a563e0 Removing mixins.py, as it's not in use. We now have a separate ConnectScreen model under the config app to store connect screens. ConfigValue's value fields are now CharFields instead of TextFields for the sake of efficiency and sanity. It is strongly recommended that you reset your config app and syncdb to load the fixture. 2008-06-14 03:15:41 +00:00
Greg Taylor
f1760e6521 I guess it helps if I actually add the file. 2008-06-14 02:26:40 +00:00
Greg Taylor
813c50652e Splitting some of the stuff out of settings.py into settings_common.py (new file) to hold directives that need to be versioned. It sucks having to tell people to re-build their settings.py file from settings.py.dist when changes are made. 2008-06-14 02:26:14 +00:00
loki77
3fe644ef17 Indentation change 3-4 spaces.
Possible files that need to be cleanedup;
commands/info.py:cmd_list
commands/general.py:cmd_who
commands/comsys.py:cmd_who

cmdtable.py
ansi.py
2008-06-13 19:52:29 +00:00
loki77
740d715c72 Modified for 4 space indentation. 2008-06-13 19:41:23 +00:00
loki77
ad009e20ab basicobject.py
---------------
  - Checks for NULL description on objects- if Null, it doesn't print the extra line any more.
  - Made the checks for contents a little less ambiguous

cmdhandler.py
--------------
  - Added new method 'parse_command' which takes a command string and tries to break it up based on common command parsing rules.  Mostly complete, but could use some work on the edge cases.  Check out the docstring on the function- I tried to make it fairly well documented.
  - Changed the check for 'non-standard characters' to just return, rather than throw an Exception.  Not sure if this causes any issues, but I noticed that when you hit enter without entering a command it would trigger this code.  Now it just fails silently.
  - The handle function now calls the parse_command function now and stores the results in parsed_input['parsed_command'].  This then gets put into cdat['uinput'] at the end of handle() like before.  The old data in parsed_input is still there, this is just a new field.
  - Added cdat['raw_input'] to pass the full, untouched command string on.  This is also stored in parsed_input['parsed_command']['raw_command'] so not sure fi this is necessary any longer, probably not.

cmdtable.py
------------
  - Just cleaned it up a bit and straightened out the columns after changing 3-4 space indentation.

apps/objects/models.py
-----------------------
  - set_description now sets the description attribute to 'None' (or Null in the db) when given a blank description.  This is used for the change mentioned above in basicobject.py
  - get_description now returns None if self.description is None
  - used defines_global in the comparison methods like is_player

functions_db.py
----------------
  - Changed import defines_global as defines_global to just 'import defines_global'- wasn't sure why this was this way, if I broke something (I didn't seem to) let me know.
  - renamed player_search to player_name_search.  Removed the use of local_and_global_search inside of it.  local_and_global_search now calls it when it receives a search_string that starts with *.
  - alias_search now only looks at attributes with attr_name == ALIAS.  It used to just look at attr_value, which could match anything, it seemed.
  - added 'dbref_search'
  - local_and_global_search changes:
    - Now uses dbref_search & player_search if the string starts with "#" or "*" respectively
    - Changed when it uses dbref_search to whenever the search_string is a dbref.  It used to check that it was a dbref, and that search_contents & search_location were set, but I *believe* in most MU*'s when you supply a dbref it never fails to find the object.

commands/unloggedin.py
-----------------------
  - removed hardcoded object type #'s and started using defines_global instead
  - when creating a new account, made sure that no object with an alias matching the player name requested exists.  This is behavior from TinyMUSH, and I think most MUSHs follow this, but if not this is easy enough to change back.

commands/general.py
--------------------
  - Rewrote cmd_page:
    - New Features
      - Page by dbref
      - Page multiple people
      - pose (:) and no space pose (;) pages
      - When someone hits page without a target or data, it now will tell the player who they last paged, or say they haven't paged anyone if they don't have a LASTPAGED
    - uses parse_command, made it a lot easier to work through the extra functionality added above
    - When there are multiple words in a page target, it first tries to find a player that matches the entire string.  If that fails, then it goes through each word, assuming each is a separate target, and works out paging them.

commands/objmanip.py
---------------------
  - I started to muck with cmd_name & cmd_page, but decided to hold off for now.  Largely, if everyone is cool with the idea that names & aliases should be totally unique, then we need to go ahead and re-write these.  I'll do that if everyone is cool with it.
2008-06-13 18:15:54 +00:00
Greg Taylor
87fb121427 Make Evennia start correctly on the latest version of Twisted. There is a logging snafu that exists with the latest Twisted, and it was only dumb luck that the server started on previous versions of the framework. The ticket detailing this problem is at: http://twistedmatrix.com/trac/ticket/3289
Let me know if this breaks your setup!
2008-06-10 20:46:17 +00:00
Greg Taylor
38f8225a37 Moving application initial data over to JSON and fixtures. This is much better than using those raw SQL files that might not work with all RDBMs. The Objects app needs to be converted to use fixtures as well, but I've got something bad data in there that's causing some issues (which I'm working on hunting down). 2008-02-09 02:49:03 +00:00
Greg Taylor
ea88ace9fa Updating some models to use max_length instead of the deprecated maxlength. 2008-02-09 02:35:28 +00:00
Greg Taylor
57d7a8f41a Trying to see if this will ignore changes to startup.sh so I don't keep accidentally committing new ones. 2007-10-27 03:26:51 +00:00
Greg Taylor
20e4c29747 Whoops, accidentally committed a change to startup.sh 2007-10-27 03:26:03 +00:00
Greg Taylor
4d94132c54 Moved the connect screen to the connect_screen config directive. Made the conf_value field on the configvalue model a TextField so we're not getting truncated at 255 as with a CharField. This means you'll need to delete your config tables and re-sync. 2007-10-27 03:25:42 +00:00
Michael King
f3b4422990 Re-tabbed managers.py under reload (was set to 4 spaces) 2007-09-14 17:17:19 +00:00
Greg Taylor
3ae3bd6884 Bad logic for object recycling. Boo me. Adjusted create_object() and @nextfree. 2007-09-14 16:32:38 +00:00
Michael King
74a3a01429 Moved object and exit clearing to the destroy method instead of
the delete method.  This may change later, but for simplicity's sake,
this is how we're doing it for now.
2007-09-14 14:09:25 +00:00
Michael King
26beacb419 Added handling of django's unicode insistance. 2007-09-14 13:59:04 +00:00
Greg Taylor
9c3ba7f025 Updated some broken urls in the settings.py.dist file. Thanks to marcos for reporting. 2007-09-14 03:33:15 +00:00
Michael King
02ffa832f6 Did some work on the reload manager, as well as removed
the rollback importer from server.py
2007-09-06 14:58:18 +00:00
Michael King
5ecbff32f6 Renamed callback to a more sensible name. 2007-09-06 13:24:09 +00:00
Michael King
94b449466a Added mixins for reload development 2007-09-05 16:52:09 +00:00
Michael King
4ab9258bbc Ignoring git repository for local branching 2007-09-05 14:22:56 +00:00
Michael King
7e7f164c71 Moved @boot to a more sensible place. 2007-08-09 13:12:49 +00:00
Michael King
684ae521b7 Added @boot.
Currently, @boot will boot the first username match it comes across, if connected.

It will not boot non-player objects, and it will not allow staff to boot other staff.
2007-08-07 19:19:31 +00:00
Michael King
3fe64c1f34 Cleaned up the revision information for aesthetics. 2007-08-07 17:30:35 +00:00
Michael King
6a172edb03 Finalized EVENNIA_VERSION to include svn revision 2007-08-07 17:24:25 +00:00
Michael King
02b19ee4b0 Ooops. Forgot the trailing $ in the SVN keyword. 2007-08-07 17:22:28 +00:00
Michael King
2abc0adff9 Moved Revision outside of VERSION global for clean up 2007-08-07 17:20:54 +00:00
Michael King
c88a89bce1 Added Revision keyword to defines_global, and set svn:keywords property on defines_global.py 2007-08-07 17:18:45 +00:00
Michael King
7f3a8870f0 I learned something I didn't know about Django:
Apparently, if you retrieve the same model instance with two different references,
they don't equate with is or ==, you need to compare the id's.  I could be misreading the
symptoms, but this is what I had to do to get it to recognize that the home of the object in
question was its current (going away) location, and act appropriately.
2007-08-07 17:08:31 +00:00
Michael King
13b19b9a16 Removed DEFAULT_HOME reference from defines_global 2007-08-07 16:53:26 +00:00
Michael King
0c2648edaa Removed DEFAULT_HOME from settings.py into a server configuration directive via the confg app.
Changed clear_objects to reflect default home changes.
2007-08-07 16:52:47 +00:00
Michael King
8b8099a9db Added DEFAULT_HOME value of 2 to settings.py.dist
Added import of DEFAULT_HOME from settings into defines_global
Removed clear_players()
Removed clear_things()
Created a more general clear_objects():
  * obj.clear_objects()
    * Everything with obj as its location will be moved
      to its home.
    * If the home is the obj, then said objects will be
      moved to DEFAULT_HOME, if it exists.
    * If the said objects do not have a home, they will
      also be moved to DEFAULT_HOME.
2007-08-07 16:28:22 +00:00
Michael King
5f962b69a0 Added clear_things, clear_players and clear_exits to Object class.
* obj.clear_things() relocates all things contained by obj
 * obj.clear_players() relocates all players contained by obj
 * obj.clear_exits() destroys all exits to and from obj
2007-08-06 20:00:41 +00:00
Michael King
d2136ec135 Adjusted startup.sh to use the BASE_PATH from settings.py 2007-08-06 18:53:06 +00:00
Michael King
c5208656f8 Fixed missing quote on line 158. 2007-08-06 18:14:37 +00:00
Greg Taylor
2e397df4d5 We now have user authentication via the web interface. @whee. 2007-08-02 19:37:16 +00:00
Greg Taylor
be4e0069a6 Adding comments. 2007-07-31 19:32:03 +00:00
Greg Taylor
edfae1349a Eh, we don't really need a staff link on the codebase example. We'll leave that for each game to worry about, as their staff situation may differ. 2007-07-31 19:25:32 +00:00
Greg Taylor
65e1b85c6f Some cosmetics. Also make searching news match against Title and Body for now. Will eventually have some checkboxes to with the option to do both or only one. 2007-07-31 18:39:48 +00:00
Greg Taylor
85d13fe16b I forgot to add the flatpages templates directory, whoops. Also fix a pluralization cosmetic thing in the admin interface for News entries. 2007-07-31 18:28:42 +00:00
Greg Taylor
613edc774f Yay, the news system is looking good now. We'll re-visit it later to add searching/sorting by news categories and stuff. 2007-07-31 18:25:24 +00:00
Greg Taylor
762e0f83bc The news archives and searching news is now operational. Next up, flatpages. 2007-07-31 14:59:00 +00:00
Greg Taylor
aad1d3d0c4 More commentage. 2007-07-31 13:23:44 +00:00
Greg Taylor
daecf0b4a3 Elaborating on some settings with more comments. 2007-07-31 13:10:19 +00:00
Greg Taylor
648bee599e Improvements on the news app. It's not nearly done yet, don't bother playing with it for a while unless you're really curious and want to see ugly, un-refined code :) 2007-07-30 20:30:16 +00:00
Greg Taylor
9db148f98c Add a placeholder page, tbi.html, and a tbi view /tbi, that can be used to link to when a particular web feature isn't complete yet rather than leaving dead links. 2007-07-30 15:23:42 +00:00
Greg Taylor
6aab3a4145 Added a view for looking at an individual news entry. It's ugly, one of you artsy people should make it less so :) 2007-07-26 15:50:24 +00:00
Greg Taylor
1afcd6bf99 We've now got a sane template structure. webtemplates/base.html is the parent of all pages. index.html in that directory is the default page, and sub-directories from there will hold the templates for various applications. Notice how in index.html and the file in the news directory are put together. It's really simple, see the Template documentation on djangoproject.com for more in-depth details. 2007-07-26 13:52:46 +00:00
Greg Taylor
a3ac4ff17c Word wrap is messing things up a bit. Disabling it for now until we have more time to check this out. 2007-07-26 12:48:44 +00:00
Greg Taylor
b9e543f6fd Temporarily removing channel emits to avoid circular dependencies. Pfft. 2007-07-25 15:06:04 +00:00