From 405dae87b12d3177a628172c1e91295c09cbb505 Mon Sep 17 00:00:00 2001 From: Zach Copley Date: Wed, 16 Mar 2011 10:58:13 -0700 Subject: [PATCH] Extended profile - fix for unix epoc getting displayed for empty birthday and some validation issues --- .../ExtendedProfile/extendedprofilewidget.php | 44 ++++++++++--------- .../profiledetailsettingsaction.php | 3 +- 2 files changed, 25 insertions(+), 22 deletions(-) diff --git a/plugins/ExtendedProfile/extendedprofilewidget.php b/plugins/ExtendedProfile/extendedprofilewidget.php index 80d88a9599..b507713f06 100644 --- a/plugins/ExtendedProfile/extendedprofilewidget.php +++ b/plugins/ExtendedProfile/extendedprofilewidget.php @@ -395,25 +395,28 @@ class ExtendedProfileWidget extends Form { $this->out->elementStart('div', 'education-item'); $this->out->element('div', 'label', _m('Institution')); - $this->out->element('div', 'field', $field['school']); - $this->out->element('div', 'label', _m('Degree')); - $this->out->element('div', 'field', $field['degree']); - $this->out->element('div', 'label', _m('Description')); - $this->out->element('div', 'field', $field['description']); - $this->out->element('div', 'label', _m('Start')); - $this->out->element( - 'div', - array('class' => 'field date'), - date('j M Y', strtotime($field['start']) - ) - ); - $this->out->element('div', 'label', _m('End')); - $this->out->element( - 'div', - array('class' => 'field date'), - date('j M Y', strtotime($field['end']) - ) - ); + if (!empty($field['school'])) { + + $this->out->element('div', 'field', $field['school']); + $this->out->element('div', 'label', _m('Degree')); + $this->out->element('div', 'field', $field['degree']); + $this->out->element('div', 'label', _m('Description')); + $this->out->element('div', 'field', $field['description']); + $this->out->element('div', 'label', _m('Start')); + $this->out->element( + 'div', + array('class' => 'field date'), + date('j M Y', strtotime($field['start']) + ) + ); + $this->out->element('div', 'label', _m('End')); + $this->out->element( + 'div', + array('class' => 'field date'), + date('j M Y', strtotime($field['end']) + ) + ); + } $this->out->elementEnd('div'); } @@ -564,10 +567,11 @@ class ExtendedProfileWidget extends Form $out->input($id, null, $this->ext->getTextValue($name)); break; case 'date': + $value = $this->ext->getDateValue($name); $out->input( $id, null, - date('j M Y', strtotime($this->ext->getDateValue($name))) + empty($value) ? null : date('j M Y', strtotime($value)) ); break; case 'person': diff --git a/plugins/ExtendedProfile/profiledetailsettingsaction.php b/plugins/ExtendedProfile/profiledetailsettingsaction.php index 4d716ec32c..4a2045cefb 100644 --- a/plugins/ExtendedProfile/profiledetailsettingsaction.php +++ b/plugins/ExtendedProfile/profiledetailsettingsaction.php @@ -260,8 +260,7 @@ class ProfileDetailSettingsAction extends ProfileSettingsAction $this->removeAll($user, 'website'); $i = 0; foreach($sites as $site) { - - if (!Validate::uri( + if (!empty($site['value']) && !Validate::uri( $site['value'], array('allowed_schemes' => array('http', 'https'))) ) {