diff --git a/GUIdataBaseLMS/mainwindow.cpp b/GUIdataBaseLMS/mainwindow.cpp
index 099d963..1fc47e1 100644
--- a/GUIdataBaseLMS/mainwindow.cpp
+++ b/GUIdataBaseLMS/mainwindow.cpp
@@ -19,8 +19,8 @@ MainWindow::MainWindow(QWidget *parent)
ui->horizontalLayout->addWidget(instructorsAndTraineesWidget);
this->move(0, 0);
- this->showNormal();
- //this->showMaximized();
+ //this->showNormal();
+ this->showMaximized();
qtLanguageTranslator.load(QString("translations/GUIdataBaseLMS_") + instructorsAndTraineesWidget->getLanguage(), ".");
qApp->installTranslator(&qtLanguageTranslator);
diff --git a/InstructorsAndTrainees/commonview.cpp b/InstructorsAndTrainees/commonview.cpp
index d4cfaa8..e30c9c4 100644
--- a/InstructorsAndTrainees/commonview.cpp
+++ b/InstructorsAndTrainees/commonview.cpp
@@ -19,6 +19,8 @@ CommonView::CommonView(ConnectorToServer* connectorToServer, TypeView type, QWid
treeWidget = new QTreeWidget();
treeWidget->setFocusPolicy(Qt::FocusPolicy::NoFocus);
+ treeWidget->setEnabled(false);
+
waitAnimationWidget = new WaitAnimationWidget;
QMovie *movie = new QMovie(":/resources/icons/762.gif");
//waitAnimationWidget->setParent(this);
diff --git a/InstructorsAndTrainees/commonview.h b/InstructorsAndTrainees/commonview.h
index a5d93ff..a7756dc 100644
--- a/InstructorsAndTrainees/commonview.h
+++ b/InstructorsAndTrainees/commonview.h
@@ -36,9 +36,14 @@ public:
{
this->adminMode = adminMode;
}
+ void activate()
+ {
+ treeWidget->setEnabled(true);
+ }
void deactivate()
{
treeWidget->clear();
+ treeWidget->setEnabled(false);
lastCurrentID = 0;
}
void clearSelection()
diff --git a/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp b/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp
index c39f12f..c31a44b 100644
--- a/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp
+++ b/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp
@@ -30,7 +30,7 @@ void SendSystem::sendDisable()
stream << data;
socket->waitForBytesWritten();
}
-
+/*
void SendSystem::sendXMLmsgGUItoServer(QByteArray array)
{
qDebug() << "SendSystem" << QThread::currentThreadId();
@@ -41,6 +41,7 @@ void SendSystem::sendXMLmsgGUItoServer(QByteArray array)
stream << array;
socket->waitForBytesWritten(6000);
}
+*/
void SendSystem::sendFileBlock(QString path)
{
diff --git a/InstructorsAndTrainees/connectorToServer/Core/sendsystem.h b/InstructorsAndTrainees/connectorToServer/Core/sendsystem.h
index 69b7107..4ecb9f3 100644
--- a/InstructorsAndTrainees/connectorToServer/Core/sendsystem.h
+++ b/InstructorsAndTrainees/connectorToServer/Core/sendsystem.h
@@ -14,7 +14,7 @@ class SendSystem :public QObject
public:
explicit SendSystem(QObject* parent = nullptr);
void setSocket(QTcpSocket *socket);
- void sendXMLmsgGUItoServer(QByteArray array);
+ //void sendXMLmsgGUItoServer(QByteArray array);
void sendDisable();
void sendFileBlock(QString path);
void sendFolderBlock(QString path);
diff --git a/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp b/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp
index 88977c3..70a1bb1 100644
--- a/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp
+++ b/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp
@@ -47,7 +47,7 @@ bool ConnectorToServer::authorizationInstructorLocal(QString login, QString pass
isLoggedIn = true;
QByteArray array = dataParser->createAuthMessage(autorization);
- emit signal_sendXMLmsgGUItoServer(array);
+ emit sigSendAnswerToServer(array);
return true;
}
@@ -64,7 +64,7 @@ bool ConnectorToServer::deAuthorizationInstructorLocal(QString login)
isLoggedIn = false;
QByteArray array = dataParser->createDeAuthMessage(deAutorization);
- emit signal_sendXMLmsgGUItoServer(array);
+ emit sigSendAnswerToServer(array);
return true;
}
@@ -80,7 +80,7 @@ bool ConnectorToServer::sendQueryToDB(TypeQueryToDB typeQuery, int id, void* dat
queryToDB->typeQuery = typeQuery;
QByteArray array = dataParser->createQueryToDBMessage(queryToDB, id, data);
- emit signal_sendXMLmsgGUItoServer(array);
+ emit sigSendAnswerToServer(array);
return true;
}
@@ -92,7 +92,7 @@ bool ConnectorToServer::sendMessage(ClientMessage clientMessage)
return false;
}
QByteArray array = dataParser->createMessage(clientMessage);
- emit signal_sendXMLmsgGUItoServer(array);
+ emit sigSendAnswerToServer(array);
return true;
}
@@ -111,7 +111,7 @@ bool ConnectorToServer::sendQueryTasksXML(QString type)
}
QByteArray array = dataParser->createQueryTasksXMLMessage(type);
- emit signal_sendXMLmsgGUItoServer(array);
+ emit sigSendAnswerToServer(array);
return true;
}
@@ -466,7 +466,7 @@ void ConnectorToServer::bindConnection()
connect(this,&ConnectorToServer::sigSetConnect,client,&TCPClient::setConnect,Qt::AutoConnection);
connect(this,&ConnectorToServer::sigStopConnect,client,&TCPClient::setDisconnect,Qt::AutoConnection);
- connect(this,&ConnectorToServer::signal_sendXMLmsgGUItoServer,sendSystem,&SendSystem::sendXMLmsgGUItoServer);
+ //Sconnect(this,&ConnectorToServer::signal_sendXMLmsgGUItoServer,sendSystem,&SendSystem::sendXMLmsgGUItoServer);
connect(this,&ConnectorToServer::sigSendAnswerToServer,sendSystem,&SendSystem::sendXMLAnswer,Qt::AutoConnection);
connect(recognizeSystem,&RecognizeSystem::sigAuth,this,&ConnectorToServer::slot_Auth); // ::sigLoginResult);
diff --git a/InstructorsAndTrainees/connectorToServer/connectortoserver.h b/InstructorsAndTrainees/connectorToServer/connectortoserver.h
index fd576c6..c4119f9 100644
--- a/InstructorsAndTrainees/connectorToServer/connectortoserver.h
+++ b/InstructorsAndTrainees/connectorToServer/connectortoserver.h
@@ -100,7 +100,7 @@ signals:
SendSystem *sendSystem,
QThread *thread);
- void signal_sendXMLmsgGUItoServer(QByteArray array);
+ //void signal_sendXMLmsgGUItoServer(QByteArray array);
void sigLoginResult(ServerAuthorization * serverAuth);
void sigDeLoginResult(ServerDeAuthorization * serverDeAuth);
diff --git a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.cpp b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.cpp
index bde6f50..fbd4f86 100644
--- a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.cpp
+++ b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.cpp
@@ -11,6 +11,11 @@ DialogAuthorizationInstructor::DialogAuthorizationInstructor(QWidget *parent) :
ui->editPassword->setProperty("mandatoryField", true);
ui->editPassword->setEchoMode(QLineEdit::EchoMode::Password);
+
+#ifdef PROJECT_TYPE_DEBUG
+ ui->editLogin->setText("admin");
+ ui->editPassword->setText("admin");
+#endif
}
DialogAuthorizationInstructor::~DialogAuthorizationInstructor()
@@ -18,7 +23,7 @@ DialogAuthorizationInstructor::~DialogAuthorizationInstructor()
delete ui;
}
-void DialogAuthorizationInstructor::on_btnOK_clicked()
+void DialogAuthorizationInstructor::on_btnLogIn_clicked()
{
this->accept();
}
diff --git a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h
index b11ef3e..276ea66 100644
--- a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h
+++ b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h
@@ -28,7 +28,7 @@ public:
}
private slots:
- void on_btnOK_clicked();
+ void on_btnLogIn_clicked();
private:
Ui::DialogAuthorizationInstructor *ui;
diff --git a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.ui b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.ui
index d02d667..944bc86 100644
--- a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.ui
+++ b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.ui
@@ -66,7 +66,7 @@
- admin
+
@@ -78,7 +78,7 @@
- admin
+
@@ -102,7 +102,7 @@
-
-
-
+
0
@@ -110,7 +110,7 @@
- Login in
+ Log in
diff --git a/InstructorsAndTrainees/instructors/viewerinstructors.cpp b/InstructorsAndTrainees/instructors/viewerinstructors.cpp
index 92e6ddf..cb33eb7 100644
--- a/InstructorsAndTrainees/instructors/viewerinstructors.cpp
+++ b/InstructorsAndTrainees/instructors/viewerinstructors.cpp
@@ -62,12 +62,13 @@ void ViewerInstructors::on_btnEditorInstructors_clicked()
EditorInstructors* editorInstructors = new EditorInstructors(connectorToServer, adminMode);
connect(connectorToServer, &ConnectorToServer::signal_UpdateDB, editorInstructors, &EditorInstructors::slot_NeedUpdateUI);
+ editorInstructors->activate();
dlgEditor = new QDialog(this);
QHBoxLayout *layout = new QHBoxLayout(dlgEditor);
layout->addWidget(editorInstructors);
dlgEditor->setWindowTitle(tr("Editor of instructors"));
- dlgEditor->setMinimumSize(1600, 800);
+ dlgEditor->setMinimumSize(1400, 700);
dlgEditor->setWindowFlags(dlgEditor->windowFlags() & ~Qt::WindowContextHelpButtonHint);
dlgEditor->exec();
diff --git a/InstructorsAndTrainees/instructorsandtraineeswidget.cpp b/InstructorsAndTrainees/instructorsandtraineeswidget.cpp
index c098e49..1b1c115 100644
--- a/InstructorsAndTrainees/instructorsandtraineeswidget.cpp
+++ b/InstructorsAndTrainees/instructorsandtraineeswidget.cpp
@@ -23,6 +23,7 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) :
nameInstructorLoggedInLocal(QStringLiteral("")),
idInstructorLoggedInLocal("0"),
language(languageENG),
+ flSettingsServerIsChanged(false),
ui(new Ui::InstructorsAndTraineesWidget)
{
ui->setupUi(this);
@@ -62,15 +63,15 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) :
ui->verticalLayout_Trainees->addWidget(viewerTrainees);
ui->verticalLayout_Instructors->addWidget(viewerInstructors);
- ui->groupBox_Messenger->setMinimumHeight(900);
+ ui->groupBox_Messenger->setMinimumHeight(600);
ui->groupBox_Messenger->setMaximumWidth(500);
ui->groupBox_Messenger->setMinimumWidth(500);
- ui->groupBox_Instructors->setMinimumHeight(300);
+ ui->groupBox_Instructors->setMinimumHeight(200);
ui->groupBox_Instructors->setMaximumHeight(300);
- ui->groupBox_Trainees->setMinimumHeight(600);
+ ui->groupBox_Trainees->setMinimumHeight(400);
ui->groupBox_Trainees->setMinimumWidth(600);
ui->groupBox_Instructors->setMinimumWidth(600);
@@ -182,6 +183,9 @@ void InstructorsAndTraineesWidget::slot_checkLoginResult(ServerAuthorization *se
connectorToServer->sendQueryTasksXML("fim");
connectorToServer->sendQueryTasksXML("amm");
+
+ viewerTrainees->activate();
+ viewerInstructors->activate();
}
else
{
@@ -251,7 +255,10 @@ void InstructorsAndTraineesWidget::slot_ConnectedToServer(bool state)
updateLabelLoggedInInstructor(loginInstructorLoggedInLocal, nameInstructorLoggedInLocal);
updateLabelServer();
- SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningClose, tr("The server is not available!")).exec();
+ if(!flSettingsServerIsChanged)
+ SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningClose, tr("The server is not available!")).exec();
+ else
+ flSettingsServerIsChanged = false;
}
}
@@ -441,6 +448,8 @@ void InstructorsAndTraineesWidget::on_btnSettings_clicked()
{
SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningClose, tr("Server settings have been changed. Please reconnect to the server.")).exec();
+ flSettingsServerIsChanged = true;
+
if(authorizationIsCompleted())
deAuthorizationInstructor(loginInstructorLoggedInLocal);
diff --git a/InstructorsAndTrainees/instructorsandtraineeswidget.h b/InstructorsAndTrainees/instructorsandtraineeswidget.h
index 9b0f15f..9faef79 100644
--- a/InstructorsAndTrainees/instructorsandtraineeswidget.h
+++ b/InstructorsAndTrainees/instructorsandtraineeswidget.h
@@ -95,6 +95,8 @@ private:
QTranslator qtLanguageTranslator;
QString language;
+ bool flSettingsServerIsChanged;
+
Ui::InstructorsAndTraineesWidget *ui;
};
diff --git a/InstructorsAndTrainees/trainees/viewertrainees.cpp b/InstructorsAndTrainees/trainees/viewertrainees.cpp
index 1af4007..50cfde3 100644
--- a/InstructorsAndTrainees/trainees/viewertrainees.cpp
+++ b/InstructorsAndTrainees/trainees/viewertrainees.cpp
@@ -86,12 +86,13 @@ void ViewerTrainees::on_btnEditorTrainees_clicked()
EditorTrainees* editorTraineesGroups = new EditorTrainees(connectorToServer, adminMode);
connect(connectorToServer, &ConnectorToServer::signal_UpdateDB, editorTraineesGroups, &EditorTrainees::slot_NeedUpdateUI);
+ editorTraineesGroups->activate();
dlgEditor = new QDialog(this);
QHBoxLayout *layout = new QHBoxLayout(dlgEditor);
layout->addWidget(editorTraineesGroups);
dlgEditor->setWindowTitle(tr("Editor of trainees"));
- dlgEditor->setMinimumSize(1600, 800);
+ dlgEditor->setMinimumSize(1400, 700);
dlgEditor->setWindowFlags(dlgEditor->windowFlags() & ~Qt::WindowContextHelpButtonHint);
dlgEditor->exec();
diff --git a/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.qm b/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.qm
index 52dd18c..6211948 100644
Binary files a/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.qm and b/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.qm differ
diff --git a/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.ts b/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.ts
index d44d6a5..2e15c7f 100644
--- a/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.ts
+++ b/InstructorsAndTrainees/translations/InstructorsAndTraineesWidget_ru_RU.ts
@@ -78,15 +78,9 @@ Delete it anyway?
Login
Логин
-
-
-
- admin
-
-
- Login in
+ Log in
Войти
@@ -661,48 +655,48 @@ Delete it anyway?
-
-
+
+
none
нет
-
+
The file could not be opened
Файл не может быть открыт
-
+
Instructor authorization.
Авторизация инструктора.
-
+
Instructor deauthorization
Деавторизация инструктора
-
+
Error!
Ошибка!
-
+
The server is not available!
Сервер недоступен!
-
+
Server settings have been changed. Please reconnect to the server.
Настройки сервера изменены. Выполните переподключение к серверу.
-
+
Instructor authorization
Авторизация инструктора
-
+
Invalid login or password!
Неправильный логин или пароль!
@@ -710,49 +704,49 @@ Delete it anyway?
InstructorsView
-
-
+
+
yes
да
-
-
+
+
no
нет
-
+
Instructor
Инструктор
-
+
Login
Логин
-
+
Password
Пароль
-
+
Administrator
Администратор
-
+
Archived
Архивный
-
+
Logged
Залогирован
-
+
ID
ID
@@ -1038,57 +1032,57 @@ Delete it anyway?
TraineesView
-
+
yes
да
-
+
no
нет
-
+
Trainee
Обучаемый
-
+
Login
Логин
-
+
Password
Пароль
-
+
Class
Класс
-
+
Computer
Компьютер
-
+
IP address
IP адрес
-
+
Archived
Архивный
-
+
Logged
Залогирован
-
+
ID
ID
@@ -1197,7 +1191,7 @@ Delete it anyway?
Редактор инструкторов
-
+
Editor of instructors
Редактор инструкторов
@@ -1215,12 +1209,12 @@ Delete it anyway?
Редактор обучаемых
-
+
Editor of trainees
Редактор обучаемых
-
+
Personal card trainee
Персональная карта обучаемого
diff --git a/InstructorsAndTrainees/translations/InstructorsAndTrainees_ru_RU.ts b/InstructorsAndTrainees/translations/InstructorsAndTrainees_ru_RU.ts
deleted file mode 100644
index f04e874..0000000
--- a/InstructorsAndTrainees/translations/InstructorsAndTrainees_ru_RU.ts
+++ /dev/null
@@ -1,1242 +0,0 @@
-
-
-
-
- AMMtasksWidget
-
-
- Form
-
-
-
-
- Assign
-
-
-
-
- Аvailable
-
-
-
-
-
-
- Status
-
-
-
-
- Delete
-
-
-
-
- Task AMM
-
-
-
-
- DM code
-
-
-
-
-
- ID
-
-
-
-
- PM/DM
-
-
-
-
- Code
-
-
-
-
- Attention!
-
-
-
-
- The deletion will be irrevocable.
-Delete it anyway?
-
-
-
-
- Status Task
-
-
-
-
- New task
-
-
-
-
- Assign this task?
-
-
-
-
- DialogAuthorizationInstructor
-
-
- Instructor authorization
-
-
-
-
- Login
-
-
-
-
- Password
-
-
-
-
-
- admin
-
-
-
-
- DialogCheckTask
-
-
- Form
-
-
-
-
- Task
-
-
-
-
- Completion Report
-
-
-
-
- Failed
-
-
-
-
- Right
-
-
-
-
- Completed
-
-
-
-
- New
-
-
-
-
- viewed
-
-
-
-
- completed
-
-
-
-
- Change task status?
-The status will be set:
-'failed'
-
-
-
-
- Change task status?
-The status will be set:
-'new'
-
-
-
-
-
- Attention!
-
-
-
-
-
- Change task status?
-The status will be set:
-'completed'
-
-
-
-
- DialogEditGroup
-
-
- Group
-
-
-
-
- Name
-
-
-
-
- DialogEditInstructor
-
-
- Instructor
-
-
-
-
- Name
-
-
-
-
- Login
-
-
-
-
- Password
-
-
-
-
- Administrator
-
-
-
-
- Archived
-
-
-
-
- Logged
-
-
-
-
- DialogEditTrainee
-
-
- Trainee
-
-
-
-
- Name
-
-
-
-
- Login
-
-
-
-
- Password
-
-
-
-
- Archived
-
-
-
-
- Logged
-
-
-
-
- DialogSettings
-
-
- Learning management system - Settings
-
-
-
-
- Main
-
-
-
-
- Language
-
-
-
-
- Server
-
-
-
-
- Address
-
-
-
-
- Port
-
-
-
-
- Auto start
-
-
-
-
- Save
-
-
-
-
- Additional
-
-
-
-
- Version
-
-
-
-
- Style
-
-
-
-
- EditorInstructors
-
-
- List instructors
-
-
-
-
- New instructor
-
-
-
-
- Delete instructor
-
-
-
-
-
- To archive
-
-
-
-
- Edit
-
-
-
-
- Show archive
-
-
-
-
-
-
-
- Error!
-
-
-
-
- You cannot delete the Administrator.
-
-
-
-
- You cannot delete a logged-in instructor.
-
-
-
-
- Attention!
-
-
-
-
- The deletion will be irrevocable.
-Delete it anyway?
-
-
-
-
- You cannot archive a logged-in instructor.
-
-
-
-
- You cannot edit a logged-in instructor.
-
-
-
-
- From archive
-
-
-
-
-
-
-
- Editing error!
-
-
-
-
- Unacceptable instructor name has been entered.
-The changes will not be accepted.
-
-
-
-
- Unacceptable instructor login has been entered.
-The changes will not be accepted.
-
-
-
-
- Unacceptable instructor password has been entered.
-The changes will not be accepted.
-
-
-
-
- An existing instructor or trainee login has been entered.
-The changes will not be accepted.
-
-
-
-
- EditorTrainees
-
-
- List trainees
-
-
-
-
- New group
-
-
-
-
- Delete group
-
-
-
-
- New trainee
-
-
-
-
- Delete trainee
-
-
-
-
-
-
- To archive
-
-
-
-
- Edit
-
-
-
-
- Show archive
-
-
-
-
-
-
-
-
-
-
- Editing error!
-
-
-
-
- The group is not empty.
-It is not possible to delete a non-empty group.
-
-
-
-
-
- Attention!
-
-
-
-
-
- The deletion will be irrevocable.
-Delete anyway?
-
-
-
-
-
-
- Error!
-
-
-
-
- You cannot delete a logged-in trainee.
-
-
-
-
- You cannot archive a logged-in trainee.
-
-
-
-
- You cannot edit a logged-in trainee.
-
-
-
-
- From archive
-
-
-
-
- Unacceptable group name has been entered.
-The changes will not be accepted.
-
-
-
-
- An existing group name has been entered.
-The changes will not be accepted.
-
-
-
-
- Unacceptable trainee name has been entered.
-The changes will not be accepted.
-
-
-
-
- Unacceptable trainee login has been entered.
-The changes will not be accepted.
-
-
-
-
- Unacceptable trainee password has been entered.
-The changes will not be accepted.
-
-
-
-
- An existing instructor or trainee login has been entered.
-The changes will not be accepted.
-
-
-
-
- FIMtasksWidget
-
-
- Form
-
-
-
-
- Assign
-
-
-
-
- Check
-
-
-
-
- Delete
-
-
-
-
- Task FIM
-
-
-
-
-
- ID
-
-
-
-
-
- Status
-
-
-
-
- Title
-
-
-
-
- Attention!
-
-
-
-
- The deletion will be irrevocable.
-Delete it anyway?
-
-
-
-
- Check Task
-
-
-
-
- New task
-
-
-
-
- Assign this task?
-
-
-
-
- InstructorsAndTraineesWidget
-
-
- Form
-
-
-
-
- Connection
-
-
-
-
- Authorization
-
-
-
-
- Server:
-
-
-
-
-
-
-
- none
-
-
-
-
- Logged in Instructor:
-
-
-
-
- ChangeVersion
-
-
-
-
- Editor Trainees
-
-
-
-
- Editor Instructors
-
-
-
-
- Settings
-
-
-
-
- Trainees
-
-
-
-
- Instructors
-
-
-
-
- Messenger
-
-
-
-
-
- Attention!
-
-
-
-
- The file could not be opened
-
-
-
-
-
- Instructor authorization
-
-
-
-
- Invalid login or password!
-
-
-
-
- Instructor deauthorization
-
-
-
-
- Error!
-
-
-
-
- Warning!
-
-
-
-
- The server is disabled
-
-
-
-
- Server settings have been changed. Please reconnect to the server.
-
-
-
-
- InstructorsView
-
-
-
-
- yes
-
-
-
-
-
-
- no
-
-
-
-
- Instructor
-
-
-
-
- Login
-
-
-
-
- Password
-
-
-
-
- Administrator
-
-
-
-
- Archived
-
-
-
-
- Logged
-
-
-
-
- ID
-
-
-
-
- MessangerWidget
-
-
- Form
-
-
-
-
- Tab 1
-
-
-
-
- Tab 2
-
-
-
-
- Send
-
-
-
-
- MsgWidget
-
-
- Form
-
-
-
-
- TextLabel
-
-
-
-
- NewVersionWidget
-
-
- Create copy...
-
-
-
-
- Basic version:
-
-
-
-
- TextLabel
-
-
-
-
- New name version:
-
-
-
-
- Create
-
-
-
-
- Cancel
-
-
-
-
- Only Latin letters and numbers
-
-
-
-
- NotifyController
-
-
- Error
-
-
-
-
- PersonalCardTrainee
-
-
- Form
-
-
-
-
- Trainee
-
-
-
-
- Name
-
-
-
-
- Last login time
-
-
-
-
-
-
-
-
- 0
-
-
-
-
- Assigned FIM
-
-
-
-
- Assigned AMM
-
-
-
-
- Time of operation
-
-
-
-
- Last time of exit
-
-
-
-
- Messenger
-
-
-
-
- Tasks
-
-
-
-
- AMM
-
-
-
-
-
- List
-
-
-
-
-
- Attached
-
-
-
-
- FIM
-
-
-
-
- RecognizeSystem
-
-
- Attention!
-
-
-
-
- The file could not be opened
-
-
-
-
- You cannot delete the basic version!
-
-
-
-
- You cannot delete the active version
-
-
-
-
- This name already exists
-
-
-
-
- TaskAMMFIMTreePreparation
-
-
-
-
- completed
-
-
-
-
-
-
- failed
-
-
-
-
-
-
- checkup
-
-
-
-
-
-
- new
-
-
-
-
- TraineesView
-
-
-
- yes
-
-
-
-
-
- no
-
-
-
-
- Trainee
-
-
-
-
- Login
-
-
-
-
- Password
-
-
-
-
- Class
-
-
-
-
- Computer
-
-
-
-
- IP address
-
-
-
-
- Archived
-
-
-
-
- Logged
-
-
-
-
- ID
-
-
-
-
- VersionSelectWidget
-
-
- Form
-
-
-
-
- Available versions on the server:
-
-
-
-
- Info:
-
-
-
-
- Double click on the version to see information...
-
-
-
-
- Current server version:
-
-
-
-
- none
-
-
-
-
- Create copy
-
-
-
-
- Delete
-
-
-
-
- Change server version
-
-
-
-
- Version control
-
-
-
-
- Version name:
-
-
-
-
- Created:
-
-
-
-
- Changeable:
-
-
-
-
- Author:
-
-
-
-
- Yes
-
-
-
-
- No
-
-
-
-
-
-
-
- Version not selected
-
-
-
-
- ViewerInstructors
-
-
- Instructors
-
-
-
-
- Editor of Instructors
-
-
-
-
- Editor of instructors
-
-
-
-
- ViewerTrainees
-
-
- Trainees
-
-
-
-
- Editor of Trainees
-
-
-
-
- Editor of trainees
-
-
-
-
- Personal card trainee
-
-
-
-
- WaitAnimationWidget
-
-
- Form
-
-
-
-