import { Repository, EntityRepository } from 'typeorm';
import { PaginationDto } from './pagination.dto';
@EntityRepository(YourEntity)
export class YourEntityRepository {
constructor() {
super(YourEntity);
}
async getAllTutors(identification_post: string, dto: PaginationDto) {
const query = this.createQueryBuilder('yourEntityAlias'); // Замените 'yourEntityAlias' на алиас вашей сущности
query.where('post_text ILIKE :keyword', { keyword: `%${identification_post}%` });
const [results, total] = await query
.take(dto.limit)
.skip((dto.page - 1) * dto.limit)
.getManyAndCount();
return { results, total };
}
}
public static function OnAfterIndexAddExtended($searchContentId, &$fields)
{
if (
$fields['MODULE_ID'] !== 'iblock' ||
!$fields['ITEM_ID'] ||
!in_array($fields['PARAM2'], self::$Iblock)
) {
return;
}
// Удалите поле 'TITLE' из массива $fields
unset($fields['TITLE']);
// Получите внешний код раздела из какого-то другого источника, например, из базы данных
$externalCode = getExternalCodeForElement($fields['ITEM_ID']);
// Добавьте внешний код к полю 'b_search_content_title'
$fields['b_search_content_title'] .= ' ' . $externalCode;
// Обновите индекс для измененной записи
\CSearchFullText::getInstance()->replace($searchContentId, $fields);
}
import asyncio
import logging
import time
from watchdog.observers import Observer
from watchdog.events import PatternMatchingEventHandler
from aiogram import Bot, Dispatcher, MemoryStorage
from config import config
import Handlers
from sqlFile import db, sql, create_sql
class MyHandler(PatternMatchingEventHandler):
patterns = ["*.txt", "*.jpg"]
def process(self, event):
out = str(event.src_path)
with open(out, "r") as t1:
text = t1.read()
print(out)
print(text)
def on_modified(self, event):
self.process(event)
def on_created(self, event):
self.process(event)
async def observer_run():
args = 'C:\\ForTest'
observer = Observer()
observer.schedule(MyHandler(), path=args if args else '.')
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
async def main():
bot = Bot(token=config['token'], parse_mode="HTML")
storage = MemoryStorage()
dp = Dispatcher(storage=storage)
logging.basicConfig(level=logging.INFO)
create_sql()
dp.include_router(Handlers.user_router)
await bot.delete_webhook(drop_pending_updates=True)
await dp.start_polling(bot)
if __name__ == "__main__":
asyncio.run(asyncio.gather(main(), observer_run()))
const root = ReactDOM.createRoot(document.getElementById('root'));
const container = ReactDOM.createContainer(document.getElementById('root'), false, false);
ReactDOM.updateContainer(element, container, null, () => {
// Callback, который вызывается после завершения обновления
});
const fiberRoot = ReactDOM.createFiberRoot(container, false);
// На сервере Express.js
app.post('/some-route', (req, res) => {
// Обработка данных и отправка их клиенту
const dataToSend = { message: 'Данные успешно получены' };
res.json(dataToSend);
});
// На клиенте (JavaScript)
fetch('/some-route', {
method: 'POST',
body: JSON.stringify({ /* данные для отправки */ }),
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(data => {
// Рендеринг данных на стороне клиента
const messageElement = document.getElementById('message');
messageElement.innerText = data.message;
})
.catch(error => console.error(error));
add_action('wpcf7_before_send_mail', 'custom_wpcf7_add_to_cart');
function custom_wpcf7_add_to_cart($form) {
// Получите данные из формы
$product_id = intval($_POST['your-product-id']); // Замените на имя поля для ID товара
$quantity = intval($_POST['your-product-quantity']); // Замените на имя поля для количества товара
// Проверьте, что товар существует в WooCommerce
if (wc_get_product($product_id)) {
// Добавьте товар в корзину
WC()->cart->add_to_cart($product_id, $quantity);
}
}
#include <iostream>
#include <cuda_runtime.h>
__global__ void generateHexString(char* result, int* array)
{
int idx = blockIdx.x * blockDim.x + threadIdx.x;
result[idx] = array[idx];
}
int main()
{
const int arraySize = 16;
char array[arraySize] = {'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
char result[arraySize];
char* d_result;
int* d_array;
cudaMalloc((void**)&d_result, arraySize * sizeof(char));
cudaMalloc((void**)&d_array, arraySize * sizeof(int));
cudaMemcpy(d_array, array, arraySize * sizeof(int), cudaMemcpyHostToDevice);
int threadsPerBlock = 16;
int blocksPerGrid = 1;
generateHexString<<<blocksPerGrid, threadsPerBlock>>>(d_result, d_array);
cudaMemcpy(result, d_result, arraySize * sizeof(char), cudaMemcpyDeviceToHost);
cudaFree(d_result);
cudaFree(d_array);
std::cout << "Generated hex string: " << result << std::endl;
return 0;
}
import fetch from 'node-fetch'; // Подключите библиотеку fetch, если еще не подключили
import { HttpsProxyAgent } from 'https-proxy-agent';
export async function getLinkApi() {
try {
const proxyAgent = new HttpsProxyAgent('http://176.31.129.223:8080');
const response = await fetch('https://livefootball.su/wp-json/wp/v2/pages', {
agent: proxyAgent,
headers: {
// Если требуется, добавьте дополнительные заголовки
// 'Authorization': 'Bearer YourAccessToken',
// 'User-Agent': 'YourUserAgent',
},
});
const data = await response.json();
const link = ""; // Обработка данных
return link;
} catch (error) {
console.error('Error fetching data:', error);
throw error;
}
}
function custom_gallery_function($output, $attr) {
// Получаем количество колонок из аргументов галереи
$columns = isset($attr['columns']) ? intval($attr['columns']) : 3;
// Ваш код для вывода галереи с заданным количеством колонок
// ...
return $output;
}
add_filter('post_gallery', 'custom_gallery_function', 10, 2);
computed: {
sort() {
if (this.selected === "По популярности") {
for (let i = 0; i < this.bread.length; i++) {
arrX[i].sort(this.changePopular);
}
} else if (this.selected === "По возрастанию цены") {
for (let i = 0; i < this.bread.length; i++) {
arrX[i].sort(this.changePlus);
}
} else if (this.selected === "По уменьшению цены") {
for (let i = 0; i < this.bread.length; i++) {
arrX[i].sort(this.changeMinus);
}
} else if (this.selected === "Сначала обсуждаемые") {
for (let i = 0; i < this.bread.length; i++) {
arrX[i].sort(this.changeDiscussed);
}
} else if (this.selected === "Сначала с лучшей оценкой") {
for (let i = 0; i < this.bread.length; i++) {
arrX[i].sort(this.changeBest);
}
}
return arrX; // Возврат массива после всех итераций
},
},
$result = MyModel::with('users:email')->get()->map(function ($item) {
$item['users'] = $item['users'][0]['email'];
return $item;
});
array:1 [▼
0 => array:5 [▼
"id" => 1
"user_id" => "222"
"mymodel" => "success"
"created_at" => "2023-07-26T15:48:44.000000Z"
"updated_at" => "2023-07-26T15:48:44.000000Z"
"users" => "e@test.com"
]
]
$price = $priceElem->plaintext;
$priceCleaned = str_replace(',', '.', preg_replace('/[^0-9,.]/', '', $price));
$priceN = floatval($priceCleaned);
$db->query("INSERT IGNORE INTO posts (`title`, `img`, `link`, `price`)
VALUES('{$post['title']}', '{$post['img']}', '{$post['link']}', {$priceN})");
from selenium import webdriver
# Создаем экземпляр драйвера Selenium (здесь используется Chrome, но может быть и другой)
driver = webdriver.Chrome()
# Открываем веб-страницу, на которой находится объект Blob (например, ссылка на скачивание файла)
driver.get("https://example.com/download_blob")
# Выполняем JavaScript для получения URL объекта Blob в виде Data URL
# Это позволяет получить содержимое Blob в виде base64-кодированной строки
data_url = driver.execute_script("return URL.createObjectURL(new Blob(['Hello, World!'], {type: 'text/plain'}));")
# Создаем скрытый элемент <a> для скачивания файла
driver.execute_script(f"""
var a = document.createElement('a');
a.href = '{data_url}';
a.download = 'file.txt';
a.style.display = 'none';
document.body.appendChild(a);
a.click();
URL.revokeObjectURL('{data_url}');
""")
# Закрываем драйвер
driver.quit()
if ($user_damage > $battle['health']) {
// Установка блокировки на таблицу `_basement_battle`
mysql_query('LOCK TABLES `_basement_battle` WRITE');
try {
mysql_query('SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE');
mysql_query('START TRANSACTION');
// Выполнение обновлений
mysql_query('UPDATE `basement_clans` SET `json_key` = JSON_SET(`json_key`, \'$."' . 'key_'.($battle['boss_id'] + 1) . '"\', JSON_EXTRACT(`json_key`, \'$."' . 'key_'.($battle['boss_id'] + 1) . '"\') + 1), `json_limit` = JSON_SET(`json_limit`, \'$."' . 'boss_'.$battle['boss_id'] . '"\', JSON_EXTRACT(`json_limit`, \'$."' . 'boss_'.$battle['boss_id'] . '"\') + 1), `json_medals` = JSON_SET(`json_medals`, \'$."' . 'boss_'.$battle['boss_id'] . '"\', JSON_EXTRACT(`json_medals`, \'$."' . 'boss_'.$battle['boss_id'] . '"\') + 1) WHERE `clan` = '.$clan['id'].' AND `jail` = '.$user['reset']);
mysql_query('DELETE FROM `_basement_battle` WHERE `id` = '.$battle['id']);
mysql_query('COMMIT');
} catch (Exception $e) {
mysql_query('ROLLBACK');
} finally {
// Снятие блокировки после выполнения транзакции
mysql_query('UNLOCK TABLES');
}
}
package main
import (
"fmt"
"strings"
)
func main() {
text := "Это пример текста, в котором нужно проверить наличие нескольких подстрок."
substrings := []string{"пример", "нужно", "подстрок"}
// Собираем все подстроки в регулярную строку, разделенную символами "|"
regexStr := strings.Join(substrings, "|")
// Создаем регулярное выражение из строки
regex := regexp.MustCompile(regexStr)
// Ищем все совпадения регулярного выражения в тексте
matches := regex.FindAllString(text, -1)
// Выводим результаты
for _, match := range matches {
fmt.Println("Найдено:", match)
}
}