diff --git a/django/conf/admin_media/css/changelists.css b/django/conf/admin_media/css/changelists.css deleted file mode 100644 index 966ca4a486..0000000000 --- a/django/conf/admin_media/css/changelists.css +++ /dev/null @@ -1,60 +0,0 @@ -/* - ______________________________ - DJANGO - Admin Changelist Styles - - Extends base.css - - by Wilson Miner - wilson@lawrence.com - - Copyright (c) 2005 - Lawrence Journal-World - - 645 New Hampshire - Lawrence, KS 66044 - -*/ - -#changelist {position:relative; width:100%;} -#changelist table {width:100%;} -.change-list .filtered table { border-right:1px solid #ddd, width:100%; } -.change-list .filtered {min-height:400px; _height:400px;} -.change-list .filtered {background:white url(../img/admin/changelist-bg.gif) top right repeat-y !important;} -.change-list .filtered .paginator, .filtered #toolbar, .filtered div.xfull {margin-right:160px !important; width:auto !important; } -.change-list .filtered table tbody th {padding-right:10px;} -#changelist .toplinks {border-bottom:1px solid #ccc !important;} -#changelist .paginator { color:#666; border-top:1px solid #eee; border-bottom:1px solid #eee; background:white url(../img/admin/nav-bg.gif) 0 180% repeat-x; overflow:hidden;} -.change-list .filtered .paginator { border-right:1px solid #ddd; } - -/* CHANGELIST TABLES */ - -#changelist table thead th {white-space:nowrap;} -#changelist table tbody td {border-left: 1px solid #ddd;} -#changelist table tfoot {color: #666;} - -/* TOOLBAR */ - -#changelist #toolbar {padding:3px; border-bottom:1px solid #ddd; background:#e1e1e1 url(../img/admin/nav-bg.gif) top left repeat-x; color:#666;} -#changelist #toolbar form input {font-size:11px; padding:1px 2px;} -#changelist #toolbar form #searchbar {padding:2px;} -#changelist #changelist-search img {vertical-align:middle;} - -/* FILTER COLUMN */ - -#changelist-filter {position:absolute; top:0; right:0; z-index:1000; width:160px; border-left:1px solid #ddd; background:#efefef; margin:0;} -#changelist-filter h2 {font-size:11px; padding:2px 5px; border-bottom:1px solid #ddd;} -#changelist-filter h3 {font-size:12px; margin-bottom:0;} -#changelist-filter ul {padding-left:0;margin-left:10px;_margin-right:-10px;} -#changelist-filter li {list-style-type:none; margin-left:0; padding-left:0;} -#changelist-filter a {color:#999;} -#changelist-filter a:hover {color:#036;} -#changelist-filter li.selected {border-left:5px solid #ccc; padding-left:5px;margin-left:-10px;} -#changelist-filter li.selected a {color:#5b80b2 !important;} - -/* DATE DRILLDOWN */ - -.change-list ul.toplinks {display:block; background:white url(../img/admin/nav-bg-reverse.gif) 0 -10px repeat-x; border-top:1px solid white; float:left; padding:0 !important; margin:0 !important; width:100%;} -.change-list ul.toplinks li {float: left; width: 9em; padding:3px 6px; font-weight: bold; list-style-type:none;} -.change-list ul.toplinks .date-back a {color:#999;} -.change-list ul.toplinks .date-back a:hover {color:#036;} diff --git a/django/conf/project_template/settings/main.py b/django/conf/project_template/settings.py similarity index 65% rename from django/conf/project_template/settings/main.py rename to django/conf/project_template/settings.py index 1bde7df10a..eaeeb56a53 100644 --- a/django/conf/project_template/settings/main.py +++ b/django/conf/project_template/settings.py @@ -8,8 +8,6 @@ ADMINS = ( MANAGERS = ADMINS -LANGUAGE_CODE = 'en-us' - DATABASE_ENGINE = 'postgresql' # 'postgresql', 'mysql', 'sqlite3' or 'ado_mssql'. DATABASE_NAME = '' # Or path to database file if using sqlite3. DATABASE_USER = '' # Not used with sqlite3. @@ -17,6 +15,15 @@ DATABASE_PASSWORD = '' # Not used with sqlite3. DATABASE_HOST = '' # Set to empty string for localhost. Not used with sqlite3. DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3. +# Local time zone for this installation. All choices can be found here: +# http://www.postgresql.org/docs/current/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE +TIME_ZONE = 'America/Chicago' + +# Language code for this installation. All choices can be found here: +# http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes +# http://blogs.law.harvard.edu/tech/stories/storyReader$15 +LANGUAGE_CODE = 'en-us' + SITE_ID = 1 # Absolute path to the directory that holds media. @@ -27,22 +34,28 @@ MEDIA_ROOT = '' # Example: "http://media.lawrence.com" MEDIA_URL = '' +# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a +# trailing slash. +# Examples: "http://foo.com/media/", "/media/". +ADMIN_MEDIA_PREFIX = '/media/' + # Make this unique, and don't share it with anybody. SECRET_KEY = '' # List of callables that know how to import templates from various sources. TEMPLATE_LOADERS = ( -# 'django.core.template.loaders.app_directories.load_template_source', 'django.core.template.loaders.filesystem.load_template_source', + 'django.core.template.loaders.app_directories.load_template_source', # 'django.core.template.loaders.eggs.load_template_source', ) MIDDLEWARE_CLASSES = ( "django.middleware.common.CommonMiddleware", + "django.middleware.sessions.SessionMiddleware", "django.middleware.doc.XViewMiddleware", ) -ROOT_URLCONF = '{{ project_name }}.settings.urls.main' +ROOT_URLCONF = '{{ project_name }}.urls' TEMPLATE_DIRS = ( # Put strings here, like "/home/html/django_templates". diff --git a/django/conf/project_template/settings/admin.py b/django/conf/project_template/settings/admin.py deleted file mode 100644 index 603886a5f2..0000000000 --- a/django/conf/project_template/settings/admin.py +++ /dev/null @@ -1,18 +0,0 @@ -# Django settings for {{ project_name }} project admin site. - -from main import * - -TEMPLATE_DIRS = ( - # Put strings here, like "/home/html/django_templates". -) -ROOT_URLCONF = '{{ project_name }}.settings.urls.admin' -MIDDLEWARE_CLASSES = ( - 'django.middleware.sessions.SessionMiddleware', - 'django.middleware.admin.AdminUserRequired', - 'django.middleware.common.CommonMiddleware', -) - -# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a -# trailing slash. -# Examples: "http://foo.com/media/", "/media/". -ADMIN_MEDIA_PREFIX = '/media/' diff --git a/django/conf/project_template/settings/urls/__init__.py b/django/conf/project_template/settings/urls/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/django/conf/project_template/settings/urls/admin.py b/django/conf/project_template/settings/urls/admin.py deleted file mode 100644 index c3eb86d3cb..0000000000 --- a/django/conf/project_template/settings/urls/admin.py +++ /dev/null @@ -1,6 +0,0 @@ -from django.conf.urls.defaults import * - -urlpatterns = patterns('', - (r'^admin/', include('django.conf.urls.admin')), - (r'^r/', include('django.conf.urls.shortcut')), -) diff --git a/django/conf/project_template/settings/urls/main.py b/django/conf/project_template/urls.py similarity index 63% rename from django/conf/project_template/settings/urls/main.py rename to django/conf/project_template/urls.py index f9b993a52c..fe77ea1867 100644 --- a/django/conf/project_template/settings/urls/main.py +++ b/django/conf/project_template/urls.py @@ -3,4 +3,7 @@ from django.conf.urls.defaults import * urlpatterns = patterns('', # Example: # (r'^{{ project_name }}/', include('{{ project_name }}.apps.foo.urls.foo')), + + # Uncomment this for admin: +# (r'^admin/', include('django.contrib.admin.urls.admin')), ) diff --git a/django/conf/admin_media/css/base.css b/django/contrib/admin/media/css/base.css similarity index 100% rename from django/conf/admin_media/css/base.css rename to django/contrib/admin/media/css/base.css diff --git a/django/contrib/admin/media/css/changelists.css b/django/contrib/admin/media/css/changelists.css new file mode 100644 index 0000000000..7ff59c5e6b --- /dev/null +++ b/django/contrib/admin/media/css/changelists.css @@ -0,0 +1,44 @@ +/* + DJANGO Admin Changelist Styles + by Wilson Miner wilson@lawrence.com + Copyright (c) 2005 Lawrence Journal-World +*/ + +#changelist { position:relative; width:100%; } +#changelist table { width:100%; } +.change-list .filtered table { border-right:1px solid #ddd; } +.change-list .filtered { min-height:400px; _height:400px; } +.change-list .filtered { background:white url(../img/admin/changelist-bg.gif) top right repeat-y !important; } +.change-list .filtered table, .change-list .filtered .paginator, .filtered #toolbar, .filtered div.xfull { margin-right:160px !important; width:auto !important; } +.change-list .filtered table tbody th { padding-right:10px; } +#changelist .toplinks { border-bottom:1px solid #ccc !important; } +#changelist .paginator { color:#666; border-top:1px solid #eee; border-bottom:1px solid #eee; background:white url(../img/admin/nav-bg.gif) 0 180% repeat-x; overflow:hidden; } +.change-list .filtered .paginator { border-right:1px solid #ddd; } + +/* CHANGELIST TABLES */ +#changelist table thead th { white-space:nowrap; } +#changelist table tbody td { border-left: 1px solid #ddd; } +#changelist table tfoot { color: #666; } + +/* TOOLBAR */ +#changelist #toolbar { padding:3px; border-bottom:1px solid #ddd; background:#e1e1e1 url(../img/admin/nav-bg.gif) top left repeat-x; color:#666; } +#changelist #toolbar form input { font-size:11px; padding:1px 2px; } +#changelist #toolbar form #searchbar { padding:2px; } +#changelist #changelist-search img { vertical-align:middle; } + +/* FILTER COLUMN */ +#changelist-filter { position:absolute; top:0; right:0; z-index:1000; width:160px; border-left:1px solid #ddd; background:#efefef; margin:0; } +#changelist-filter h2 { font-size:11px; padding:2px 5px; border-bottom:1px solid #ddd; } +#changelist-filter h3 { font-size:12px; margin-bottom:0; } +#changelist-filter ul { padding-left:0;margin-left:10px;_margin-right:-10px; } +#changelist-filter li { list-style-type:none; margin-left:0; padding-left:0; } +#changelist-filter a { color:#999; } +#changelist-filter a:hover { color:#036; } +#changelist-filter li.selected { border-left:5px solid #ccc; padding-left:5px;margin-left:-10px; } +#changelist-filter li.selected a { color:#5b80b2 !important; } + +/* DATE DRILLDOWN */ +.change-list ul.toplinks { display:block; background:white url(../img/admin/nav-bg-reverse.gif) 0 -10px repeat-x; border-top:1px solid white; float:left; padding:0 !important; margin:0 !important; width:100%; } +.change-list ul.toplinks li { float: left; width: 9em; padding:3px 6px; font-weight: bold; list-style-type:none; } +.change-list ul.toplinks .date-back a { color:#999; } +.change-list ul.toplinks .date-back a:hover { color:#036; } diff --git a/django/conf/admin_media/css/global.css b/django/contrib/admin/media/css/global.css similarity index 96% rename from django/conf/admin_media/css/global.css rename to django/contrib/admin/media/css/global.css index 7c60bf9755..453998c363 100644 --- a/django/conf/admin_media/css/global.css +++ b/django/contrib/admin/media/css/global.css @@ -1,45 +1,17 @@ /* - ______________________________ - DJANGO - Admin Global Styles - - Extends base.css - - by Wilson Miner - wilson@lawrence.com - - Copyright (c) 2005 - Lawrence Journal-World - - 645 New Hampshire - Lawrence, KS 66044 - - ______________________________ - SITE DIMENSIONS - - Site Width: 768px - Content Width: 750px - Main Column: 580px - Sidebar: 220px - - ______________________________ - COLORS - - Blue #5b80b2 - Dark Blue #036 - + DJANGO Admin Global Styles + by Wilson Miner wilson@lawrence.com + Copyright (c) 2005 Lawrence Journal-World */ body { margin:0; padding:0; font-family:"Lucida Grande","Bitstream Vera Sans",Verdana,Arial,sans-serif; color:#333; } /* LINKS */ - a:link, a:visited { color: #5b80b2; text-decoration:none; } a:hover { color: #036; } a img { border:none; } /* GLOBAL DEFAULTS */ - p, ol, ul, dl { margin:.2em 0 .8em 0; font-size:12px; } p { padding:0; line-height:140%; } h1,h2,h3,h4,h5 { font-weight:bold; } @@ -67,7 +39,6 @@ div.system-message { background: #ffc; margin: 10px; padding: 6px 8px; font-size div.system-message p.system-message-title { padding:4px 5px 4px 25px; margin:0; color:red;background:#ffc url(../img/admin/icon_error.gif) 5px .3em no-repeat; } /* PAGE STRUCTURE */ - #container { position:relative; width:100%; min-width:720px; } #header { text-align:left; min-height:55px; _height:55px; } #content { margin:10px 15px; } @@ -76,13 +47,6 @@ div.system-message p.system-message-title { padding:4px 5px 4px 25px; margin:0; #footer { clear:both; padding:10px; } /* COLUMN TYPES */ -/* - colM = Main | M | - colMS = Main, Sidebar | M |S| - colSM = Sidebar, Main |S| M | - flex = single-column, liquid width - superwide = single-column, extra-wide fixed width -*/ .colMS, .colM, .colSM, .colM #content-main, .colM #content-main .xfull { width:758px; } /* master site width for fixed-width pages */ .colMS #content-main, .colSM #content-main, .colMS #content-main .xfull, .colSM #content-main .xfull { width:519px; } /* main column width for 2-column pages */ .colMS #content-related, .colSM #content-related, .colSMS #content-related { width:220px; } /* sidebar column width */ @@ -94,7 +58,6 @@ div.system-message p.system-message-title { padding:4px 5px 4px 25px; margin:0; .subcol { float:left; width:46%; margin-right:15px; } /* WIDTHS */ - .x50 { width:50px; } .x75 { width:75px; } .x100 { width:100px; } @@ -106,7 +69,6 @@ div.system-message p.system-message-title { padding:4px 5px 4px 25px; margin:0; .x500 { width:500px; } /* HEADER */ - #header { background:#417690; color:#ffc; } #header a:link, #header a:visited { color:white; } #header a:hover { text-decoration:underline; } @@ -117,12 +79,10 @@ div.system-message p.system-message-title { padding:4px 5px 4px 25px; margin:0; /* SIDEBAR */ - #content-related h3 { font-size:12px; color:#666; margin-bottom:3px; } #content-related h4 { font-size:11px; } /* TABLES */ - table { border-collapse:collapse; border-color:#ccc; } td, th { font-size:11px; line-height:13px; border-bottom:1px solid #eee; vertical-align:top; padding:5px; font-family:"Lucida Grande", Verdana, Arial, sans-serif; } th { text-align:left; font-size:12px; } @@ -141,7 +101,6 @@ table#change-history { width:100%; } table#change-history tbody th { width:16em; } /* TABLE SORTING */ - thead th a:link, thead th a:visited { color:#666; display:block; } table thead th.sorted { background-position:bottom left !important; } table thead th.sorted a { padding-right:13px; } @@ -149,7 +108,6 @@ table thead th.ascending a { background:url(../img/admin/arrow-down.gif) right . table thead th.descending a { background:url(../img/admin/arrow-up.gif) right .4em no-repeat; } /* MODULES */ - .module { border:1px solid #ccc; margin-bottom:5px; background:white; } .module p, .module ul, .module h3, .module h4, .module dl, .module pre { padding-left:10px; padding-right:10px; } .module blockquote { margin-left:12px; } @@ -173,7 +131,6 @@ textarea { vertical-align:top !important; } input[type=checkbox], input[type=radio] { border:none; } /* FORM BUTTONS */ - input[type=submit], input[type=button], .submit-row input { background:white url(../img/admin/nav-bg.gif) bottom repeat-x; padding:3px; } input[type=submit]:active, input[type=button]:active { background-image:url(../img/admin/nav-bg-reverse.gif); background-position:top; } input[type=submit].default, .submit-row input.default { border:2px solid #5b80b2; background:#7CA0C7 url(../img/admin/default-bg.gif) bottom repeat-x; font-weight:bold; color:white; } @@ -183,7 +140,6 @@ input[type=submit].default:active { background-image:url(../img/admin/default-bg .submit-row .float-left { padding-top:.1em; } /* FORM ROWS */ - .form-row { clear:both; padding:8px 12px; font-size:11px; } html>body .form-row { border-bottom:1px solid #eee; } .form-row:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } @@ -191,21 +147,18 @@ html>body .form-row { border-bottom:1px solid #eee; } form .form-row p { padding-left:0; font-size:11px; } /* FORM LABELS */ - form h4 { margin:0 !important; padding:0 !important; border:none !important; } label { font-weight:normal !important; color:#666; font-size:12px; } label.inline { margin-left:20px; } .required label, label.required { font-weight:bold !important; color:#333 !important; } /* RADIO BUTTONS */ - form ul.radiolist li { list-style-type:none; } form ul.radiolist label { float:none; display:inline; } form ul.inline { margin-left:0; padding:0; } form ul.inline li { float:left; padding-right:7px; } /* ALIGNED FIELDSETS */ - .aligned label { display:block; padding:0 1em 3px 0; float:left; text-align:left; width:8em; } .aligned label.inline { display:inline; float:none; } .colMS .aligned .vLargeTextField, .colMS .aligned .vXMLLargeTextField { width:350px; } @@ -217,14 +170,12 @@ form .aligned p.help { padding-left:38px; } .checkbox-row p.help { margin-left:0; padding-left:0 !important; } /* WIDE FIELDSETS */ - .wide label { width:15em !important; } form .wide p { margin-left:15em; } form .wide p.help { padding-left:38px; } .colM fieldset.wide .vLargeTextField, .colM fieldset.wide .vXMLLargeTextField { width:450px; } /* COLLAPSED FIELDSETS */ - fieldset.collapsed * { display:none; } fieldset.collapsed h2, fieldset.collapsed { display:block !important; } fieldset.collapsed .collapse-toggle { display: inline !important; } @@ -233,7 +184,6 @@ fieldset.collapse h2 a.collapse-toggle:hover { text-decoration:underline; } .hidden { display:none; } /* MESSAGES & ERRORS */ - ul.messagelist { padding:0 0 5px 0; margin:0; } ul.messagelist li { font-size:12px; display:block; padding:4px 5px 4px 25px; margin:0 0 3px 0; border-bottom:1px solid #ddd; color:#666; background:#ffc url(../img/admin/icon_success.gif) 5px .3em no-repeat; } .errornote { font-size:12px !important; display:block; padding:4px 5px 4px 25px; margin:0 0 3px 0; border:1px solid red; color:red;background:#ffc url(../img/admin/icon_error.gif) 5px .3em no-repeat; } @@ -245,7 +195,6 @@ td ul.errorlist li { margin:0 !important; } .error input, .error select { border:1px solid red; } /* ACTION ICONS */ - .addlink { padding-left:12px; background:url(../img/admin/icon_addlink.gif) 0 .2em no-repeat; } .changelink { padding-left:12px; background:url(../img/admin/icon_changelink.gif) 0 .2em no-repeat; } .deletelink { padding-left:12px; background:url(../img/admin/icon_deletelink.gif) 0 50% no-repeat; } @@ -253,7 +202,6 @@ a.deletelink:link, a.deletelink:visited { color:#CC3434; } a.deletelink:hover { color:#993333; } /* OBJECT TOOLS */ - .object-tools { font-size:10px; font-weight:bold; font-family:Arial,Helvetica,sans-serif; padding-left:0; margin-bottom:5px; float:right; position:relative; margin-top:-2.4em; margin-bottom:-2em; } .form-row .object-tools { margin-top:0; margin-bottom:0; } .object-tools li { display:block; float:left; background:url(../img/admin/tool-left.gif) 0 0 no-repeat; padding:0 0 0 8px; margin-left:2px; height:16px; } @@ -266,17 +214,14 @@ a.deletelink:hover { color:#993333; } .object-tools a.addlink:hover { background:#5b80b2 url(../img/admin/tooltag-add_over.gif) top right no-repeat; } /* INLINE CONTROLS */ - #inline-controls { font-weight:bold; font-size:12px; } #inline-specific-controls { margin-left:6px; padding:0 8px; border-left:6px solid #ccc; } /* BREADCRUMBS */ - p.breadcrumbs { font-size:11px; color:#ccc;text-align:left; } /* old breadcrumbs style */ div.breadcrumbs { background:white url(../img/admin/nav-bg-reverse.gif) 0 -10px repeat-x; padding:2px 8px 3px 8px; font-size:11px; color:#999; border-top:1px solid white; border-bottom:1px solid #ccc; text-align:left; } /* SELECTOR (FILTER INTERFACE) */ - .selector { width:580px; float:left; } .selector select { width:270px; height:170px; } .selector-available, .selector-chosen { float:left; width:270px; text-align:center; margin-bottom:5px; } @@ -297,7 +242,6 @@ a.selector-chooseall { width:7em; background:url(../img/admin/selector-addall.gi a.selector-clearall { background:url(../img/admin/selector-removeall.gif) left center no-repeat; } /* Stacked selectors for long items */ - .stacked { float:left; width:500px; } .stacked select { width:480px; height:100px; } .stacked .selector-available, .stacked .selector-chosen { width:480px; } @@ -310,20 +254,17 @@ a.selector-clearall { background:url(../img/admin/selector-removeall.gif) left c .stacked .selector-remove { background-image:url(../img/admin/selector_stacked-remove.gif); } /* DATE AND TIME */ - p.datetime { line-height:20px; margin:0; padding:0; color:#666; font-size:11px; font-weight:bold; } .datetime span { font-size:11px; font-weight:normal; white-space:nowrap; } .vDateField { margin-left:4px; } table p.datetime { font-size:10px; margin-left:0; padding-left:0; } /* FILE UPLOADS */ - p.file-upload { line-height:20px; margin:0; padding:0; color:#666; font-size:11px; font-weight:bold; } .file-upload a { font-weight:normal; } .file-upload .deletelink { margin-left:5px; } /* CALENDARS & CLOCKS */ - .calendarbox, .clockbox { margin:5px auto; width: 10em; text-align: center; background:white; position:relative; } .clockbox { width:6em; } .calendar { margin:0; padding: 0; } @@ -350,14 +291,12 @@ ul.timelist, .timelist li { list-style-type:none; margin:0; padding:0; } .timelist a { padding:2px; } /* ORDERING WIDGET */ - ul#orderthese { padding:0; margin:0; list-style-type:none; } ul#orderthese li { list-style-type:none; display:block; padding:0; margin:6px 0; width:214px; background:#f6f6f6; white-space:nowrap; overflow:hidden; } ul#orderthese li span { display:block; border:1px solid #e7e7e7; background:transparent url(../img/admin/nav-bg-grabber.gif) top left repeat-y; font-size:10px !important; padding:4px 6px 4px 12px; } ul#orderthese span:hover { background-color:#efefef; } /* PAGINATOR */ - .paginator { font-size:11px; padding-top:10px; padding-bottom:10px; line-height:22px; margin:0; border-top:1px solid #ddd; } .paginator a:link, .paginator a:visited { padding:2px 6px; border:solid 1px #ccc; background:white; text-decoration:none; } .paginator a.showall { padding:0 !important; border:none !important; } @@ -367,7 +306,6 @@ ul#orderthese span:hover { background-color:#efefef; } .paginator a:hover { color:white; background:#5b80b2; border-color:#036; } /* TEXT STYLES & MODIFIERS */ - .small { font-size:11px; } .tiny { font-size:10px; } p.tiny { margin-top:-2px; } @@ -386,7 +324,6 @@ p img, h1 img, h2 img, h3 img, h4 img, td img { vertical-align:middle; } .nowrap { white-space:nowrap; } /* CUSTOM FORM FIELDS */ - .vSelectMultipleField { vertical-align:top !important; } .vCheckboxField { border:none; } .vDateField, .vTimeField { margin-right:2px; } diff --git a/django/conf/admin_media/img/admin/arrow-down.gif b/django/contrib/admin/media/img/admin/arrow-down.gif similarity index 100% rename from django/conf/admin_media/img/admin/arrow-down.gif rename to django/contrib/admin/media/img/admin/arrow-down.gif diff --git a/django/conf/admin_media/img/admin/arrow-up.gif b/django/contrib/admin/media/img/admin/arrow-up.gif similarity index 100% rename from django/conf/admin_media/img/admin/arrow-up.gif rename to django/contrib/admin/media/img/admin/arrow-up.gif diff --git a/django/conf/admin_media/img/admin/changelist-bg.gif b/django/contrib/admin/media/img/admin/changelist-bg.gif similarity index 100% rename from django/conf/admin_media/img/admin/changelist-bg.gif rename to django/contrib/admin/media/img/admin/changelist-bg.gif diff --git a/django/conf/admin_media/img/admin/chooser-bg.gif b/django/contrib/admin/media/img/admin/chooser-bg.gif similarity index 100% rename from django/conf/admin_media/img/admin/chooser-bg.gif rename to django/contrib/admin/media/img/admin/chooser-bg.gif diff --git a/django/conf/admin_media/img/admin/chooser_stacked-bg.gif b/django/contrib/admin/media/img/admin/chooser_stacked-bg.gif similarity index 100% rename from django/conf/admin_media/img/admin/chooser_stacked-bg.gif rename to django/contrib/admin/media/img/admin/chooser_stacked-bg.gif diff --git a/django/conf/admin_media/img/admin/default-bg-reverse.gif b/django/contrib/admin/media/img/admin/default-bg-reverse.gif similarity index 100% rename from django/conf/admin_media/img/admin/default-bg-reverse.gif rename to django/contrib/admin/media/img/admin/default-bg-reverse.gif diff --git a/django/conf/admin_media/img/admin/default-bg.gif b/django/contrib/admin/media/img/admin/default-bg.gif similarity index 100% rename from django/conf/admin_media/img/admin/default-bg.gif rename to django/contrib/admin/media/img/admin/default-bg.gif diff --git a/django/conf/admin_media/img/admin/icon-no.gif b/django/contrib/admin/media/img/admin/icon-no.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon-no.gif rename to django/contrib/admin/media/img/admin/icon-no.gif diff --git a/django/conf/admin_media/img/admin/icon-yes.gif b/django/contrib/admin/media/img/admin/icon-yes.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon-yes.gif rename to django/contrib/admin/media/img/admin/icon-yes.gif diff --git a/django/conf/admin_media/img/admin/icon_addlink.gif b/django/contrib/admin/media/img/admin/icon_addlink.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_addlink.gif rename to django/contrib/admin/media/img/admin/icon_addlink.gif diff --git a/django/conf/admin_media/img/admin/icon_alert.gif b/django/contrib/admin/media/img/admin/icon_alert.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_alert.gif rename to django/contrib/admin/media/img/admin/icon_alert.gif diff --git a/django/conf/admin_media/img/admin/icon_calendar.gif b/django/contrib/admin/media/img/admin/icon_calendar.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_calendar.gif rename to django/contrib/admin/media/img/admin/icon_calendar.gif diff --git a/django/conf/admin_media/img/admin/icon_changelink.gif b/django/contrib/admin/media/img/admin/icon_changelink.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_changelink.gif rename to django/contrib/admin/media/img/admin/icon_changelink.gif diff --git a/django/conf/admin_media/img/admin/icon_clock.gif b/django/contrib/admin/media/img/admin/icon_clock.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_clock.gif rename to django/contrib/admin/media/img/admin/icon_clock.gif diff --git a/django/conf/admin_media/img/admin/icon_deletelink.gif b/django/contrib/admin/media/img/admin/icon_deletelink.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_deletelink.gif rename to django/contrib/admin/media/img/admin/icon_deletelink.gif diff --git a/django/conf/admin_media/img/admin/icon_error.gif b/django/contrib/admin/media/img/admin/icon_error.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_error.gif rename to django/contrib/admin/media/img/admin/icon_error.gif diff --git a/django/conf/admin_media/img/admin/icon_searchbox.png b/django/contrib/admin/media/img/admin/icon_searchbox.png similarity index 100% rename from django/conf/admin_media/img/admin/icon_searchbox.png rename to django/contrib/admin/media/img/admin/icon_searchbox.png diff --git a/django/conf/admin_media/img/admin/icon_success.gif b/django/contrib/admin/media/img/admin/icon_success.gif similarity index 100% rename from django/conf/admin_media/img/admin/icon_success.gif rename to django/contrib/admin/media/img/admin/icon_success.gif diff --git a/django/conf/admin_media/img/admin/nav-bg-grabber.gif b/django/contrib/admin/media/img/admin/nav-bg-grabber.gif similarity index 100% rename from django/conf/admin_media/img/admin/nav-bg-grabber.gif rename to django/contrib/admin/media/img/admin/nav-bg-grabber.gif diff --git a/django/conf/admin_media/img/admin/nav-bg-reverse.gif b/django/contrib/admin/media/img/admin/nav-bg-reverse.gif similarity index 100% rename from django/conf/admin_media/img/admin/nav-bg-reverse.gif rename to django/contrib/admin/media/img/admin/nav-bg-reverse.gif diff --git a/django/conf/admin_media/img/admin/nav-bg.gif b/django/contrib/admin/media/img/admin/nav-bg.gif similarity index 100% rename from django/conf/admin_media/img/admin/nav-bg.gif rename to django/contrib/admin/media/img/admin/nav-bg.gif diff --git a/django/conf/admin_media/img/admin/selector-add.gif b/django/contrib/admin/media/img/admin/selector-add.gif similarity index 100% rename from django/conf/admin_media/img/admin/selector-add.gif rename to django/contrib/admin/media/img/admin/selector-add.gif diff --git a/django/conf/admin_media/img/admin/selector-addall.gif b/django/contrib/admin/media/img/admin/selector-addall.gif similarity index 100% rename from django/conf/admin_media/img/admin/selector-addall.gif rename to django/contrib/admin/media/img/admin/selector-addall.gif diff --git a/django/conf/admin_media/img/admin/selector-remove.gif b/django/contrib/admin/media/img/admin/selector-remove.gif similarity index 100% rename from django/conf/admin_media/img/admin/selector-remove.gif rename to django/contrib/admin/media/img/admin/selector-remove.gif diff --git a/django/conf/admin_media/img/admin/selector-removeall.gif b/django/contrib/admin/media/img/admin/selector-removeall.gif similarity index 100% rename from django/conf/admin_media/img/admin/selector-removeall.gif rename to django/contrib/admin/media/img/admin/selector-removeall.gif diff --git a/django/conf/admin_media/img/admin/selector-search.gif b/django/contrib/admin/media/img/admin/selector-search.gif similarity index 100% rename from django/conf/admin_media/img/admin/selector-search.gif rename to django/contrib/admin/media/img/admin/selector-search.gif diff --git a/django/conf/admin_media/img/admin/selector_stacked-add.gif b/django/contrib/admin/media/img/admin/selector_stacked-add.gif similarity index 100% rename from django/conf/admin_media/img/admin/selector_stacked-add.gif rename to django/contrib/admin/media/img/admin/selector_stacked-add.gif diff --git a/django/conf/admin_media/img/admin/selector_stacked-remove.gif b/django/contrib/admin/media/img/admin/selector_stacked-remove.gif similarity index 100% rename from django/conf/admin_media/img/admin/selector_stacked-remove.gif rename to django/contrib/admin/media/img/admin/selector_stacked-remove.gif diff --git a/django/conf/admin_media/img/admin/tool-left.gif b/django/contrib/admin/media/img/admin/tool-left.gif similarity index 100% rename from django/conf/admin_media/img/admin/tool-left.gif rename to django/contrib/admin/media/img/admin/tool-left.gif diff --git a/django/conf/admin_media/img/admin/tool-left_over.gif b/django/contrib/admin/media/img/admin/tool-left_over.gif similarity index 100% rename from django/conf/admin_media/img/admin/tool-left_over.gif rename to django/contrib/admin/media/img/admin/tool-left_over.gif diff --git a/django/conf/admin_media/img/admin/tool-right.gif b/django/contrib/admin/media/img/admin/tool-right.gif similarity index 100% rename from django/conf/admin_media/img/admin/tool-right.gif rename to django/contrib/admin/media/img/admin/tool-right.gif diff --git a/django/conf/admin_media/img/admin/tool-right_over.gif b/django/contrib/admin/media/img/admin/tool-right_over.gif similarity index 100% rename from django/conf/admin_media/img/admin/tool-right_over.gif rename to django/contrib/admin/media/img/admin/tool-right_over.gif diff --git a/django/conf/admin_media/img/admin/tooltag-add.gif b/django/contrib/admin/media/img/admin/tooltag-add.gif similarity index 100% rename from django/conf/admin_media/img/admin/tooltag-add.gif rename to django/contrib/admin/media/img/admin/tooltag-add.gif diff --git a/django/conf/admin_media/img/admin/tooltag-add_over.gif b/django/contrib/admin/media/img/admin/tooltag-add_over.gif similarity index 100% rename from django/conf/admin_media/img/admin/tooltag-add_over.gif rename to django/contrib/admin/media/img/admin/tooltag-add_over.gif diff --git a/django/conf/admin_media/img/admin/tooltag-arrowright.gif b/django/contrib/admin/media/img/admin/tooltag-arrowright.gif similarity index 100% rename from django/conf/admin_media/img/admin/tooltag-arrowright.gif rename to django/contrib/admin/media/img/admin/tooltag-arrowright.gif diff --git a/django/conf/admin_media/img/admin/tooltag-arrowright_over.gif b/django/contrib/admin/media/img/admin/tooltag-arrowright_over.gif similarity index 100% rename from django/conf/admin_media/img/admin/tooltag-arrowright_over.gif rename to django/contrib/admin/media/img/admin/tooltag-arrowright_over.gif diff --git a/django/conf/admin_media/js/SelectBox.js b/django/contrib/admin/media/js/SelectBox.js similarity index 100% rename from django/conf/admin_media/js/SelectBox.js rename to django/contrib/admin/media/js/SelectBox.js diff --git a/django/conf/admin_media/js/SelectFilter.js b/django/contrib/admin/media/js/SelectFilter.js similarity index 100% rename from django/conf/admin_media/js/SelectFilter.js rename to django/contrib/admin/media/js/SelectFilter.js diff --git a/django/conf/admin_media/js/SelectFilter2.js b/django/contrib/admin/media/js/SelectFilter2.js similarity index 100% rename from django/conf/admin_media/js/SelectFilter2.js rename to django/contrib/admin/media/js/SelectFilter2.js diff --git a/django/conf/admin_media/js/admin/CollapsedFieldsets.js b/django/contrib/admin/media/js/admin/CollapsedFieldsets.js similarity index 100% rename from django/conf/admin_media/js/admin/CollapsedFieldsets.js rename to django/contrib/admin/media/js/admin/CollapsedFieldsets.js diff --git a/django/conf/admin_media/js/admin/DateTimeShortcuts.js b/django/contrib/admin/media/js/admin/DateTimeShortcuts.js similarity index 100% rename from django/conf/admin_media/js/admin/DateTimeShortcuts.js rename to django/contrib/admin/media/js/admin/DateTimeShortcuts.js diff --git a/django/conf/admin_media/js/admin/RelatedObjectLookups.js b/django/contrib/admin/media/js/admin/RelatedObjectLookups.js similarity index 100% rename from django/conf/admin_media/js/admin/RelatedObjectLookups.js rename to django/contrib/admin/media/js/admin/RelatedObjectLookups.js diff --git a/django/conf/admin_media/js/admin/ordering.js b/django/contrib/admin/media/js/admin/ordering.js similarity index 100% rename from django/conf/admin_media/js/admin/ordering.js rename to django/contrib/admin/media/js/admin/ordering.js diff --git a/django/conf/admin_media/js/calendar.js b/django/contrib/admin/media/js/calendar.js similarity index 100% rename from django/conf/admin_media/js/calendar.js rename to django/contrib/admin/media/js/calendar.js diff --git a/django/conf/admin_media/js/core.js b/django/contrib/admin/media/js/core.js similarity index 100% rename from django/conf/admin_media/js/core.js rename to django/contrib/admin/media/js/core.js diff --git a/django/conf/admin_media/js/dateparse.js b/django/contrib/admin/media/js/dateparse.js similarity index 100% rename from django/conf/admin_media/js/dateparse.js rename to django/contrib/admin/media/js/dateparse.js diff --git a/django/conf/admin_media/js/getElementsBySelector.js b/django/contrib/admin/media/js/getElementsBySelector.js similarity index 100% rename from django/conf/admin_media/js/getElementsBySelector.js rename to django/contrib/admin/media/js/getElementsBySelector.js diff --git a/django/conf/admin_media/js/timeparse.js b/django/contrib/admin/media/js/timeparse.js similarity index 100% rename from django/conf/admin_media/js/timeparse.js rename to django/contrib/admin/media/js/timeparse.js diff --git a/django/conf/admin_media/js/urlify.js b/django/contrib/admin/media/js/urlify.js similarity index 91% rename from django/conf/admin_media/js/urlify.js rename to django/contrib/admin/media/js/urlify.js index 4a453ed9eb..412130ad6f 100644 --- a/django/conf/admin_media/js/urlify.js +++ b/django/contrib/admin/media/js/urlify.js @@ -10,7 +10,7 @@ function URLify(s, num_chars) { s = s.replace(r, ''); s = s.replace(/[^\w\s]/g, ''); // remove unneeded chars s = s.replace(/^\s+|\s+$/g, ''); // trim leading/trailing spaces - s = s.replace(/\s+/g, '-'); // convert spaces to dashes + s = s.replace(/\s+/g, '_'); // convert spaces to underscores s = s.toLowerCase(); // convert to lowercase return s.substring(0, num_chars);// trim to first num_chars chars -} +} \ No newline at end of file diff --git a/django/contrib/admin/models/__init__.py b/django/contrib/admin/models/__init__.py new file mode 100644 index 0000000000..e11e2df093 --- /dev/null +++ b/django/contrib/admin/models/__init__.py @@ -0,0 +1 @@ +__all__ = ['admin'] diff --git a/django/contrib/admin/models/admin.py b/django/contrib/admin/models/admin.py new file mode 100644 index 0000000000..473642e24c --- /dev/null +++ b/django/contrib/admin/models/admin.py @@ -0,0 +1,48 @@ +from django.core import meta +from django.models import auth, core + +class LogEntry(meta.Model): + action_time = meta.DateTimeField(auto_now=True) + user = meta.ForeignKey(auth.User) + content_type = meta.ForeignKey(core.ContentType, blank=True, null=True) + object_id = meta.TextField(blank=True, null=True) + object_repr = meta.CharField(maxlength=200) + action_flag = meta.PositiveSmallIntegerField() + change_message = meta.TextField(blank=True) + class META: + module_name = 'log' + verbose_name_plural = 'log entries' + db_table = 'django_admin_log' + ordering = ('-action_time',) + module_constants = { + 'ADDITION': 1, + 'CHANGE': 2, + 'DELETION': 3, + } + + def __repr__(self): + return str(self.action_time) + + def is_addition(self): + return self.action_flag == ADDITION + + def is_change(self): + return self.action_flag == CHANGE + + def is_deletion(self): + return self.action_flag == DELETION + + def get_edited_object(self): + "Returns the edited object represented by this log entry" + return self.get_content_type().get_object_for_this_type(pk=self.object_id) + + def get_admin_url(self): + """ + Returns the admin URL to edit the object represented by this log entry. + This is relative to the Django admin index page. + """ + return "%s/%s/%s/" % (self.get_content_type().package, self.get_content_type().python_module_name, self.object_id) + + def _module_log_action(user_id, content_type_id, object_id, object_repr, action_flag, change_message=''): + e = LogEntry(None, None, user_id, content_type_id, object_id, object_repr[:200], action_flag, change_message) + e.save() diff --git a/django/conf/admin_templates/404.html b/django/contrib/admin/templates/admin/404.html similarity index 84% rename from django/conf/admin_templates/404.html rename to django/contrib/admin/templates/admin/404.html index 099466c4f1..9d7876ecbf 100644 --- a/django/conf/admin_templates/404.html +++ b/django/contrib/admin/templates/admin/404.html @@ -1,4 +1,4 @@ -{% extends "base_site" %} +{% extends "admin/base_site" %} {% block title %}Page not found{% endblock %} diff --git a/django/conf/admin_templates/500.html b/django/contrib/admin/templates/admin/500.html similarity index 92% rename from django/conf/admin_templates/500.html rename to django/contrib/admin/templates/admin/500.html index 124e4018a9..34a28ff0f5 100644 --- a/django/conf/admin_templates/500.html +++ b/django/contrib/admin/templates/admin/500.html @@ -1,4 +1,4 @@ -{% extends "base_site" %} +{% extends "admin/base_site" %} {% block breadcrumbs %}
{% endblock %} diff --git a/django/conf/admin_templates/base.html b/django/contrib/admin/templates/admin/base.html similarity index 100% rename from django/conf/admin_templates/base.html rename to django/contrib/admin/templates/admin/base.html diff --git a/django/conf/admin_templates/base_site.html b/django/contrib/admin/templates/admin/base_site.html similarity index 90% rename from django/conf/admin_templates/base_site.html rename to django/contrib/admin/templates/admin/base_site.html index 8e0874e401..7113c06d6c 100644 --- a/django/conf/admin_templates/base_site.html +++ b/django/contrib/admin/templates/admin/base_site.html @@ -1,4 +1,4 @@ -{% extends "base" %} +{% extends "admin/base" %} {% block title %}{{ title }} | Django site admin{% endblock %} diff --git a/django/conf/admin_templates/admin_change_form.html b/django/contrib/admin/templates/admin/change_form.html similarity index 98% rename from django/conf/admin_templates/admin_change_form.html rename to django/contrib/admin/templates/admin/change_form.html index e585f0e74b..5962819b56 100644 --- a/django/conf/admin_templates/admin_change_form.html +++ b/django/contrib/admin/templates/admin/change_form.html @@ -1,4 +1,4 @@ -{% extends "base_site" %} +{% extends "admin/base_site" %} {% load admin_modify %} {% load adminmedia %} {% block extrahead %} @@ -20,11 +20,14 @@ {% endif %}{% endif %}