Merge branch '1.0.x' into testing

This commit is contained in:
Evan Prodromou 2011-07-14 12:55:02 -04:00
commit e04ce18a93
24 changed files with 1131 additions and 66 deletions

View File

@ -63,7 +63,56 @@ class Memcached_DataObject extends Safe_DataObject
}
return $i;
}
function multiGet($cls, $keyCol, $keyVals)
{
$result = array_fill_keys($keyVals, null);
$toFetch = array();
foreach ($keyVals as $keyVal) {
$i = self::getcached($cls, $keyCol, $keyVal);
if ($i !== false) {
$result[$keyVal] = $i;
} else if (!empty($keyVal)) {
$toFetch[] = $keyVal;
}
}
if (count($toFetch) > 0) {
$i = DB_DataObject::factory($cls);
if (empty($i)) {
throw new Exception(_('Cannot instantiate class ' . $cls));
}
$i->whereAddIn($keyCol, $toFetch, $i->columnType($keyCol));
if ($i->find()) {
while ($i->fetch()) {
$copy = clone($i);
$copy->encache();
$result[$i->$keyCol] = $copy;
}
}
}
return new ArrayWrapper(array_values($result));
}
function columnType($columnName)
{
$keys = $this->table();
if (!array_key_exists($columnName, $keys)) {
throw new Exception('Unknown key column ' . $columnName . ' in ' . join(',', array_keys($keys)));
}
$def = $keys[$columnName];
if ($def & DB_DATAOBJECT_INT) {
return 'integer';
} else {
return 'string';
}
}
/**
* @fixme Should this return false on lookup fail to match staticGet?
*/

View File

@ -84,6 +84,11 @@ class Notice extends Memcached_DataObject
/* the code above is auto generated do not remove the tag below */
###END_AUTOCODE
function multiGet($kc, $kvs)
{
return Memcached_DataObject::multiGet('Notice', $kc, $kvs);
}
/* Notice types */
const LOCAL_PUBLIC = 1;
const REMOTE_OMB = 0;
@ -1856,7 +1861,11 @@ class Notice extends Memcached_DataObject
} else {
$idstr = $cache->get(Cache::key('notice:repeats:'.$this->id));
if ($idstr !== false) {
$ids = explode(',', $idstr);
if (empty($idstr)) {
$ids = array();
} else {
$ids = explode(',', $idstr);
}
} else {
$ids = $this->_repeatStreamDirect(100);
$cache->set(Cache::key('notice:repeats:'.$this->id), implode(',', $ids));
@ -1885,18 +1894,7 @@ class Notice extends Memcached_DataObject
$notice->limit(0, $limit);
}
$ids = array();
if ($notice->find()) {
while ($notice->fetch()) {
$ids[] = $notice->id;
}
}
$notice->free();
$notice = NULL;
return $ids;
return $notice->fetchAll('id');
}
function locationOptions($lat, $lon, $location_id, $location_ns, $profile = null)

View File

@ -95,14 +95,6 @@ class RawConversationNoticeStream extends NoticeStream
Notice::addWhereSinceId($notice, $since_id);
Notice::addWhereMaxId($notice, $max_id);
$ids = array();
if ($notice->find()) {
while ($notice->fetch()) {
$ids[] = $notice->id;
}
}
return $ids;
return $notice->fetchAll('id');
}
}

View File

@ -59,42 +59,6 @@ abstract class NoticeStream
static function getStreamByIds($ids)
{
$cache = Cache::instance();
if (!empty($cache)) {
$notices = array();
foreach ($ids as $id) {
$n = Notice::staticGet('id', $id);
if (!empty($n)) {
$notices[] = $n;
}
}
return new ArrayWrapper($notices);
} else {
$notice = new Notice();
if (empty($ids)) {
//if no IDs requested, just return the notice object
return $notice;
}
$notice->whereAdd('id in (' . implode(', ', $ids) . ')');
$notice->find();
$temp = array();
while ($notice->fetch()) {
$temp[$notice->id] = clone($notice);
}
$wrapped = array();
foreach ($ids as $id) {
if (array_key_exists($id, $temp)) {
$wrapped[] = $temp[$id];
}
}
return new ArrayWrapper($wrapped);
}
return Notice::multiGet('id', $ids);
}
}

View File

@ -75,13 +75,9 @@ Administration panel
As of StatusNet 0.9.0 there is a new administration panel that allows
you to configure Twitter bridge settings within StatusNet itself,
instead of having to specify them manually in your config.php. To enable
the administration panel, you will need to add it to the list of active
administration panels. You can do this via your config.php. E.g.:
instead of having to specify them manually in your config.php.
$config['admin']['panels'][] = 'twitter';
And to access it, you'll need to use a user with the "administrator"
To access it, you'll need to use a user with the "administrator"
role (see: scripts/userrole.php).
Sign in with Twitter

View File

@ -287,6 +287,18 @@ class TwitterBridgePlugin extends Plugin
return true;
}
/**
* If the plugin's installed, this should be accessible to admins
*/
function onAdminPanelCheck($name, &$isOK)
{
if ($name == 'twitter') {
$isOK = true;
return false;
}
return true;
}
/**
* Add a Twitter tab to the admin panel
*

View File

@ -0,0 +1,77 @@
/** theme: neo-blue
*
* @package StatusNet
* @author Samantha Doherty <sammy@status.net>
* @copyright 2011 StatusNet, Inc.
* @license http://creativecommons.org/licenses/by/3.0/ Creative Commons Attribution 3.0 Unported
* @link http://status.net/
*/
@media screen, projection, tv {
body {
background: #7e89a4;
}
#wrap {
border: none;
padding: 0px 10px;
box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.7);
-moz-box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.7);
-webkit-box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.7);
background: #fff;
}
#header {
padding-top: 7px;
}
address {
left: 5px;
}
#site_nav_global_primary {
top: 0px;
right: -14px;
padding-top: 5px;
height: 30px;
width: 986px;
box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.7);
-moz-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.7);
-webkit-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.7);
-webkit-border-bottom-left-radius: 4px;
-moz-border-radius-bottomleft: 4px;
border-bottom-left-radius: 4px;
-webkit-border-bottom-right-radius: 4px;
-moz-border-radius-bottomright: 4px;
border-bottom-right-radius: 4px;
z-index: 98;
border-bottom: 1px solid #fff;
border-left: 1px solid #516499;
border-right: 1px solid #516499;
}
#site_nav_global_primary a:hover {
background: #4c619c;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
#site_notice {
margin: 45px 0px 0px 0px;
background-color: #f2f2f2; /* XXX */
}
#core {
border-top: none;
margin-top: 3px;
}
.input_forms {
background-color: #fff;
left: 0px;
padding: 18px 0px 0px 0px;
}
}/*end of @media screen, projection, tv*/

View File

@ -0,0 +1,463 @@
/* mobile style */
body {
background-image: none;
min-width: 0;
}
#wrap {
margin: 0;
padding: 0;
min-width:0;
max-width:100%;
width: auto;
border: none;
}
#header {
width: 100%;
padding: 0;
}
address {
float:left;
margin: 0px;
width: auto;
left: 0px;
}
address img {
float: left;
background: #fff;
padding: 2px 2px 2px 6px;
}
address img + .fn {
display:block;
margin-top: 8px;
clear: left;
float: left;
color: #000;
margin-left: 6px;
}
#site_nav_global_primary {
margin:0;
width: 100%;
padding: 2px 0;
height: auto;
position:absolute;
top:0;
left:0;
font-size: 1em;
letter-spacing: 0em;
border-top: none;
-webkit-border-top-right-radius: 0px;
-moz-border-radius-topright: 0px;
border-top-right-radius: 0px;
height: 24px;
line-height: 16px;
}
#site_nav_global_primary li {
margin-left:0;
margin-right: 2px;
float:left;
font-size:0.9em;
padding: 2px 4px;
line-height: 1em;
height: auto;
}
#site_nav_global_primary li:last-child {
margin-right: 0px;
}
#site_nav_global_primary a {
padding: 2px 4px;
height: 20px;
}
#core {
width: 100%;
border-left: none;
border-right: none;
}
#aside_primary_wrapper {
background: none;
}
#content_wrapper {
right: 0px;
border: none;
}
#site_nav_local_views_wrapper {
right: 0px;
border: none;
}
#navtoggle {
float: right;
padding: 2px 6px;
text-decoration: none;
}
#site_nav_local_views {
height: auto;
font-size: 1em;
line-height: 2em;
margin-bottom: 0px;
padding: 10px 0px 10px 6px;
background: none;
left: 0px;
width: 100%;
display: none;
}
#site_nav_local_views h3 {
color: #333;
font-size: 1em;
margin-bottom: 0px;
background: none;
text-transform: none;
letter-spacing: 0;
padding-bottom: 0;
}
#site_nav_local_views li {
margin-right: 6px;
margin-bottom: 0px;
clear: left;
}
#site_nav_local_views li li {
float: left;
clear: none;
margin-bottom: 6px;
}
#site_nav_local_views a {
color: #fff;
text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.5);;
background: #364a84;
background: -moz-linear-gradient(top, #7b8dbb , #364a84);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7b8dbb), color-stop(100%,#364a84));
font-size: 0.9em;
width: auto;
}
#site_nav_local_views a:hover {
background: #7b8dbb;
background: -moz-linear-gradient(top, #364a84 , #7b8dbb);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#364a84), color-stop(100%,#7b8dbb));
}
#login #site_nav_local_views, #register #site_nav_local_views, #openidlogin #site_nav_local_views {
display: block;
margin-top: 25px;
}
#login #navtoggle, #register #navtoggle, #openidlogin #navtoggle {
display: none;
}
#login #site_nav_local_views li, #register #site_nav_local_views li, #openidlogin #site_nav_local_views li {
float: left;
clear: none;
margin-bottom: 6px;
}
#content {
width: 96%;
padding: 10px 2%;
margin: 0;
min-height: auto;
left: 0px;
}
#content h1 {
clear: left;
}
#footer {
width: auto;
margin: 0;
padding: 10px 4px 4px 4px;
}
.input_forms {
display: block;
width: 102%;
top: -10px;
left: -2%;
padding-left: 2%;
padding-right: 0;
}
#input_form_nav li a {
padding: 0px 4px 1px 4px;
margin-right: 6px;
}
.input_form {
clear: left;
width: 100%;
padding-bottom: 0px;
}
#input_form_status, #input_form_direct {
padding-bottom: 40px;
}
.form_notice_placeholder .placeholder {
width: 290px;
margin-bottom: 20px;
}
.form_notice {
float: left;
margin-left: 0px;
width: 300px;
padding: 4px 0px;
}
#form_notice-direct.form_notice {
padding-top: 0px;
}
.form_notice textarea, #form_notice-direct.form_notice textarea {
width: 292px;
height: 36px;
padding: 4px 4px 16px 4px;
font-size: 1em;
}
.form_notice .count {
position: absolute;
top: 44px;
left: 270px;
}
#form_notice-direct.form_notice .count {
top: 70px;
left: 270px;
}
.form_notice .error,
.form_notice .success,
.form_notice .notice-status {
width: 285px;
}
/*input type=file no good in
iPhone/iPod Touch, Android, Opera Mini Simulator
*/
.form_notice .notice_data-attach, .form_notice .notice_data-geo_wrap label, .form_notice .notice_data-geo_wrap input {
display:none;
}
.checkbox-wrapper {
margin-left: 0px;
clear: left;
float: left;
width: 200px;
z-index: 2;
}
.form_notice .checkbox-wrapper {
display: inline;
margin-left: 0px;
}
.checkbox-wrapper label.checkbox {
display: none !important;
}
.checkbox-wrapper #notice_private {
display: inline;
margin-top: 10px;
margin-left: 20px;
}
.form_notice .checkbox-wrapper #notice_private {
margin-left: 0px;
}
.checkbox-wrapper:before {
content: "Send privately?";
}
.input_form fieldset fieldset {
width: 300px;
}
.input_form .form_settings label {
display: inline;
}
.input_form .form_settings li input {
width: 292px;
}
.input_form .form_settings li textarea {
width: 292px;
}
.bookmarkform-thumbnail {
display: none;
}
#event-startdate, #event-starttime, #event-enddate, #event-endtime {
width: 120px;
margin-right: 12px;
}
.input_form .form_settings .submit {
font-size: 1em;
margin: 10px 0;
clear: left;
float: left;
}
.form_notice #notice_action-submit {
text-align: center;
left: 0px;
top: 100%;
margin-top: -45px;
width: 80px;
font-size: 1em;
}
#form_notice-direct.form_notice #notice_action-submit {
top: 148px;
}
.threaded-replies {
width: 80%;
margin-left: 59px;
}
#content .notice .threaded-replies .notice {
width: 95%;
}
.threaded-replies .placeholder {
margin: 10px;
width: 92%;
}
.threaded-replies .form_notice {
margin-bottom: 10px;
}
.threaded-replies .form_notice textarea {
width: 220px;
}
.threaded-replies .form_notice .count {
left: 205px;
top: 53px;
}
.threaded-replies .form_notice #notice_action-submit {
position: relative;
top: 0;
bottom: 0px;
left: 0;
margin-top: 10px;
}
.threaded-replies .form_notice .error,
.threaded-replies .form_notice .success,
.threaded-replies .form_notice .notice-status {
width: 210px;
}
.form_settings fieldset {
margin-bottom:7px;
}
.form_settings label {
width:auto;
display:block;
float:none;
text-align: left;
}
.form_settings .form_data li {
margin-bottom:7px;
}
.form_settings .form_data textarea,
.form_settings .form_data select,
.form_settings .form_data input {
margin-left:0;
display:block;
}
.form_settings .form_data textarea {
width:96.41%;
}
.form_settings .form_data label {
float:none;
}
.form_settings .form_data p.form_guide {
width:auto;
margin-left:0 !important;
}
#settings_design_color .form_data {
width: auto;
margin-right: 0;
}
.form_settings input.checkbox, .form_settings input.radio {
left: 0px;
}
.form_settings label.checkbox, .form_settings label.radio {
left: -10px;
}
.notice .addressees:before {
content: '\003E';
}
.user_in .notice div.entry-content {
max-width: 150px;
}
ul.qna-dummy {
width: 80%;
}
.qna-dummy-placeholder input {
width: 92%;
}
.question #qna-answer, .qna-full-question #qna-answer {
width: 220px;
}
.threaded-replies #answer-form fieldset {
width: 220px;
}
.threaded-replies #qna-answer-submit {
float: left;
clear: left;
position: relative;
top: 0;
bottom: 0px;
left: 0;
margin-top: 10px;
}
a.company_logo {
display: none !important;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1000 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
theme/neo-blue/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 990 B

1
theme/neo-blue/theme.ini Normal file
View File

@ -0,0 +1 @@
include=neo

View File

@ -0,0 +1,44 @@
/** theme: neo-light
*
* @package StatusNet
* @author Samantha Doherty <sammy@status.net>
* @copyright 2011 StatusNet, Inc.
* @license http://creativecommons.org/licenses/by/3.0/ Creative Commons Attribution 3.0 Unported
* @link http://status.net/
*/
@media screen, projection, tv {
body {
background: #f0f2f5;
}
#wrap {
background-color: #f0f2f5;
border: none;
}
#aside_primary_wrapper {
background-color: #fafafa;
}
#content_wrapper {
border-right: 1px solid #fff;
}
#site_nav_local_views_wrapper {
background-color: #fafafa;
border-right: 1px solid #fff;
}
#site_notice {
background: #fff;
}
.input_forms {
background-color: #fff;
left: 0px;
padding: 18px 0px 0px 0px;
}
}/*end of @media screen, projection, tv*/

View File

@ -0,0 +1,463 @@
/* mobile style */
body {
background-image: none;
min-width: 0;
}
#wrap {
margin: 0;
padding: 0;
min-width:0;
max-width:100%;
width: auto;
border: none;
}
#header {
width: 100%;
padding: 0;
}
address {
float:left;
margin: 0px;
width: auto;
left: 0px;
}
address img {
float: left;
background: #fff;
padding: 2px 2px 2px 6px;
}
address img + .fn {
display:block;
margin-top: 8px;
clear: left;
float: left;
color: #000;
margin-left: 6px;
}
#site_nav_global_primary {
margin:0;
width: 100%;
padding: 2px 0;
height: auto;
position:absolute;
top:0;
left:0;
font-size: 1em;
letter-spacing: 0em;
border-top: none;
-webkit-border-top-right-radius: 0px;
-moz-border-radius-topright: 0px;
border-top-right-radius: 0px;
height: 24px;
line-height: 16px;
}
#site_nav_global_primary li {
margin-left:0;
margin-right: 2px;
float:left;
font-size:0.9em;
padding: 2px 4px;
line-height: 1em;
height: auto;
}
#site_nav_global_primary li:last-child {
margin-right: 0px;
}
#site_nav_global_primary a {
padding: 2px 4px;
height: 20px;
}
#core {
width: 100%;
border-left: none;
border-right: none;
}
#aside_primary_wrapper {
background: none;
}
#content_wrapper {
right: 0px;
border: none;
}
#site_nav_local_views_wrapper {
right: 0px;
border: none;
}
#navtoggle {
float: right;
padding: 2px 6px;
text-decoration: none;
}
#site_nav_local_views {
height: auto;
font-size: 1em;
line-height: 2em;
margin-bottom: 0px;
padding: 10px 0px 10px 6px;
background: none;
left: 0px;
width: 100%;
display: none;
}
#site_nav_local_views h3 {
color: #333;
font-size: 1em;
margin-bottom: 0px;
background: none;
text-transform: none;
letter-spacing: 0;
padding-bottom: 0;
}
#site_nav_local_views li {
margin-right: 6px;
margin-bottom: 0px;
clear: left;
}
#site_nav_local_views li li {
float: left;
clear: none;
margin-bottom: 6px;
}
#site_nav_local_views a {
color: #fff;
text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.5);;
background: #364a84;
background: -moz-linear-gradient(top, #7b8dbb , #364a84);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7b8dbb), color-stop(100%,#364a84));
font-size: 0.9em;
width: auto;
}
#site_nav_local_views a:hover {
background: #7b8dbb;
background: -moz-linear-gradient(top, #364a84 , #7b8dbb);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#364a84), color-stop(100%,#7b8dbb));
}
#login #site_nav_local_views, #register #site_nav_local_views, #openidlogin #site_nav_local_views {
display: block;
margin-top: 25px;
}
#login #navtoggle, #register #navtoggle, #openidlogin #navtoggle {
display: none;
}
#login #site_nav_local_views li, #register #site_nav_local_views li, #openidlogin #site_nav_local_views li {
float: left;
clear: none;
margin-bottom: 6px;
}
#content {
width: 96%;
padding: 10px 2%;
margin: 0;
min-height: auto;
left: 0px;
}
#content h1 {
clear: left;
}
#footer {
width: auto;
margin: 0;
padding: 10px 4px 4px 4px;
}
.input_forms {
display: block;
width: 102%;
top: -10px;
left: -2%;
padding-left: 2%;
padding-right: 0;
}
#input_form_nav li a {
padding: 0px 4px 1px 4px;
margin-right: 6px;
}
.input_form {
clear: left;
width: 100%;
padding-bottom: 0px;
}
#input_form_status, #input_form_direct {
padding-bottom: 40px;
}
.form_notice_placeholder .placeholder {
width: 290px;
margin-bottom: 20px;
}
.form_notice {
float: left;
margin-left: 0px;
width: 300px;
padding: 4px 0px;
}
#form_notice-direct.form_notice {
padding-top: 0px;
}
.form_notice textarea, #form_notice-direct.form_notice textarea {
width: 292px;
height: 36px;
padding: 4px 4px 16px 4px;
font-size: 1em;
}
.form_notice .count {
position: absolute;
top: 44px;
left: 270px;
}
#form_notice-direct.form_notice .count {
top: 70px;
left: 270px;
}
.form_notice .error,
.form_notice .success,
.form_notice .notice-status {
width: 285px;
}
/*input type=file no good in
iPhone/iPod Touch, Android, Opera Mini Simulator
*/
.form_notice .notice_data-attach, .form_notice .notice_data-geo_wrap label, .form_notice .notice_data-geo_wrap input {
display:none;
}
.checkbox-wrapper {
margin-left: 0px;
clear: left;
float: left;
width: 200px;
z-index: 2;
}
.form_notice .checkbox-wrapper {
display: inline;
margin-left: 0px;
}
.checkbox-wrapper label.checkbox {
display: none !important;
}
.checkbox-wrapper #notice_private {
display: inline;
margin-top: 10px;
margin-left: 20px;
}
.form_notice .checkbox-wrapper #notice_private {
margin-left: 0px;
}
.checkbox-wrapper:before {
content: "Send privately?";
}
.input_form fieldset fieldset {
width: 300px;
}
.input_form .form_settings label {
display: inline;
}
.input_form .form_settings li input {
width: 292px;
}
.input_form .form_settings li textarea {
width: 292px;
}
.bookmarkform-thumbnail {
display: none;
}
#event-startdate, #event-starttime, #event-enddate, #event-endtime {
width: 120px;
margin-right: 12px;
}
.input_form .form_settings .submit {
font-size: 1em;
margin: 10px 0;
clear: left;
float: left;
}
.form_notice #notice_action-submit {
text-align: center;
left: 0px;
top: 100%;
margin-top: -45px;
width: 80px;
font-size: 1em;
}
#form_notice-direct.form_notice #notice_action-submit {
top: 148px;
}
.threaded-replies {
width: 80%;
margin-left: 59px;
}
#content .notice .threaded-replies .notice {
width: 95%;
}
.threaded-replies .placeholder {
margin: 10px;
width: 92%;
}
.threaded-replies .form_notice {
margin-bottom: 10px;
}
.threaded-replies .form_notice textarea {
width: 220px;
}
.threaded-replies .form_notice .count {
left: 205px;
top: 53px;
}
.threaded-replies .form_notice #notice_action-submit {
position: relative;
top: 0;
bottom: 0px;
left: 0;
margin-top: 10px;
}
.threaded-replies .form_notice .error,
.threaded-replies .form_notice .success,
.threaded-replies .form_notice .notice-status {
width: 210px;
}
.form_settings fieldset {
margin-bottom:7px;
}
.form_settings label {
width:auto;
display:block;
float:none;
text-align: left;
}
.form_settings .form_data li {
margin-bottom:7px;
}
.form_settings .form_data textarea,
.form_settings .form_data select,
.form_settings .form_data input {
margin-left:0;
display:block;
}
.form_settings .form_data textarea {
width:96.41%;
}
.form_settings .form_data label {
float:none;
}
.form_settings .form_data p.form_guide {
width:auto;
margin-left:0 !important;
}
#settings_design_color .form_data {
width: auto;
margin-right: 0;
}
.form_settings input.checkbox, .form_settings input.radio {
left: 0px;
}
.form_settings label.checkbox, .form_settings label.radio {
left: -10px;
}
.notice .addressees:before {
content: '\003E';
}
.user_in .notice div.entry-content {
max-width: 150px;
}
ul.qna-dummy {
width: 80%;
}
.qna-dummy-placeholder input {
width: 92%;
}
.question #qna-answer, .qna-full-question #qna-answer {
width: 220px;
}
.threaded-replies #answer-form fieldset {
width: 220px;
}
.threaded-replies #qna-answer-submit {
float: left;
clear: left;
position: relative;
top: 0;
bottom: 0px;
left: 0;
margin-top: 10px;
}
a.company_logo {
display: none !important;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1000 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
theme/neo-light/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 990 B

View File

@ -0,0 +1 @@
include=neo

View File

@ -895,7 +895,7 @@ ul.bookmark-tags a:hover {
#aside_primary #onboard_section {
background: #f2f2f2;
width: 198px;
width: 196px;
padding: 10px;
border-radius: 4px;
-moz-border-radius: 4px;

View File

@ -182,6 +182,7 @@ address img + .fn {
}
#footer {
width: auto;
margin: 0;
padding: 10px 4px 4px 4px;
}
@ -456,3 +457,7 @@ ul.qna-dummy {
left: 0;
margin-top: 10px;
}
a.company_logo {
display: none !important;
}