{{calculateProductsNum()}}

Корзина

Наименований: {{calculateProductsNum()}}

Просмотрщик

{{liteItem.shortName}}

x{{liteItem.quantity}}
{{ parsePrice(liteItem.price * liteItem.quantity)}} ₽

+{{liteItem.license.years}} {{ liteItem.license.years == 1 ? 'Год подписки на обновления' : 'Года подписки на обновления' }}

x{{liteItem.quantity}}
{{parsePrice(liteItem.license.price * liteItem.quantity)}} ₽

{{proItem.shortName}} {{getMonthlyLocField('HEADER.LICENSE_TERM_', proItem.subscriptionType)}}

x{{proItem.quantity}}
{{ parsePrice(proItem[priceKeys[proItem.subscriptionType]] * proItem.quantity) }} ₽

{{module.name}}

x{{proItem.quantity}}
{{ parsePrice(module[priceKeys[proItem.subscriptionType]] * proItem.quantity) }} ₽

+{{proItem.license.years}} {{ proItem.license.years == 1 ? 'Год подписки на обновления' : 'Года подписки на обновления' }}

x{{proItem.quantity}}
{{parsePrice(proItem.license.price * proItem.quantity)}} ₽
Сервер

Подключения

x{{serverRedaction.connections}}
{{ parsePrice(strPriceToNumber(serverRedaction.basePrice)) }}

+{{serverRedaction.license.years}} {{ serverRedaction.license.years == 1 ? 'Год подписки на обновления' : 'Года подписки на обновления' }}

x{{serverRedaction.quantity}}
{{parsePrice(serverRedaction.license.price)}} ₽
Продление лицензий

Lite

x{{itemUpdate.updateLic.quantity}}
{{parsePrice(itemUpdate.updateLic.price)}} ₽

+{{itemUpdate.updateLic.years}} {{ itemUpdate.updateLic.years == 1 ? 'Год подписки на обновления' : 'Года подписки на обновления' }}

x{{itemUpdate.updateLic.quantity}}
{{parsePrice(itemUpdate.updateLic.price)}} ₽

Pro(бессрочная)

x1
{{parsePrice(itemUpdate.updateLic.price)}} ₽

+{{itemUpdate.updateLic.years}} {{ itemUpdate.updateLic.years == 1 ? 'Год подписки на обновления' : 'Года подписки на обновления' }}

+1

x{{itemUpdate.updateLic.quantity}}
{{parsePrice(itemUpdate.updateLic.price)}} ₽

Server

x1
{{parsePrice(itemUpdate.updateLic.price + getNewConnectionsPrice(itemUpdate))}} ₽

+{{itemUpdate.updateLic.years}} {{ itemUpdate.updateLic.years == 1 ? 'Год подписки на обновления' : 'Года подписки на обновления' }}

x{{itemUpdate.updateLic.quantity}}
{{parsePrice(itemUpdate.updateLic.price)}} ₽

Доп.подключения

x{{newConnections.newConnections}}
{{parsePrice(newConnections.price)}} ₽

Докупка модулей

{{module.name}}

x{{module.quantity}}
{{parsePrice(module.price)}} ₽

Услуги техподдержки

{{service.name}}

x{{service.quantity}}
{{ parsePrice(strPriceToNumber(service.price) * service.quantity) }}

Proshika Shabda Install Instant

Proshika Shabda Install Instant

def save_words(self): with open(self.data_file, 'w', encoding='utf-8') as f: json.dump(self.words, f, ensure_ascii=False, indent=2)

class ProshikaShabda: def (self, data_file="shabda_store.json"): self.data_file = data_file self.words = self.load_words() proshika shabda install

if == " main ": main()

def install_word(self, word, meaning, example=""): """Install a new word into the dictionary""" if word in self.words: print(f"⚠️ Word '{word}' already exists. Use update to modify.") return False self.words[word] = {"meaning": meaning, "example": example} self.save_words() print(f"✅ Installed: {word} → {meaning}") return True def save_words(self): with open(self

def list_installed(self): for w, info in self.words.items(): print(f"{w} : {info['meaning']}") def main(): feature = ProshikaShabda() if len(sys.argv) < 2: print("Usage: proshika install <word> <meaning> [example]") return if sys.argv[1] == "install": word = sys.argv[2] meaning = sys.argv[3] example = sys.argv[4] if len(sys.argv) > 4 else "" feature.install_word(word, meaning, example) def save_words(self): with open(self.data_file

def load_words(self): if os.path.exists(self.data_file): with open(self.data_file, 'r', encoding='utf-8') as f: return json.load(f) return {}

proshika shabda install Пожалуйста, подождите Происходит
отправка данных формы
и приложенных файлов