Fixed low bug EXT-3353 - There's an ability to create classified w/o title and description.

--HG--
branch : product-engine
master
Администратор 2009-12-21 16:13:09 +02:00
parent 10d20fdfe7
commit c353e640fa
3 changed files with 50 additions and 0 deletions

View File

@ -1557,6 +1557,11 @@ void LLPanelClassifiedEdit::resetControls()
childSetValue("price_for_listing", MINIMUM_PRICE_FOR_LISTING);
}
bool LLPanelClassifiedEdit::canClose()
{
return isValidName();
}
void LLPanelClassifiedEdit::sendUpdate()
{
LLAvatarClassifiedInfo c_data;
@ -1671,6 +1676,12 @@ void LLPanelClassifiedEdit::onChange()
void LLPanelClassifiedEdit::onSaveClick()
{
if(!isValidName())
{
notifyInvalidName();
return;
}
sendUpdate();
resetDirty();
}
@ -1681,6 +1692,34 @@ std::string LLPanelClassifiedEdit::getLocationNotice()
return location_notice;
}
bool LLPanelClassifiedEdit::isValidName()
{
std::string name = getClassifiedName();
if (name.empty())
{
return false;
}
if (!isalnum(name[0]))
{
return false;
}
return true;
}
void LLPanelClassifiedEdit::notifyInvalidName()
{
std::string name = getClassifiedName();
if (name.empty())
{
LLNotificationsUtil::add("BlankClassifiedName");
}
else if (!isalnum(name[0]))
{
LLNotificationsUtil::add("ClassifiedMustBeAlphanumeric");
}
}
void LLPanelClassifiedEdit::onTexturePickerMouseEnter(LLUICtrl* ctrl)
{
ctrl->setVisible(TRUE);

View File

@ -305,6 +305,8 @@ public:
bool isNew() { return mIsNew; }
bool canClose();
protected:
LLPanelClassifiedEdit();
@ -325,6 +327,10 @@ protected:
std::string getLocationNotice();
bool isValidName();
void notifyInvalidName();
void onSetLocationClick();
void onChange();
void onSaveClick();

View File

@ -769,6 +769,11 @@ void LLPanelPicks::onPanelPickSave(LLPanel* panel)
void LLPanelPicks::onPanelClassifiedSave(LLPanelClassifiedEdit* panel)
{
if(!panel->canClose())
{
return;
}
if(panel->isNew())
{
LLClassifiedItem* c_item = new LLClassifiedItem(getAvatarId(), panel->getClassifiedId());