From 390403ddb7bf1b23034c31704db277f972fa9b45 Mon Sep 17 00:00:00 2001
From: snipe <snipe@snipe.net>
Date: Tue, 6 Apr 2021 05:59:31 -0700
Subject: [PATCH] Fixed #9370 - listbox custom fields not decryoted on edit

Signed-off-by: snipe <snipe@snipe.net>
---
 app/Helpers/Helper.php                              | 5 ++---
 resources/views/models/custom_fields_form.blade.php | 4 ++--
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/app/Helpers/Helper.php b/app/Helpers/Helper.php
index a23777542..ff2fe9834 100644
--- a/app/Helpers/Helper.php
+++ b/app/Helpers/Helper.php
@@ -774,10 +774,9 @@ class Helper
 
 
     /**
-     * Gracefully handle decrypting the legacy data (encrypted via mcrypt) and use the new
-     * decryption method instead.
+     * Gracefully handle decrypting encrypted fields (custom fields, etc).
      *
-     * This is not currently used, but will be.
+     * @todo allow this to handle more than just strings (arrays, etc)
      *
      * @author A. Gianotto
      * @since 3.6
diff --git a/resources/views/models/custom_fields_form.blade.php b/resources/views/models/custom_fields_form.blade.php
index 41cfc759b..bb4d479fe 100644
--- a/resources/views/models/custom_fields_form.blade.php
+++ b/resources/views/models/custom_fields_form.blade.php
@@ -8,8 +8,8 @@
           @if ($field->element!='text')
               <!-- Listbox -->
               @if ($field->element=='listbox')
-                  {{ Form::select($field->db_column_name(), $field->formatFieldValuesAsArray(),
-                  Request::old($field->db_column_name(),(isset($item) ? $item->{$field->db_column_name()} : $field->defaultValue($model->id))), ['class'=>'format select2 form-control']) }}
+                   {{ Form::select($field->db_column_name(), $field->formatFieldValuesAsArray(),
+                  Request::old($field->db_column_name(),(isset($item) ? \App\Helpers\Helper::gracefulDecrypt($field, $item->{$field->db_column_name()}) : $field->defaultValue($model->id))), ['class'=>'format select2 form-control']) }}
 
               @elseif ($field->element=='textarea')
                       <textarea class="col-md-6 form-control" id="{{ $field->db_column_name() }}" name="{{ $field->db_column_name() }}">{{ Request::old($field->db_column_name(),(isset($item) ? $item->{$field->db_column_name()} : $field->defaultValue($model->id))) }}</textarea>
-- 
GitLab