Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TableWidget with rowspan and with a column widget does not return widget value when reading #143

Closed
ldjebran opened this issue Mar 4, 2019 · 5 comments · Fixed by #144
Closed
Assignees
Labels

Comments

@ldjebran
Copy link

ldjebran commented Mar 4, 2019

We have the following table
screenshot from 2019-03-04 18-06-53

represented by HTML:

<table class="table table-fixed" id="inherited_puppetclasses_parameters">
  <thead class="white-header">
    <tr>
      <th class="col-md-2">Puppet Class</th>
      <th class="col-md-2">Name</th>
      <th class="col-md-2">Type</th>
      <th class="col-md-5">Value</th>
      <th class="col-md-1 ca">Omit&nbsp;<a rel="popover" data-content="Satellite will not send this parameter in classification output." data-trigger="focus" data-container="body" data-html="true" role="button" tabindex="-1" title="" icon="info" kind="pficon" data-original-title="Omit parameter from classification"><span class="pficon pficon-info "></span> </a></th>
    </tr>
  </thead>
  <tbody>
    <tr id="puppetclass_1_params[131]" class="fields ">
    <td rowspan="11" class="ellipsis" data-original-title="" title="">ui_test_variables</td>
    <td class="ellipsis param_name" data-original-title="" title="">
      ACciTfsWsE
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][131][value]" id="host_lookup_values_attributes_131_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="bQtwlIruhW" disabled="disabled">bQtwlIruhW</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="131" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][131][lookup_key_id]" id="host_lookup_values_attributes_131_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][131][id]" id="host_lookup_values_attributes_131_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][131][_destroy]" id="host_lookup_values_attributes_131__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[137]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      bCFwicupwh
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][137][value]" id="host_lookup_values_attributes_137_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="IyfUhVfPsj" disabled="disabled">IyfUhVfPsj</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="137" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][137][lookup_key_id]" id="host_lookup_values_attributes_137_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][137][id]" id="host_lookup_values_attributes_137_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][137][_destroy]" id="host_lookup_values_attributes_137__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[136]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      fWGrffqsjl
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][136][value]" id="host_lookup_values_attributes_136_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="XQeOslWkHN" disabled="disabled">XQeOslWkHN</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="136" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][136][lookup_key_id]" id="host_lookup_values_attributes_136_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][136][id]" id="host_lookup_values_attributes_136_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][136][_destroy]" id="host_lookup_values_attributes_136__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[133]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      HHnXgtCfhm
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][133][value]" id="host_lookup_values_attributes_133_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="aOhkJcFJbc" disabled="disabled">aOhkJcFJbc</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="133" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][133][lookup_key_id]" id="host_lookup_values_attributes_133_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][133][id]" id="host_lookup_values_attributes_133_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][133][_destroy]" id="host_lookup_values_attributes_133__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[138]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      HsGjlzptNa
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> YcOLqitWiz" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][138][value]" id="host_lookup_values_attributes_138_value" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" data-inherited-value="YcOLqitWiz" disabled="disabled">YcOLqitWiz</textarea>
        <span class="input-group-btn">
          
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="138" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][138][lookup_key_id]" id="host_lookup_values_attributes_138_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][138][id]" id="host_lookup_values_attributes_138_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][138][_destroy]" id="host_lookup_values_attributes_138__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[134]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      lCseXLWrnn
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][134][value]" id="host_lookup_values_attributes_134_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="GpHKjEYCyk" disabled="disabled">GpHKjEYCyk</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="134" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][134][lookup_key_id]" id="host_lookup_values_attributes_134_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][134][id]" id="host_lookup_values_attributes_134_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][134][_destroy]" id="host_lookup_values_attributes_134__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[135]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      qKSrbLYIMR
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][135][value]" id="host_lookup_values_attributes_135_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="HOkdAKMYLi" disabled="disabled">HOkdAKMYLi</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="135" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][135][lookup_key_id]" id="host_lookup_values_attributes_135_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][135][id]" id="host_lookup_values_attributes_135_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][135][_destroy]" id="host_lookup_values_attributes_135__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[130]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      rwzpjxWCZq
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][130][value]" id="host_lookup_values_attributes_130_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="UUKQUJWWGE" disabled="disabled">UUKQUJWWGE</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="130" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][130][lookup_key_id]" id="host_lookup_values_attributes_130_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][130][id]" id="host_lookup_values_attributes_130_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][130][_destroy]" id="host_lookup_values_attributes_130__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[132]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      tVfxWevBLs
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][132][value]" id="host_lookup_values_attributes_132_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="EOuTLIsCyh" disabled="disabled">EOuTLIsCyh</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="132" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][132][lookup_key_id]" id="host_lookup_values_attributes_132_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][132][id]" id="host_lookup_values_attributes_132_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][132][_destroy]" id="host_lookup_values_attributes_132__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[139]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      XyPNIQLNQe
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="<b>Description:</b> <br/>
     <b>Type:</b> string<br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> *****" data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][139][value]" id="host_lookup_values_attributes_139_value" rows="1" class="form-control no-stretch masked-input" data-property="value" data-hidden-value="*****" data-inherited-value="yEHnHEtKYD" disabled="disabled">yEHnHEtKYD</textarea>
        <span class="input-group-btn">
          <a title="" class="btn btn-default btn-md btn-hide " href="#" onclick="input_group_hidden(this); return false;" data-original-title="Unhide this value"><span class="fa fa-font "></span> </a><a title="" class="btn btn-default btn-md btn-hide hide" href="#" onclick="input_group_hidden(this); return false;" data-original-title="Hide this value"><span class="fa fa-font btn-strike"></span> </a>
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="139" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][139][lookup_key_id]" id="host_lookup_values_attributes_139_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][139][id]" id="host_lookup_values_attributes_139_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][139][_destroy]" id="host_lookup_values_attributes_139__destroy">
    </td>
  </tr>
  <tr id="puppetclass_1_params[129]" class="fields ">
    
    <td class="ellipsis param_name" data-original-title="" title="">
      ᕿ𘦣ರ𓎥焧釭珘ቫ싐옚珿뭀
    </td>
    <td class="ellipsis" data-original-title="" title="">
      Smart Variables
    </td>
    <td>
      <div class="input-group">
        <span class="input-group-addon"><a rel="popover" data-content="Optional parameter without value.<br/><i>Still managed by Satellite, the value will be empty.</i><br/><b>Description:</b> <br/>
     <b>Type:</b> <br/>
     <b>Matcher:</b> Default value<br/>
     <b>Inherited value:</b> " data-original-title="Original value info" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" title="" icon="info-circle" kind="fa"><span class="fa fa-info-circle "></span> </a></span><textarea name="host[lookup_values_attributes][129][value]" id="host_lookup_values_attributes_129_value" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled"></textarea>
        <span class="input-group-btn">
          
          <button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).parent().prev())" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button>
          <a title="" data-tag="override" class="btn btn-default btn-md btn-override " href="#" onclick="override_class_param(this); return false;" data-original-title="Override this value"><span class="fa fa-pencil-square-o "></span> </a><a title="" data-tag="remove" class="btn btn-default btn-md btn-override hide" href="#" onclick="override_class_param(this); return false;" data-original-title="Remove this override"><span class="fa fa-times "></span> </a>
        </span>
      </div>
      
    </td>
    <td class="ca">
      
      <input value="129" disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][129][lookup_key_id]" id="host_lookup_values_attributes_129_lookup_key_id"><input disabled="disabled" class="send_to_remove" type="hidden" name="host[lookup_values_attributes][129][id]" id="host_lookup_values_attributes_129_id"><input value="false" disabled="disabled" class="send_to_remove destroy" type="hidden" name="host[lookup_values_attributes][129][_destroy]" id="host_lookup_values_attributes_129__destroy">
    </td>
  </tr>

  </tbody>
</table>

        </fieldset>
        <br>
          <fieldset>
            <h2>Global Parameters</h2>
            <table class="table table-fixed" id="inherited_parameters">
  <thead class="white-header">
    <tr>
      <th class="col-md-3">Name</th>
      <th class="col-md-8">Value</th>
      <th class="col-md-1 ca">Actions</th>
    </tr>
  </thead>
    <tbody>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_CQBMvdHmYZ">CQBMvdHmYZ</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_5635807858" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">5635807858</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-CQBMvdHmYZ" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_TftzlIzBTM">TftzlIzBTM</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_xYBWElTbvT" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">xYBWElTbvT</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-TftzlIzBTM" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_XHgyZtomPq">XHgyZtomPq</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_1354098580" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">1354098580</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-XHgyZtomPq" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_enable-epel">enable-epel</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_false" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">false</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-enable-epel" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_enable-puppet5">enable-puppet5</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_true" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">true</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-enable-puppet5" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_shqpNRYZir">shqpNRYZir</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_wg4EMtndbA" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">wg4EMtndbA</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-shqpNRYZir" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_vQIhjhKSDa">vQIhjhKSDa</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_9523736671" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">9523736671</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-vQIhjhKSDa" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
        <tr class="">
          <td class="ellipsis" data-original-title="" title=""><span id="name_vyQITSFdoF">vyQITSFdoF</span>
          </td>
          <td><div class="input-group"><span class="input-group-addon"><a rel="popover" data-content="<b>Source:</b> global " data-original-title="" data-trigger="focus" data-container="body" data-html="true" data-placement="top" role="button" tabindex="-1" icon="info" kind="pficon"><span class="pficon pficon-info "></span> </a></span><textarea name="" id="value_d7zLt6PlDf" rows="1" class="form-control no-stretch" data-property="value" data-hidden-value="*****" disabled="disabled">d7zLt6PlDf</textarea><span class="input-group-btn"><button name="button" type="button" class="btn btn-default btn-md btn-fullscreen" onclick="set_fullscreen($(this).closest('.input-group').find('input,textarea'))" title="" data-original-title="Full screen"><span class="fa fa-expand "></span> </button></span></div></td>
          <td>
            <a title="" data-tag="override" class="btn btn-default" id="override-param-vyQITSFdoF" href="#" onclick="override_param(this); return false;" data-original-title="Override this value">Override</a>
          </td>
        </tr>
    </tbody>
</table>

            <h2>Host Parameters</h2>
            <div id="parameters">
  <table class="table" id="global_parameters_table">
    <thead class="white-header">
    <tr>
      <th class="col-md-3">Name</th>
      <th class="col-md-8">Value</th>
      <th class="col-md-1 ca">Actions</th>
    </tr>
    </thead>
    <tbody>
    </tbody>
  </table>

Code representation

puppet_class_parameters = Table(
            ".//table[@id='inherited_puppetclasses_parameters']",
            column_widgets={'Value': PuppetClassParameterValue()}
        )

where

class PuppetClassParameterValue(Widget):
	ROOT = ".//div[@class='input-group']"
		value = TextInput(
		    locator=".//*[self::textarea or self::input][contains(@name, 'lookup_values_attributes')]")
		override_button = Text(".//a[@data-tag='override']")
		remove_override_button = Text(".//a[@data-tag='remove']")
		hide_button = Text(".//a[contains(@class, 'btn-hide')]")

		...

		def read(self):
		    """Return smart variable widget values"""
		    return {'value': self.value.read(), 'overridden': self.overridden, 'hidden': self.hidden,
		            'hidden_value': self.hidden_value}
		...

The widget read value is returned only for the first row

view = self.navigate_to(self, 'Edit', entity_name=entity_name)
values = view.parameters.puppet_class_parameters.read()
for value in values:
    print(value)

The result is

{'Puppet Class': 'ui_test_variables', 'Name': 'ACciTfsWsE', 'Type': 'Smart Variables', 'Value': {'value': 'bQtwlIruhW', 'overridden': False, 'hidden': True, 'hidden_value': '*****'}, 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'bCFwicupwh', 'Type': 'Smart Variables', 'Value': 'IyfUhVfPsj', 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'fWGrffqsjl', 'Type': 'Smart Variables', 'Value': 'XQeOslWkHN', 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'HHnXgtCfhm', 'Type': 'Smart Variables', 'Value': 'aOhkJcFJbc', 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'HsGjlzptNa', 'Type': 'Smart Variables', 'Value': 'YcOLqitWiz', 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'lCseXLWrnn', 'Type': 'Smart Variables', 'Value': 'GpHKjEYCyk', 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'qKSrbLYIMR', 'Type': 'Smart Variables', 'Value': 'HOkdAKMYLi', 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'rwzpjxWCZq', 'Type': 'Smart Variables', 'Value': 'UUKQUJWWGE', 'Omit': ''}
{'Puppet Class': 'ui_test_variables', 'Name': 'tVfxWevBLs', 'Type': 'Smart Variables', 'Value': 'EOuTLIsCyh', 'Omit': ''}

Notice the Value of first element and other values, the first row read from the widget but the others read from the cell
doing some investigations on first row and other rows

print(view.parameters.puppet_class_parameters[0]['Value'].widget)
[OUT]> <airgun.views.host.PuppetClassParameterValue object at 0x7f8690618c50>
print(view.parameters.puppet_class_parameters[1]['Value'].widget)
[OUT]> None
print(view.parameters.puppet_class_parameters[0]['Value'].column_name)
[OUT]> Value
print(view.parameters.puppet_class_parameters[1]['Value'].column_name)
[OUT]> Type
# Notice the wrong column name
print(view.parameters.puppet_class_parameters[0]['Value'].position)
[OUT]> 3
print(view.parameters.puppet_class_parameters[1]['Value'].position)
[OUT]> 2
# Notice the wrong position (The position is right but not in the logic on the table handle rowspan and should be 3 any way)

seems there is some problem with finding the right column when the row is in the rowspan area and when the first <TD> is missing .

@ldjebran
Copy link
Author

ldjebran commented Mar 4, 2019

@izapolsk please take a look, this is the case we debugged together today, please ping me if more information is needed .

@izapolsk
Copy link
Contributor

izapolsk commented Mar 6, 2019

@ldjebran, please test. it should fix your issue - #144

@izapolsk
Copy link
Contributor

izapolsk commented Mar 6, 2019

in addition, I put in a new ticket to refactor Table widget - #145.

@mshriver
Copy link
Collaborator

mshriver commented Mar 8, 2019

@ldjebran
Copy link
Author

@izapolsk @mshriver many thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants