UOCL-315: Adding Tax ID UI element
This commit is contained in:
@@ -52,16 +52,18 @@
|
|||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Component id="jLabel1" min="-2" max="-2" attributes="0"/>
|
<Component id="jLabel1" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="jLabel6" alignment="0" min="-2" max="-2" attributes="0"/>
|
<Component id="passwordLabel" alignment="0" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="taxIdLabel" alignment="0" min="-2" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
|
<Component id="taxIdTextField" min="-2" pref="180" max="-2" attributes="0"/>
|
||||||
<Component id="jButton1" min="-2" max="-2" attributes="0"/>
|
<Component id="jButton1" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="m_jName" min="-2" pref="180" max="-2" attributes="0"/>
|
<Component id="m_jName" min="-2" pref="180" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
</Group>
|
</Group>
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace pref="50" max="32767" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
</Group>
|
</Group>
|
||||||
</DimensionLayout>
|
</DimensionLayout>
|
||||||
@@ -75,10 +77,15 @@
|
|||||||
</Group>
|
</Group>
|
||||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="2" attributes="0">
|
<Group type="103" groupAlignment="2" attributes="0">
|
||||||
<Component id="jLabel6" alignment="2" min="-2" max="-2" attributes="0"/>
|
<Component id="passwordLabel" alignment="2" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="jButton1" alignment="2" min="-2" max="-2" attributes="0"/>
|
<Component id="jButton1" alignment="2" min="-2" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Group type="103" groupAlignment="3" attributes="0">
|
||||||
|
<Component id="taxIdTextField" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="taxIdLabel" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
|
</Group>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="2" attributes="0">
|
<Group type="103" groupAlignment="2" attributes="0">
|
||||||
<Component id="jLblCardID" alignment="2" min="-2" max="-2" attributes="0"/>
|
<Component id="jLblCardID" alignment="2" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="m_jcard" alignment="2" min="-2" max="-2" attributes="0"/>
|
<Component id="m_jcard" alignment="2" min="-2" max="-2" attributes="0"/>
|
||||||
@@ -99,7 +106,7 @@
|
|||||||
<Component id="m_jImage" min="-2" max="-2" attributes="0"/>
|
<Component id="m_jImage" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="jLabel4" min="-2" max="-2" attributes="0"/>
|
<Component id="jLabel4" min="-2" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace max="32767" attributes="0"/>
|
<EmptySpace pref="110" max="32767" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
</Group>
|
</Group>
|
||||||
</DimensionLayout>
|
</DimensionLayout>
|
||||||
@@ -246,8 +253,11 @@
|
|||||||
</Property>
|
</Property>
|
||||||
</Properties>
|
</Properties>
|
||||||
</Component>
|
</Component>
|
||||||
<Component class="com.alee.laf.combobox.WebComboBox" name="webCBSecurity">
|
<Component class="javax.swing.JComboBox" name="webCBSecurity">
|
||||||
<Properties>
|
<Properties>
|
||||||
|
<Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
|
||||||
|
<Font name="Arial" size="14" style="0"/>
|
||||||
|
</Property>
|
||||||
<Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor">
|
<Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor">
|
||||||
<StringArray count="3">
|
<StringArray count="3">
|
||||||
<StringItem index="0" value="Generate new key"/>
|
<StringItem index="0" value="Generate new key"/>
|
||||||
@@ -261,9 +271,6 @@
|
|||||||
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
<ResourceString bundle="pos_messages.properties" key="tooltip.peoplesecurity" replaceFormat="AppLocal.getIntString("tooltip.peoplesecurity")"/>
|
<ResourceString bundle="pos_messages.properties" key="tooltip.peoplesecurity" replaceFormat="AppLocal.getIntString("tooltip.peoplesecurity")"/>
|
||||||
</Property>
|
</Property>
|
||||||
<Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
|
|
||||||
<Font name="Arial" size="14" style="0"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
||||||
<Dimension value="[140, 45]"/>
|
<Dimension value="[140, 45]"/>
|
||||||
</Property>
|
</Property>
|
||||||
@@ -272,7 +279,7 @@
|
|||||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="webCBSecurityActionPerformed"/>
|
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="webCBSecurityActionPerformed"/>
|
||||||
</Events>
|
</Events>
|
||||||
</Component>
|
</Component>
|
||||||
<Component class="javax.swing.JLabel" name="jLabel6">
|
<Component class="javax.swing.JLabel" name="passwordLabel">
|
||||||
<Properties>
|
<Properties>
|
||||||
<Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
|
<Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
|
||||||
<Font name="Arial" size="14" style="0"/>
|
<Font name="Arial" size="14" style="0"/>
|
||||||
@@ -285,5 +292,23 @@
|
|||||||
</Property>
|
</Property>
|
||||||
</Properties>
|
</Properties>
|
||||||
</Component>
|
</Component>
|
||||||
|
<Component class="javax.swing.JTextField" name="taxIdTextField">
|
||||||
|
<Properties>
|
||||||
|
<Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
|
||||||
|
<Font name="Arial" size="14" style="0"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
||||||
|
<Dimension value="[0, 30]"/>
|
||||||
|
</Property>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JLabel" name="taxIdLabel">
|
||||||
|
<Properties>
|
||||||
|
<Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor">
|
||||||
|
<Font name="Arial" size="14" style="0"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="text" type="java.lang.String" value="Tax ID"/>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Form>
|
</Form>
|
||||||
|
|||||||
@@ -42,191 +42,195 @@ import javax.swing.*;
|
|||||||
*/
|
*/
|
||||||
public class PeopleView extends JPanel implements EditorRecord {
|
public class PeopleView extends JPanel implements EditorRecord {
|
||||||
|
|
||||||
private Object m_oId;
|
private Object m_oId;
|
||||||
private String m_sPassword;
|
private String m_sPassword;
|
||||||
|
|
||||||
private final DirtyManager m_Dirty;
|
|
||||||
|
|
||||||
private final SentenceList m_sentrole;
|
|
||||||
private ComboBoxValModel m_RoleModel;
|
|
||||||
|
|
||||||
private final ComboBoxValModel m_ReasonModel;
|
|
||||||
|
|
||||||
/** Creates new form PeopleEditor
|
|
||||||
* @param dlAdmin
|
|
||||||
* @param dirty */
|
|
||||||
public PeopleView(DataLogicAdmin dlAdmin, DirtyManager dirty) {
|
|
||||||
|
|
||||||
initComponents();
|
private final DirtyManager m_Dirty;
|
||||||
|
|
||||||
// El modelo de roles
|
|
||||||
m_sentrole = dlAdmin.getRolesList();
|
|
||||||
m_RoleModel = new ComboBoxValModel();
|
|
||||||
|
|
||||||
m_Dirty = dirty;
|
|
||||||
m_jName.getDocument().addDocumentListener(dirty);
|
|
||||||
m_jRole.addActionListener(dirty);
|
|
||||||
m_jVisible.addActionListener(dirty);
|
|
||||||
m_jImage.addPropertyChangeListener("image", dirty);
|
|
||||||
m_jcard.getDocument().addDocumentListener(dirty);
|
|
||||||
|
|
||||||
m_ReasonModel = new ComboBoxValModel();
|
private final SentenceList m_sentrole;
|
||||||
m_ReasonModel.add(AppLocal.getIntString("cboption.generate"));
|
private ComboBoxValModel m_RoleModel;
|
||||||
m_ReasonModel.add(AppLocal.getIntString("cboption.clear"));
|
|
||||||
m_ReasonModel.add(AppLocal.getIntString("cboption.iButton"));
|
|
||||||
|
|
||||||
webCBSecurity.setModel(m_ReasonModel);
|
|
||||||
|
|
||||||
writeValueEOF();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
private final ComboBoxValModel m_ReasonModel;
|
||||||
*
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void writeValueEOF() {
|
|
||||||
m_oId = null;
|
|
||||||
m_jName.setText(null);
|
|
||||||
m_sPassword = null;
|
|
||||||
m_RoleModel.setSelectedKey(null);
|
|
||||||
m_jVisible.setSelected(false);
|
|
||||||
m_jcard.setText(null);
|
|
||||||
m_jImage.setImage(null);
|
|
||||||
m_jName.setEnabled(false);
|
|
||||||
m_jRole.setEnabled(false);
|
|
||||||
m_jVisible.setEnabled(false);
|
|
||||||
m_jcard.setEnabled(false);
|
|
||||||
m_jImage.setEnabled(false);
|
|
||||||
jButton1.setEnabled(false);
|
|
||||||
webCBSecurity.setEnabled(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void writeValueInsert() {
|
|
||||||
m_oId = null;
|
|
||||||
m_jName.setText(null);
|
|
||||||
m_sPassword = null;
|
|
||||||
m_RoleModel.setSelectedKey(null);
|
|
||||||
m_jVisible.setSelected(true);
|
|
||||||
m_jcard.setText(null);
|
|
||||||
m_jImage.setImage(null);
|
|
||||||
m_jName.setEnabled(true);
|
|
||||||
m_jRole.setEnabled(true);
|
|
||||||
m_jVisible.setEnabled(true);
|
|
||||||
m_jcard.setEnabled(true);
|
|
||||||
m_jImage.setEnabled(true);
|
|
||||||
jButton1.setEnabled(true);
|
|
||||||
webCBSecurity.setEnabled(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @param value
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void writeValueDelete(Object value) {
|
|
||||||
Object[] people = (Object[]) value;
|
|
||||||
m_oId = people[0];
|
|
||||||
m_jName.setText(Formats.STRING.formatValue(people[1]));
|
|
||||||
m_sPassword = Formats.STRING.formatValue(people[2]);
|
|
||||||
m_RoleModel.setSelectedKey(people[3]);
|
|
||||||
m_jVisible.setSelected(((Boolean) people[4]).booleanValue());
|
|
||||||
m_jcard.setText(Formats.STRING.formatValue(people[5]));
|
|
||||||
m_jImage.setImage((BufferedImage) people[6]);
|
|
||||||
|
|
||||||
m_jName.setEnabled(false);
|
|
||||||
m_jRole.setEnabled(false);
|
|
||||||
m_jVisible.setEnabled(false);
|
|
||||||
m_jcard.setEnabled(false);
|
|
||||||
m_jImage.setEnabled(false);
|
|
||||||
jButton1.setEnabled(false);
|
|
||||||
webCBSecurity.setEnabled(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* Creates new form PeopleEditor
|
||||||
* @param value
|
*
|
||||||
*/
|
* @param dlAdmin
|
||||||
@Override
|
* @param dirty
|
||||||
public void writeValueEdit(Object value) {
|
*/
|
||||||
Object[] people = (Object[]) value;
|
public PeopleView(DataLogicAdmin dlAdmin, DirtyManager dirty) {
|
||||||
m_oId = people[0];
|
|
||||||
m_jName.setText(Formats.STRING.formatValue(people[1]));
|
|
||||||
m_sPassword = Formats.STRING.formatValue(people[2]);
|
|
||||||
m_RoleModel.setSelectedKey(people[3]);
|
|
||||||
m_jVisible.setSelected(((Boolean) people[4]).booleanValue());
|
|
||||||
m_jcard.setText(Formats.STRING.formatValue(people[5]));
|
|
||||||
m_jImage.setImage((BufferedImage) people[6]);
|
|
||||||
|
|
||||||
if (m_jcard.getText().length() == 16) {
|
|
||||||
jLblCardID.setText(AppLocal.getIntString("label.ibutton"));
|
|
||||||
} else {
|
|
||||||
jLblCardID.setText(AppLocal.getIntString("label.card"));
|
|
||||||
}
|
|
||||||
System.out.println(m_jcard.getText().length());
|
|
||||||
|
|
||||||
m_jName.setEnabled(true);
|
|
||||||
m_jRole.setEnabled(true);
|
|
||||||
m_jVisible.setEnabled(true);
|
|
||||||
m_jcard.setEnabled(true);
|
|
||||||
m_jImage.setEnabled(true);
|
|
||||||
jButton1.setEnabled(true);
|
|
||||||
webCBSecurity.setEnabled(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
* @throws BasicException
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Object createValue() throws BasicException {
|
|
||||||
Object[] people = new Object[7];
|
|
||||||
people[0] = m_oId == null ? UUID.randomUUID().toString() : m_oId;
|
|
||||||
people[1] = Formats.STRING.parseValue(m_jName.getText());
|
|
||||||
people[2] = Formats.STRING.parseValue(m_sPassword);
|
|
||||||
people[3] = m_RoleModel.getSelectedKey();
|
|
||||||
people[4] = m_jVisible.isSelected();
|
|
||||||
people[5] = Formats.STRING.parseValue(m_jcard.getText());
|
|
||||||
people[6] = m_jImage.getImage();
|
|
||||||
return people;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
initComponents();
|
||||||
*
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Component getComponent() {
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
// El modelo de roles
|
||||||
*
|
m_sentrole = dlAdmin.getRolesList();
|
||||||
* @throws BasicException
|
m_RoleModel = new ComboBoxValModel();
|
||||||
*/
|
|
||||||
public void activate() throws BasicException {
|
m_Dirty = dirty;
|
||||||
|
m_jName.getDocument().addDocumentListener(dirty);
|
||||||
m_RoleModel = new ComboBoxValModel(m_sentrole.list());
|
m_jRole.addActionListener(dirty);
|
||||||
m_jRole.setModel(m_RoleModel);
|
m_jVisible.addActionListener(dirty);
|
||||||
|
m_jImage.addPropertyChangeListener("image", dirty);
|
||||||
|
m_jcard.getDocument().addDocumentListener(dirty);
|
||||||
|
|
||||||
|
m_ReasonModel = new ComboBoxValModel();
|
||||||
|
m_ReasonModel.add(AppLocal.getIntString("cboption.generate"));
|
||||||
|
m_ReasonModel.add(AppLocal.getIntString("cboption.clear"));
|
||||||
|
m_ReasonModel.add(AppLocal.getIntString("cboption.iButton"));
|
||||||
|
|
||||||
|
webCBSecurity.setModel(m_ReasonModel);
|
||||||
|
|
||||||
|
writeValueEOF();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void writeValueEOF() {
|
||||||
|
m_oId = null;
|
||||||
|
m_jName.setText(null);
|
||||||
|
m_sPassword = null;
|
||||||
|
m_RoleModel.setSelectedKey(null);
|
||||||
|
m_jVisible.setSelected(false);
|
||||||
|
m_jcard.setText(null);
|
||||||
|
m_jImage.setImage(null);
|
||||||
|
m_jName.setEnabled(false);
|
||||||
|
m_jRole.setEnabled(false);
|
||||||
|
m_jVisible.setEnabled(false);
|
||||||
|
m_jcard.setEnabled(false);
|
||||||
|
m_jImage.setEnabled(false);
|
||||||
|
jButton1.setEnabled(false);
|
||||||
|
webCBSecurity.setEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void writeValueInsert() {
|
||||||
|
m_oId = null;
|
||||||
|
m_jName.setText(null);
|
||||||
|
m_sPassword = null;
|
||||||
|
m_RoleModel.setSelectedKey(null);
|
||||||
|
m_jVisible.setSelected(true);
|
||||||
|
m_jcard.setText(null);
|
||||||
|
m_jImage.setImage(null);
|
||||||
|
m_jName.setEnabled(true);
|
||||||
|
m_jRole.setEnabled(true);
|
||||||
|
m_jVisible.setEnabled(true);
|
||||||
|
m_jcard.setEnabled(true);
|
||||||
|
m_jImage.setEnabled(true);
|
||||||
|
jButton1.setEnabled(true);
|
||||||
|
webCBSecurity.setEnabled(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param value
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void writeValueDelete(Object value) {
|
||||||
|
Object[] people = (Object[]) value;
|
||||||
|
m_oId = people[0];
|
||||||
|
m_jName.setText(Formats.STRING.formatValue(people[1]));
|
||||||
|
m_sPassword = Formats.STRING.formatValue(people[2]);
|
||||||
|
m_RoleModel.setSelectedKey(people[3]);
|
||||||
|
m_jVisible.setSelected(((Boolean) people[4]).booleanValue());
|
||||||
|
m_jcard.setText(Formats.STRING.formatValue(people[5]));
|
||||||
|
m_jImage.setImage((BufferedImage) people[6]);
|
||||||
|
|
||||||
|
m_jName.setEnabled(false);
|
||||||
|
m_jRole.setEnabled(false);
|
||||||
|
m_jVisible.setEnabled(false);
|
||||||
|
m_jcard.setEnabled(false);
|
||||||
|
m_jImage.setEnabled(false);
|
||||||
|
jButton1.setEnabled(false);
|
||||||
|
webCBSecurity.setEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param value
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void writeValueEdit(Object value) {
|
||||||
|
Object[] people = (Object[]) value;
|
||||||
|
m_oId = people[0];
|
||||||
|
m_jName.setText(Formats.STRING.formatValue(people[1]));
|
||||||
|
m_sPassword = Formats.STRING.formatValue(people[2]);
|
||||||
|
m_RoleModel.setSelectedKey(people[3]);
|
||||||
|
m_jVisible.setSelected(((Boolean) people[4]).booleanValue());
|
||||||
|
m_jcard.setText(Formats.STRING.formatValue(people[5]));
|
||||||
|
m_jImage.setImage((BufferedImage) people[6]);
|
||||||
|
|
||||||
|
if (m_jcard.getText().length() == 16) {
|
||||||
|
jLblCardID.setText(AppLocal.getIntString("label.ibutton"));
|
||||||
|
} else {
|
||||||
|
jLblCardID.setText(AppLocal.getIntString("label.card"));
|
||||||
}
|
}
|
||||||
|
System.out.println(m_jcard.getText().length());
|
||||||
|
|
||||||
/**
|
m_jName.setEnabled(true);
|
||||||
*
|
m_jRole.setEnabled(true);
|
||||||
*/
|
m_jVisible.setEnabled(true);
|
||||||
@Override
|
m_jcard.setEnabled(true);
|
||||||
public void refresh() {
|
m_jImage.setEnabled(true);
|
||||||
}
|
jButton1.setEnabled(true);
|
||||||
|
webCBSecurity.setEnabled(true);
|
||||||
/** This method is called from within the constructor to
|
}
|
||||||
* initialize the form.
|
|
||||||
* WARNING: Do NOT modify this code. The content of this method is
|
/**
|
||||||
* always regenerated by the Form Editor.
|
*
|
||||||
*/
|
* @return
|
||||||
|
* @throws BasicException
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Object createValue() throws BasicException {
|
||||||
|
Object[] people = new Object[7];
|
||||||
|
people[0] = m_oId == null ? UUID.randomUUID().toString() : m_oId;
|
||||||
|
people[1] = Formats.STRING.parseValue(m_jName.getText());
|
||||||
|
people[2] = Formats.STRING.parseValue(m_sPassword);
|
||||||
|
people[3] = m_RoleModel.getSelectedKey();
|
||||||
|
people[4] = m_jVisible.isSelected();
|
||||||
|
people[5] = Formats.STRING.parseValue(m_jcard.getText());
|
||||||
|
people[6] = m_jImage.getImage();
|
||||||
|
return people;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Component getComponent() {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @throws BasicException
|
||||||
|
*/
|
||||||
|
public void activate() throws BasicException {
|
||||||
|
|
||||||
|
m_RoleModel = new ComboBoxValModel(m_sentrole.list());
|
||||||
|
m_jRole.setModel(m_RoleModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void refresh() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This method is called from within the constructor to
|
||||||
|
* initialize the form.
|
||||||
|
* WARNING: Do NOT modify this code. The content of this method is
|
||||||
|
* always regenerated by the Form Editor.
|
||||||
|
*/
|
||||||
|
// <editor-fold defaultstate="collapsed" desc="Generated
|
||||||
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
||||||
private void initComponents() {
|
private void initComponents() {
|
||||||
|
|
||||||
@@ -241,8 +245,10 @@ public class PeopleView extends JPanel implements EditorRecord {
|
|||||||
jLabel2 = new javax.swing.JLabel();
|
jLabel2 = new javax.swing.JLabel();
|
||||||
m_jcard = new javax.swing.JTextField();
|
m_jcard = new javax.swing.JTextField();
|
||||||
jLblCardID = new javax.swing.JLabel();
|
jLblCardID = new javax.swing.JLabel();
|
||||||
webCBSecurity = new com.alee.laf.combobox.WebComboBox();
|
webCBSecurity = new javax.swing.JComboBox();
|
||||||
jLabel6 = new javax.swing.JLabel();
|
passwordLabel = new javax.swing.JLabel();
|
||||||
|
taxIdTextField = new javax.swing.JTextField();
|
||||||
|
taxIdLabel = new javax.swing.JLabel();
|
||||||
|
|
||||||
setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
|
setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
|
||||||
setPreferredSize(new java.awt.Dimension(500, 500));
|
setPreferredSize(new java.awt.Dimension(500, 500));
|
||||||
@@ -299,10 +305,10 @@ public class PeopleView extends JPanel implements EditorRecord {
|
|||||||
jLblCardID.setText(AppLocal.getIntString("label.card")); // NOI18N
|
jLblCardID.setText(AppLocal.getIntString("label.card")); // NOI18N
|
||||||
jLblCardID.setPreferredSize(new java.awt.Dimension(110, 30));
|
jLblCardID.setPreferredSize(new java.awt.Dimension(110, 30));
|
||||||
|
|
||||||
|
webCBSecurity.setFont(new java.awt.Font("Arial", 0, 14)); // NOI18N
|
||||||
webCBSecurity.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Generate new key", "Delete exisitng key", "Use iButton ID" }));
|
webCBSecurity.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Generate new key", "Delete exisitng key", "Use iButton ID" }));
|
||||||
webCBSecurity.setSelectedIndex(0);
|
webCBSecurity.setSelectedIndex(0);
|
||||||
webCBSecurity.setToolTipText(AppLocal.getIntString("tooltip.peoplesecurity")); // NOI18N
|
webCBSecurity.setToolTipText(AppLocal.getIntString("tooltip.peoplesecurity")); // NOI18N
|
||||||
webCBSecurity.setFont(new java.awt.Font("Arial", 0, 14)); // NOI18N
|
|
||||||
webCBSecurity.setPreferredSize(new java.awt.Dimension(140, 45));
|
webCBSecurity.setPreferredSize(new java.awt.Dimension(140, 45));
|
||||||
webCBSecurity.addActionListener(new java.awt.event.ActionListener() {
|
webCBSecurity.addActionListener(new java.awt.event.ActionListener() {
|
||||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
||||||
@@ -310,9 +316,15 @@ public class PeopleView extends JPanel implements EditorRecord {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
jLabel6.setFont(new java.awt.Font("Arial", 0, 14)); // NOI18N
|
passwordLabel.setFont(new java.awt.Font("Arial", 0, 14)); // NOI18N
|
||||||
jLabel6.setText(AppLocal.getIntString("label.Password")); // NOI18N
|
passwordLabel.setText(AppLocal.getIntString("label.Password")); // NOI18N
|
||||||
jLabel6.setPreferredSize(new java.awt.Dimension(110, 30));
|
passwordLabel.setPreferredSize(new java.awt.Dimension(110, 30));
|
||||||
|
|
||||||
|
taxIdTextField.setFont(new java.awt.Font("Arial", 0, 14)); // NOI18N
|
||||||
|
taxIdTextField.setPreferredSize(new java.awt.Dimension(0, 30));
|
||||||
|
|
||||||
|
taxIdLabel.setFont(new java.awt.Font("Arial", 0, 14)); // NOI18N
|
||||||
|
taxIdLabel.setText("Tax ID");
|
||||||
|
|
||||||
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
||||||
this.setLayout(layout);
|
this.setLayout(layout);
|
||||||
@@ -338,16 +350,18 @@ public class PeopleView extends JPanel implements EditorRecord {
|
|||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||||
.addComponent(m_jcard, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(m_jcard, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(webCBSecurity, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(webCBSecurity, 0, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
.addGroup(layout.createSequentialGroup()
|
.addGroup(layout.createSequentialGroup()
|
||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(passwordLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addComponent(taxIdLabel))
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
|
.addComponent(taxIdTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(m_jName, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE))))
|
.addComponent(m_jName, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE))))
|
||||||
.addContainerGap())
|
.addContainerGap(50, Short.MAX_VALUE))
|
||||||
);
|
);
|
||||||
layout.setVerticalGroup(
|
layout.setVerticalGroup(
|
||||||
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
@@ -358,9 +372,13 @@ public class PeopleView extends JPanel implements EditorRecord {
|
|||||||
.addComponent(m_jName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(m_jName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
||||||
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(passwordLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||||
|
.addComponent(taxIdTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addComponent(taxIdLabel))
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
||||||
.addComponent(jLblCardID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(jLblCardID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(m_jcard, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(m_jcard, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
@@ -377,91 +395,89 @@ public class PeopleView extends JPanel implements EditorRecord {
|
|||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addComponent(m_jImage, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(m_jImage, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
.addContainerGap(110, Short.MAX_VALUE))
|
||||||
);
|
);
|
||||||
}// </editor-fold>//GEN-END:initComponents
|
}// </editor-fold>//GEN-END:initComponents
|
||||||
|
|
||||||
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
|
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_jButton1ActionPerformed
|
||||||
|
|
||||||
String sNewPassword = Hashcypher.changePassword(this);
|
String sNewPassword = Hashcypher.changePassword(this);
|
||||||
if (sNewPassword != null) {
|
if (sNewPassword != null) {
|
||||||
m_sPassword = sNewPassword;
|
m_sPassword = sNewPassword;
|
||||||
m_Dirty.setDirty(true);
|
m_Dirty.setDirty(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
}//GEN-LAST:event_jButton1ActionPerformed
|
}// GEN-LAST:event_jButton1ActionPerformed
|
||||||
|
|
||||||
private void webCBSecurityActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_webCBSecurityActionPerformed
|
private void webCBSecurityActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_webCBSecurityActionPerformed
|
||||||
|
|
||||||
|
if (webCBSecurity.getSelectedIndex() == 0) {
|
||||||
|
if (JOptionPane.showConfirmDialog(this,
|
||||||
|
AppLocal.getIntString("message.cardnew"),
|
||||||
|
AppLocal.getIntString("title.editor"),
|
||||||
|
JOptionPane.YES_NO_OPTION,
|
||||||
|
JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
|
||||||
|
m_jcard.setText("C" + StringUtils.getCardNumber());
|
||||||
|
m_Dirty.setDirty(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(webCBSecurity.getSelectedIndex() == 0){
|
if (webCBSecurity.getSelectedIndex() == 1) {
|
||||||
if (JOptionPane.showConfirmDialog(this,
|
if (JOptionPane.showConfirmDialog(this,
|
||||||
AppLocal.getIntString("message.cardnew"),
|
AppLocal.getIntString("message.cardremove"),
|
||||||
AppLocal.getIntString("title.editor"),
|
AppLocal.getIntString("title.editor"),
|
||||||
JOptionPane.YES_NO_OPTION,
|
JOptionPane.YES_NO_OPTION,
|
||||||
JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION)
|
JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
|
||||||
{
|
m_jcard.setText(null);
|
||||||
m_jcard.setText("C" + StringUtils.getCardNumber());
|
m_Dirty.setDirty(true);
|
||||||
m_Dirty.setDirty(true);
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if(webCBSecurity.getSelectedIndex() == 1){
|
if (webCBSecurity.getSelectedIndex() == 2) {
|
||||||
if (JOptionPane.showConfirmDialog(this,
|
if (JOptionPane.showConfirmDialog(this,
|
||||||
AppLocal.getIntString("message.cardremove"),
|
AppLocal.getIntString("message.ibuttonassign"),
|
||||||
AppLocal.getIntString("title.editor"),
|
AppLocal.getIntString("title.editor"),
|
||||||
JOptionPane.YES_NO_OPTION,
|
JOptionPane.OK_CANCEL_OPTION,
|
||||||
JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION)
|
JOptionPane.INFORMATION_MESSAGE) == JOptionPane.OK_OPTION)
|
||||||
{
|
|
||||||
m_jcard.setText(null);
|
|
||||||
m_Dirty.setDirty(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(webCBSecurity.getSelectedIndex() == 2){
|
|
||||||
if (JOptionPane.showConfirmDialog(this,
|
|
||||||
AppLocal.getIntString("message.ibuttonassign"),
|
|
||||||
AppLocal.getIntString("title.editor"),
|
|
||||||
JOptionPane.OK_CANCEL_OPTION,
|
|
||||||
JOptionPane.INFORMATION_MESSAGE) == JOptionPane.OK_OPTION)
|
|
||||||
|
|
||||||
{
|
{
|
||||||
m_jcard.setText( uOWWatch.getibuttonid() );
|
m_jcard.setText(uOWWatch.getibuttonid());
|
||||||
jLblCardID.setText(AppLocal.getIntString("label.ibutton"));
|
jLblCardID.setText(AppLocal.getIntString("label.ibutton"));
|
||||||
m_Dirty.setDirty(true);
|
m_Dirty.setDirty(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}//GEN-LAST:event_webCBSecurityActionPerformed
|
}// GEN-LAST:event_webCBSecurityActionPerformed
|
||||||
|
|
||||||
|
private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {// GEN-FIRST:event_jLabel1MouseClicked
|
||||||
|
if (evt.getClickCount() == 2) {
|
||||||
|
String uuidString = m_oId.toString();
|
||||||
|
StringSelection stringSelection = new StringSelection(uuidString);
|
||||||
|
Clipboard clpbrd = Toolkit.getDefaultToolkit().getSystemClipboard();
|
||||||
|
clpbrd.setContents(stringSelection, null);
|
||||||
|
|
||||||
|
JOptionPane.showMessageDialog(null,
|
||||||
|
AppLocal.getIntString("message.uuidcopy"));
|
||||||
|
}
|
||||||
|
}// GEN-LAST:event_jLabel1MouseClicked
|
||||||
|
|
||||||
private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel1MouseClicked
|
|
||||||
if (evt.getClickCount() == 2) {
|
|
||||||
String uuidString = m_oId.toString();
|
|
||||||
StringSelection stringSelection = new StringSelection(uuidString);
|
|
||||||
Clipboard clpbrd = Toolkit.getDefaultToolkit().getSystemClipboard();
|
|
||||||
clpbrd.setContents(stringSelection, null);
|
|
||||||
|
|
||||||
JOptionPane.showMessageDialog(null,
|
|
||||||
AppLocal.getIntString("message.uuidcopy"));
|
|
||||||
}
|
|
||||||
}//GEN-LAST:event_jLabel1MouseClicked
|
|
||||||
|
|
||||||
|
|
||||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||||
private javax.swing.JButton jButton1;
|
private javax.swing.JButton jButton1;
|
||||||
private javax.swing.JLabel jLabel1;
|
private javax.swing.JLabel jLabel1;
|
||||||
private javax.swing.JLabel jLabel2;
|
private javax.swing.JLabel jLabel2;
|
||||||
private javax.swing.JLabel jLabel3;
|
private javax.swing.JLabel jLabel3;
|
||||||
private javax.swing.JLabel jLabel4;
|
private javax.swing.JLabel jLabel4;
|
||||||
private javax.swing.JLabel jLabel6;
|
|
||||||
private javax.swing.JLabel jLblCardID;
|
private javax.swing.JLabel jLblCardID;
|
||||||
private com.unicenta.data.gui.JImageEditor m_jImage;
|
private com.unicenta.data.gui.JImageEditor m_jImage;
|
||||||
private javax.swing.JTextField m_jName;
|
private javax.swing.JTextField m_jName;
|
||||||
private javax.swing.JComboBox m_jRole;
|
private javax.swing.JComboBox m_jRole;
|
||||||
private javax.swing.JCheckBox m_jVisible;
|
private javax.swing.JCheckBox m_jVisible;
|
||||||
private javax.swing.JTextField m_jcard;
|
private javax.swing.JTextField m_jcard;
|
||||||
private com.alee.laf.combobox.WebComboBox webCBSecurity;
|
private javax.swing.JLabel passwordLabel;
|
||||||
|
private javax.swing.JLabel taxIdLabel;
|
||||||
|
private javax.swing.JTextField taxIdTextField;
|
||||||
|
private javax.swing.JComboBox webCBSecurity;
|
||||||
// End of variables declaration//GEN-END:variables
|
// End of variables declaration//GEN-END:variables
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user