server/java/renkan-web/src/main/webapp/WEB-INF/templates/fragment/spaceForm.html
author ymh <ymh.work@gmail.com>
Sun, 14 Jul 2024 22:00:08 +0200
changeset 666 9d6550026232
parent 316 242510015401
permissions -rw-r--r--
Added tag V00.13.04 for changeset 69d13e7dd286
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
123
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
<!DOCTYPE html>
224
0167b777ad15 remove deprecated warnings + fix date picker default langauge
ymh <ymh.work@gmail.com>
parents: 222
diff changeset
     2
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" th:lang="${#ctx.getLocale().toLanguageTag()}" >
150
5b62100b8562 - replace simple http authentication by form auth
ymh <ymh.work@gmail.com>
parents: 141
diff changeset
     3
  <head>
5b62100b8562 - replace simple http authentication by form auth
ymh <ymh.work@gmail.com>
parents: 141
diff changeset
     4
    <meta charset="utf-8"/>
5b62100b8562 - replace simple http authentication by form auth
ymh <ymh.work@gmail.com>
parents: 141
diff changeset
     5
    <title>Space form</title>
5b62100b8562 - replace simple http authentication by form auth
ymh <ymh.work@gmail.com>
parents: 141
diff changeset
     6
  </head>
123
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
<body>
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
     8
<div id="spaceForm" th:fragment="spaceFormFragment" >
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
     9
  <script type="text/javascript" th:inline="javascript">
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    10
    //<![CDATA[
222
6ac00231ee34 Manage users. (not passwords)
ymh <ymh.work@gmail.com>
parents: 150
diff changeset
    11
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    12
        function spaceFormSubmit() {
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    13
            return true;
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    14
            var errors = {};
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    15
            var valid = true;
128
93a1fbe6a848 Correct add space and improve space form validation message
ymh <ymh.work@gmail.com>
parents: 127
diff changeset
    16
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    17
            if(!$('#title').val()) {
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    18
                errors['title'] = /*[[#{renkan.error.title.empty}]]*/"renkan.error.title.empty";
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    19
                valid = false;
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    20
            }
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    21
            
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    22
            if($('#binConfig').val()) {
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    23
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    24
                var editor = ace.edit("binConfigDiv");
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    25
                var annotations = editor.getSession().getAnnotations();
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    26
                if(annotations.length>0) {
128
93a1fbe6a848 Correct add space and improve space form validation message
ymh <ymh.work@gmail.com>
parents: 127
diff changeset
    27
                    var error_message = /*[[#{renkan.error.bin_config.json}]]*/"renkan.error.bin_config.json";
93a1fbe6a848 Correct add space and improve space form validation message
ymh <ymh.work@gmail.com>
parents: 127
diff changeset
    28
                    errors['binConfigDiv'] = error_message + ". "+ annotations[0].type + ": (" +(annotations[0].row+1)+","+annotations[0].column+") " + annotations[0].text; 
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    29
                    valid = false;
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    30
                }
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    31
            }
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    32
            
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    33
            showformErrors(errors);
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    34
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    35
            return valid;
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    36
        }
222
6ac00231ee34 Manage users. (not passwords)
ymh <ymh.work@gmail.com>
parents: 150
diff changeset
    37
6ac00231ee34 Manage users. (not passwords)
ymh <ymh.work@gmail.com>
parents: 150
diff changeset
    38
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    39
        function _setBinConfigStatus(editor) {
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    40
            var annotations = editor.getSession().getAnnotations();
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    41
            if(annotations.length>0) {
224
0167b777ad15 remove deprecated warnings + fix date picker default langauge
ymh <ymh.work@gmail.com>
parents: 222
diff changeset
    42
                $('.binConfigButton').attr("disabled", "disabled");
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    43
            }
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    44
            else {
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    45
                $('.binConfigButton').removeAttr("disabled");
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    46
            }
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    47
        }
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    48
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    49
        $(function(){
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    50
            var tabSize = 2;
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    51
            var editor = ace.edit("binConfigDiv");
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    52
            editor.setTheme("ace/theme/xcode");
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    53
            editor.getSession().setMode("ace/mode/json");
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    54
            editor.getSession().setTabSize(tabSize);
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    55
            editor.getSession().setUseSoftTabs(true);
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    56
            _setBinConfigStatus(editor);
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    57
            editor.getSession().on('change', function(e) {
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    58
                $('#binConfig').val(editor.getValue());
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    59
            });
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    60
            editor.getSession().on('changeAnnotation', function() {
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    61
                _setBinConfigStatus(editor);
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    62
            });
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    63
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    64
            $('#binConfigFormatButton').click(function(){
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    65
                var jsonText = editor.getValue();
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    66
                try {
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    67
                    editor.setValue(formatJson(jsonText, tabSize),0);
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    68
                    editor.moveCursorTo(0,0);
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    69
                    editor.clearSelection();
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    70
                } catch (e) {
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    71
                    //do nothing
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    72
                }
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    73
            });
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    74
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    75
            $('#binConfigCompactButton').click(function(){
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    76
                var jsonText = editor.getValue();
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    77
                try {
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    78
                    editor.setValue(compactJson(jsonText),0);
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    79
                    editor.moveCursorTo(0,0);
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    80
                    editor.clearSelection();
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    81
                } catch (e) {
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    82
                    //do nothing
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    83
                }
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    84
            });
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    85
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    86
            $('#color').spectrum({
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    87
                showInput: true,
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    88
                showAlpha: true,
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    89
                showPalette: true,
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    90
                showInitial: true
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    91
            });
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    92
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    93
            $("#model-form").submit(function(e) {
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    94
                return spaceFormSubmit();
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    95
            });
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
    96
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    97
        });
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    98
    //]]>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
    99
  </script>
225
0fcce86e650c add validation for users
ymh <ymh.work@gmail.com>
parents: 224
diff changeset
   100
  <form action="#" th:object="${space}" th:action="@{/admin/spaces/save}" method="post" id="model-form">
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   101
     <fieldset class="form-fields">
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   102
       <input type="hidden" th:field="*{id}" th:if="*{id}" />
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   103
       <input type="hidden" th:field="*{binConfig}"/>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   104
       <div>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   105
         <label for="title" th:text="#{renkanAdmin.form.title}">Title: </label> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   106
         <input type="text" th:field="*{title}" />
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   107
         <div th:if="${#fields.hasErrors('title')}" th:errors="*{title}" class="form-error"></div>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   108
       </div> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   109
       <div>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   110
         <label for="uri" th:text="#{renkanAdmin.form.uri}">Uri: </label> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   111
         <input type="text" th:field="*{uri}" /> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   112
       </div> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   113
       <div>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   114
         <label for="description" th:text="#{renkanAdmin.form.description}">Description: </label> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   115
         <textarea th:field="*{description}"></textarea> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   116
       </div> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   117
       <div>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   118
         <label for="color" th:text="#{renkanAdmin.form.color}">Color: </label> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   119
         <input type="text" th:field="*{color}" /> 
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   120
       </div>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   121
       <div>
141
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   122
         <label for="binConfigContainer" th:text="#{renkanAdmin.form.space.bin_config}">Bin config: </label>
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   123
         <div id="binConfigContainer">
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   124
           <div id="binConfigButtonsDiv"><button type="button" id="binConfigFormatButton" th:text="#{renkanAdmin.form.space.format}" class="binConfigButton">Format</button><button type="button" id="binConfigCompactButton" th:text="#{renkanAdmin.form.space.compact}" class="binConfigButton">Compact</button></div>
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   125
           <div id="binConfigDiv" th:text="*{binConfig}"></div>
64af5273ac5e In the admin for space:
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   126
         </div>
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   127
         <div th:if="${#fields.hasErrors('binConfig')}" th:errors="*{binConfig}" class="form-error"></div>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   128
       </div> 
123
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   129
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   130
       <div class="submit"> 
127
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   131
         <button type="submit" name="save" th:text="#{renkanAdmin.form.space.submit}">Save</button>
906fed13c1e1 space admin edit.
ymh <ymh.work@gmail.com>
parents: 123
diff changeset
   132
         <!--button type="button" name="cancel" th:text="#{renkanAdmin.form.space.cancel}" th:onclick="location">Cancel</button-->
123
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   133
       </div> 
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   134
      
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   135
     </fieldset>  
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   136
  </form>
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   137
</div>
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   138
</body>
daa99448319d first step for site administration
ymh <ymh.work@gmail.com>
parents:
diff changeset
   139
</html>