Skip to content

Commit

Permalink
Editing coordinates now possible.
Browse files Browse the repository at this point in the history
  • Loading branch information
Jan Dankert committed Apr 22, 2024
1 parent 1e8874f commit e922b1f
Show file tree
Hide file tree
Showing 5 changed files with 196 additions and 139 deletions.
16 changes: 13 additions & 3 deletions modules/cms/action/PageelementAction.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -323,11 +323,12 @@ protected function editLongtext()


protected function editData() {
$this->editText();
$this->editText();
}

protected function editCoord() {
$this->editText();
$this->setTemplateVar('lat' ,$this->value->number >> 32 );
$this->setTemplateVar('long',$this->value->number << 32 >> 32);
}


Expand All @@ -353,7 +354,16 @@ protected function saveData()

protected function saveCoord()
{
$this->saveText();
$value = new Value();
$value->contentid = $this->pageContent->contentId;

if ( $linkTo = $this->request->getNumber('linkobjectid') )
$value->linkToObjectId = $linkTo;
else {
$value->number = $this->request->getFloat('lat') << 32 | $this->request->getFloat('long');
}

$this->afterSave($value);
}

/**
Expand Down
15 changes: 15 additions & 0 deletions modules/cms/action/RequestParams.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,21 @@ public function getNumber( $varName )
}




/**
* Ermittelt einen Float-Wert aus dem Request.<br>
*
* @param string $varName name of parameter
* @return Float
*/
public function getFloat( $varName )
{
if ( ! $this->hasKey($varName ))
return null;

return floatval($this->getValue( $varName ));
}
/**
* Checks if the parameter value is true.
*
Expand Down
188 changes: 106 additions & 82 deletions modules/cms/ui/themes/default/html/views/pageelement/value.php
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,30 @@
</div>
</section>
<?php } ?>
<?php $if4=($type=='coord'); if($if4) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?>
<i class="<?php echo O::escapeHtml('or-image-icon or-image-icon--node-closed or-collapsible--on-closed') ?>"><?php echo O::escapeHtml('') ?></i>
<i class="<?php echo O::escapeHtml('or-image-icon or-image-icon--node-open or-collapsible--on-open') ?>"><?php echo O::escapeHtml('') ?></i>
<span><?php echo O::escapeHtml(''.@O::lang('coordinates').'') ?></span>
</h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<section class="<?php echo O::escapeHtml('or-fieldset') ?>"><?php echo O::escapeHtml('') ?>
<h3 class="<?php echo O::escapeHtml('or-fieldset-label') ?>"><?php echo O::escapeHtml('') ?></h3>
<div class="<?php echo O::escapeHtml('or-fieldset-value') ?>"><?php echo O::escapeHtml('') ?>
<label class="<?php echo O::escapeHtml('or-form-row or-form-input') ?>"><?php echo O::escapeHtml('') ?>
<span class="<?php echo O::escapeHtml('or-form-label') ?>"><?php echo O::escapeHtml('latitude') ?></span>
<input name="<?php echo O::escapeHtml('lat') ?>" type="<?php echo O::escapeHtml('number') ?>" maxlength="<?php echo O::escapeHtml('256') ?>" value="<?php echo O::escapeHtml(''.@$lat.'') ?>" class="<?php echo O::escapeHtml('or-input') ?>" /><?php echo O::escapeHtml('') ?>
</label>
<label class="<?php echo O::escapeHtml('or-form-row or-form-input') ?>"><?php echo O::escapeHtml('') ?>
<span class="<?php echo O::escapeHtml('or-form-label') ?>"><?php echo O::escapeHtml('longitude') ?></span>
<input name="<?php echo O::escapeHtml('long') ?>" type="<?php echo O::escapeHtml('number') ?>" maxlength="<?php echo O::escapeHtml('256') ?>" value="<?php echo O::escapeHtml(''.@$long.'') ?>" class="<?php echo O::escapeHtml('or-input') ?>" /><?php echo O::escapeHtml('') ?>
</label>
</div>
</section>
</div>
</section>
<?php } ?>
<?php $if4=($type=='text'); if($if4) { ?>
<section class="<?php echo O::escapeHtml('or-fieldset') ?>"><?php echo O::escapeHtml('') ?>
<h3 class="<?php echo O::escapeHtml('or-fieldset-label') ?>"><?php echo O::escapeHtml('') ?></h3>
Expand Down Expand Up @@ -170,95 +194,95 @@
</div>
</section>
<?php } ?>
</div>
</section>
<?php $if3=($type=='list'); if($if3) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<select name="<?php echo O::escapeHtml('linkobjectid') ?>" size="<?php echo O::escapeHtml('1') ?>" class="<?php echo O::escapeHtml('or-input') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach($objects as $_key=>$_value) { ?>
<option value="<?php echo O::escapeHtml(''.@$_key.'') ?>" <?php if($_key==$linkobjectid){ ?>selected="<?php echo O::escapeHtml('selected') ?>"<?php } ?>><?php echo O::escapeHtml(''.@$_value.'') ?></option>
<?php } ?>
</select>
</div>
</div>
</section>
<?php } ?>
<?php $if3=($type=='insert'); if($if3) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<select name="<?php echo O::escapeHtml('linkobjectid') ?>" size="<?php echo O::escapeHtml('1') ?>" class="<?php echo O::escapeHtml('or-input') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach($objects as $_key=>$_value) { ?>
<option value="<?php echo O::escapeHtml(''.@$_key.'') ?>" <?php if($_key==$linkobjectid){ ?>selected="<?php echo O::escapeHtml('selected') ?>"<?php } ?>><?php echo O::escapeHtml(''.@$_value.'') ?></option>
<?php } ?>
</select>
</div>
</div>
</section>
<?php } ?>
<?php $if3=($type=='checkbox'); if($if3) { ?>
<section class="<?php echo O::escapeHtml('or-fieldset') ?>"><?php echo O::escapeHtml('') ?>
<h3 class="<?php echo O::escapeHtml('or-fieldset-label') ?>"><?php echo O::escapeHtml('') ?></h3>
<div class="<?php echo O::escapeHtml('or-fieldset-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<input type="<?php echo O::escapeHtml('checkbox') ?>" name="<?php echo O::escapeHtml('number') ?>" value="<?php echo O::escapeHtml('1') ?>" <?php if(@$number){ ?>checked="<?php echo O::escapeHtml('checked') ?>"<?php } ?> class="<?php echo O::escapeHtml('or-form-checkbox') ?>" /><?php echo O::escapeHtml('') ?>
</div>
</div>
</section>
<?php } ?>
<?php $if3=($type=='number'); if($if3) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<input type="<?php echo O::escapeHtml('hidden') ?>" name="<?php echo O::escapeHtml('decimals') ?>" value="<?php echo O::escapeHtml('decimals') ?>" /><?php echo O::escapeHtml('') ?>
<input name="<?php echo O::escapeHtml('number') ?>" type="<?php echo O::escapeHtml('number') ?>" maxlength="<?php echo O::escapeHtml('20') ?>" value="<?php echo O::escapeHtml(''.@$number.'') ?>" class="<?php echo O::escapeHtml('or-input') ?>" /><?php echo O::escapeHtml('') ?>
</div>
</div>
</section>
<?php } ?>
<?php $if3=($type=='select'); if($if3) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<select name="<?php echo O::escapeHtml('text') ?>" size="<?php echo O::escapeHtml('1') ?>" class="<?php echo O::escapeHtml('or-input') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach($items as $_key=>$_value) { ?>
<option value="<?php echo O::escapeHtml(''.@$_key.'') ?>" <?php if($_key==$text){ ?>selected="<?php echo O::escapeHtml('selected') ?>"<?php } ?>><?php echo O::escapeHtml(''.@$_value.'') ?></option>
<?php } ?>
</select>
</div>
</div>
</section>
<?php } ?>
<?php $if3=($type=='longtext'); if($if3) { ?>
<?php $if4=($editor=='wiki'); if($if4) { ?>
<?php $if5=(isset($languages)); if($if5) { ?>
<?php $if4=($type=='list'); if($if4) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?>
<i class="<?php echo O::escapeHtml('or-image-icon or-image-icon--node-closed or-collapsible--on-closed') ?>"><?php echo O::escapeHtml('') ?></i>
<i class="<?php echo O::escapeHtml('or-image-icon or-image-icon--node-open or-collapsible--on-open') ?>"><?php echo O::escapeHtml('') ?></i>
<span><?php echo O::escapeHtml(''.@O::lang('editor_show_language').'') ?></span>
</h2>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach((array)@$languages as $languageid=>$languagename) { ?>
<input type="<?php echo O::escapeHtml('radio') ?>" name="<?php echo O::escapeHtml('otherlanguageid') ?>" value="<?php echo O::escapeHtml(''.@$languageid.'') ?>" <?php if(@$otherlanguageid=='${languageid}'){ ?>checked="<?php echo O::escapeHtml('checked') ?>"<?php } ?> class="<?php echo O::escapeHtml('or-form-radio') ?>" /><?php echo O::escapeHtml('') ?>
<label class="<?php echo O::escapeHtml('or-label') ?>"><?php echo O::escapeHtml('') ?>
<span><?php echo O::escapeHtml(''.@$languagename.'') ?></span>
</label>
<br /><?php echo O::escapeHtml('') ?>
<?php } ?>
<select name="<?php echo O::escapeHtml('linkobjectid') ?>" size="<?php echo O::escapeHtml('1') ?>" class="<?php echo O::escapeHtml('or-input') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach($objects as $_key=>$_value) { ?>
<option value="<?php echo O::escapeHtml(''.@$_key.'') ?>" <?php if($_key==$linkobjectid){ ?>selected="<?php echo O::escapeHtml('selected') ?>"<?php } ?>><?php echo O::escapeHtml(''.@$_value.'') ?></option>
<?php } ?>
</select>
</div>
</div>
</section>
<?php } ?>
<?php } ?>
<?php } ?>
<?php $if4=($type=='insert'); if($if4) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<select name="<?php echo O::escapeHtml('linkobjectid') ?>" size="<?php echo O::escapeHtml('1') ?>" class="<?php echo O::escapeHtml('or-input') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach($objects as $_key=>$_value) { ?>
<option value="<?php echo O::escapeHtml(''.@$_key.'') ?>" <?php if($_key==$linkobjectid){ ?>selected="<?php echo O::escapeHtml('selected') ?>"<?php } ?>><?php echo O::escapeHtml(''.@$_value.'') ?></option>
<?php } ?>
</select>
</div>
</div>
</section>
<?php } ?>
<?php $if4=($type=='checkbox'); if($if4) { ?>
<section class="<?php echo O::escapeHtml('or-fieldset') ?>"><?php echo O::escapeHtml('') ?>
<h3 class="<?php echo O::escapeHtml('or-fieldset-label') ?>"><?php echo O::escapeHtml('') ?></h3>
<div class="<?php echo O::escapeHtml('or-fieldset-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<input type="<?php echo O::escapeHtml('checkbox') ?>" name="<?php echo O::escapeHtml('number') ?>" value="<?php echo O::escapeHtml('1') ?>" <?php if(@$number){ ?>checked="<?php echo O::escapeHtml('checked') ?>"<?php } ?> class="<?php echo O::escapeHtml('or-form-checkbox') ?>" /><?php echo O::escapeHtml('') ?>
</div>
</div>
</section>
<?php } ?>
<?php $if4=($type=='number'); if($if4) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<input type="<?php echo O::escapeHtml('hidden') ?>" name="<?php echo O::escapeHtml('decimals') ?>" value="<?php echo O::escapeHtml('decimals') ?>" /><?php echo O::escapeHtml('') ?>
<input name="<?php echo O::escapeHtml('number') ?>" type="<?php echo O::escapeHtml('number') ?>" maxlength="<?php echo O::escapeHtml('20') ?>" value="<?php echo O::escapeHtml(''.@$number.'') ?>" class="<?php echo O::escapeHtml('or-input') ?>" /><?php echo O::escapeHtml('') ?>
</div>
</div>
</section>
<?php } ?>
<?php $if4=($type=='select'); if($if4) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?></h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<select name="<?php echo O::escapeHtml('text') ?>" size="<?php echo O::escapeHtml('1') ?>" class="<?php echo O::escapeHtml('or-input') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach($items as $_key=>$_value) { ?>
<option value="<?php echo O::escapeHtml(''.@$_key.'') ?>" <?php if($_key==$text){ ?>selected="<?php echo O::escapeHtml('selected') ?>"<?php } ?>><?php echo O::escapeHtml(''.@$_value.'') ?></option>
<?php } ?>
</select>
</div>
</div>
</section>
<?php } ?>
<?php $if4=($type=='longtext'); if($if4) { ?>
<?php $if5=($editor=='wiki'); if($if5) { ?>
<?php $if6=(isset($languages)); if($if6) { ?>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?>
<i class="<?php echo O::escapeHtml('or-image-icon or-image-icon--node-closed or-collapsible--on-closed') ?>"><?php echo O::escapeHtml('') ?></i>
<i class="<?php echo O::escapeHtml('or-image-icon or-image-icon--node-open or-collapsible--on-open') ?>"><?php echo O::escapeHtml('') ?></i>
<span><?php echo O::escapeHtml(''.@O::lang('editor_show_language').'') ?></span>
</h2>
<div class="<?php echo O::escapeHtml('or-collapsible-value or-group-value') ?>"><?php echo O::escapeHtml('') ?>
<div class="<?php echo O::escapeHtml('or-') ?>"><?php echo O::escapeHtml('') ?>
<?php foreach((array)@$languages as $languageid=>$languagename) { ?>
<input type="<?php echo O::escapeHtml('radio') ?>" name="<?php echo O::escapeHtml('otherlanguageid') ?>" value="<?php echo O::escapeHtml(''.@$languageid.'') ?>" <?php if(@$otherlanguageid=='${languageid}'){ ?>checked="<?php echo O::escapeHtml('checked') ?>"<?php } ?> class="<?php echo O::escapeHtml('or-form-radio') ?>" /><?php echo O::escapeHtml('') ?>
<label class="<?php echo O::escapeHtml('or-label') ?>"><?php echo O::escapeHtml('') ?>
<span><?php echo O::escapeHtml(''.@$languagename.'') ?></span>
</label>
<br /><?php echo O::escapeHtml('') ?>
<?php } ?>
</div>
</div>
</section>
<?php } ?>
<?php } ?>
<?php } ?>
</div>
</section>
<section class="<?php echo O::escapeHtml('or-group or-collapsible or-collapsible--is-open or-collapsible--is-visible or-collapsible--show') ?>"><?php echo O::escapeHtml('') ?>
<h2 class="<?php echo O::escapeHtml('or-collapsible-title or-group-title or-collapsible-act-switch') ?>"><?php echo O::escapeHtml('') ?>
<i class="<?php echo O::escapeHtml('or-image-icon or-image-icon--node-closed or-collapsible--on-closed') ?>"><?php echo O::escapeHtml('') ?></i>
Expand Down
Loading

0 comments on commit e922b1f

Please sign in to comment.