- 1
Autoresizing mask -> Autolayout -> Size classes -> "android layout" (на apple watch)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−407
Autoresizing mask -> Autolayout -> Size classes -> "android layout" (на apple watch)
Эволюция "автонастройки" размеров в iOS или что бывает если один раз нормально не сесть и подумать.
Для тех кто не в теме - все вышеперечисленное может быть в одном проекте одновременно.
+141
$phsms = '';
for($p=0;$p<strlen($phonesms);$p++)
if(intval($phonesms[$p]) >= 0) $phsms = $phsms.intval($phonesms[$p]);
preg_match('/.*(9[0-9]{2})([0-9]{7})/', $phsms, $match2);
$phsms = $match2[1].$match2[2];
Валидируем телефоны.
+143
function buildUpdateTimestampTrigger($tableName) {
return
sprintf(
file_get_contents(SQL_FILES_PATH . 'updateTimestamp_PlPg.sql'),
strtolower($tableName) . '_updated'
) .
sprintf(
file_get_contents(SQL_FILES_PATH . 'updateTimestampTrigger.sql'),
$tableName
);
}
+143
<script type="text/javascript">
function Show(a) {
obj1=document.getElementById("mydiv1");
obj2=document.getElementById("mydiv2");
obj3=document.getElementById("mydiv3");
obj4=document.getElementById("mydiv4");
obj5=document.getElementById("mydiv5");
uslugia=document.getElementById("uslugi");
uslugib=document.getElementById("uslugi1");
if (a == 1 || a == 2 || a == 3 || a == 4) {obj1.style.display="block"; uslugia.style.display="block"; infa.style.display="block";
obj5.style.display="none"; uslugib.style.display="none";
}
if (a == 5) {obj5.style.display="block"; infa.style.display="block";
obj1.style.display="none"; uslugia.style.display="none";
}
calc ();
}
function ShowServices(a) {
if (a == 'premium') {
console.log ("a")
us1.checked = us2.checked = us3.checked = us4.checked = us5.checked = false
us1.disabled = us2.disabled = us3.disabled = us4.disabled = us5.disabled = true;
} else {
console.log ("b")
us1.disabled = us2.disabled = us3.disabled = us4.disabled = us5.disabled = false;
}
if (a == 'premium5') {
uslugi1.style.display="block"
} else {
uslugi1.style.display="none"
}
if (a == 'min' || a == 'stan' || a == 'premium' || a == 'min5' || a == 'stan5' || a == 'premium') {
infa.style.display="none";
}
calc ();
}
function ShowUs(a) {
{calc();};
}
function ShowV (a) {
if (a == 1 || a == 2 || a == 3 || a == 4) {
min5.checked = stan5.checked = prem5.checked = false;
}
if (a == 5) {
min1.checked = stan1.checked = prem1.checked = false;
}
}
function calc() {
var d = document, usl1 = usl2 = usl3 = usl4 = usl5 = ull1 = ull2 = 0;
var
min1 = d.getElementById("min1"),
stan1 = d.getElementById("stan1"),
prem1 = d.getElementById("prem1"),
min5 = d.getElementById("min5"),
stan5 = d.getElementById("stan5"),
prem5 = d.getElementById("prem5"),
us1 = d.getElementById("us1"),
us2 = d.getElementById("us2"),
us3 = d.getElementById("us3"),
us4 = d.getElementById("us4"),
us5 = d.getElementById("us5"),
result = d.getElementById("result");
console.log ('c');
if (us1.checked) usl1 = +us1.value;
if (us2.checked) usl2 = +us2.value;
if (us3.checked) usl3 = +us3.value;
if (us4.checked) usl4 = +us4.value;
if (us5.checked) usl5 = +us5.value;
if (min1.checked) cina = +min1.value;
if (stan1.checked) cina = +stan1.value;
if (prem1.checked) cina = +prem1.value;
if (min5.checked) cina = +min5.value;
if (stan5.checked) cina = +stan5.value;
if (prem5.checked) cina = +prem5.value;
if (ul1.checked) ull1 = +ul1.value;
if (ul2.checked) ull2 = +ul2.value;
result.innerHTML = Math.ceil(cina + usl1 + usl2 + usl3 + usl4 + usl5 + ull1 +ull2);
};
document.body.onload = function() {
console.log ('d');
calc ();
}
</script>
Пишу сайт, опыт программирования нулевой, но 2 сайта уже сделал...
Решил показать свой код, так как точно чувствую что он подходит для этого сайта =)
+141
#include <stdio.h>
#include <dstring.h>
#include <iostream>
#include <fstream>
#include <sysmac.h>
#include <System.hpp>
class ImpFromTxt
{
AnsiString S1; //переменная для выбранного текста из файла
AnsiString buf; //буферная переменная для записи необходимых слов
public:
AnsiString Import(const char* Aftr, int Chislo=0, ...)
{ //^число слов после которых необходимо вычленить слова
// using namespace std;
size_t count=0; //Число символов в файле
char S; //для подсчета символов
const char* word_before = "Точка: "; //слово, после которого необходимо выделить слово
/*Просто считаем число символов*/
ifstream f(Aftr);
while (!f.eof())
{
f.get(S);
count++;
}
f.close();
/*Добавляем текст в переменную*/
char *S2=new char [count]; //Выделяем память по определенному числу символов
for (int i=0;i<count;i++) S2[i]=NULL; //Очищаем строку от хлама
ifstream f2(Aftr); //создаем поток для работы с файлом
int i=0; //куроср на текущий символ (как номер буквы в слове)
while (!f2.eof()) //Проходим ао файлу
{
f2.get(S2[i]); //Записываем симыол за символом
i++; //передвинули курсор для записи следующего символа
}
f2.close(); //закончили работу с файлом
S1 = S2;
// cout<<S2<<endl; //Теперь переменная char[] содержит текст из файла
delete []S2; //освобождаем память
/**************************************/
switch (Chislo) //цикл для выбора количества видов слов
{ //слова будут собираться в буферной переменной
//для возвращения в основную программу
case 2:
break;
case 1: { // TX;
while (S1.Pos(word_before))
{
char buf1[100]= " ";
int j=0;
i=(S1.Pos(word_before)) ? (S1.Pos(word_before)+strlen(word_before)) : 0;
int M = S1.Pos(word_before); //индекс первой буквы Т в первом нахождении слова Точка
int L = S1.Length(); //длинна всего текста
if (i)
while (S1[i] != '\n')
{
buf1[j]=S1[i];
j++;
i++;
}
buf1[strlen(buf1)] = '\r';
buf1[strlen(buf1)] = '\n';
buf += buf1;
//buf = buf.Insert((S1.SubString(S1.Pos("Точка:")+8,5)),(S1.Pos("Точка:")+8));
S1 = S1.SubString(S1.Pos(word_before)+strlen(buf1)-1+strlen(word_before),S1.Length()-(S1.Pos(word_before)+strlen(word_before)+strlen(buf1)-2));
//-1 и -2 в этом присваивании поставлены для компенсации добавленных лишних символов \r \n
L = S1.Length();
}
}
break;
case 3:
break;
default:
;
}
return buf;
}
};
Класс парсит текстовый файл вида
Точка: Инфа 1
Точка: Инфа 2
Точка: Инфа ...
Точка: Инфа n
доставая инфу, находящуюся после лексемы "Точка: ".
Нет, код писался не специально, чтобы потешить кого-то на этом сайте. Это из реального рабочего проекта.
+145
function GetItemID() {
var path = window.location.href;
//alert(path);
var itemID = "";
var count = 0;
for (i = 1; i < path.length; i++)
{
if (count != 12)
{
if ((path[i] == '0') || (path[i] == '1') || (path[i] == '2') || (path[i] == '3') || (path[i] == '4') || (path[i] == '5') || (path[i] == '6') || (path[i] == '7') || (path[i] == '8') || (path[i] == '9'))
{
itemID += path[i];
count++;
}
else {
if (count != 12)
{
itemID = "";
count = 0;
}
}
}
}
return itemID;
}
На eBay определяет ID товара для кнопки купить в мерчантской(китайцы) странице ниже. O location.href.match(/\d{12}/) они наверное не знали.
+141
public static final long SECOND = 1000;
public static final long MINUTE = 1000 * 60;
public static final long HOUR = MINUTE * 60;
public static final long DAY = HOUR * 24;
public static final long WEEK = DAY * 7;
public static final long MONTH = DAY * 30;
public static final long SEMIANNUAL = DAY * 183;
public static final long YEAR = DAY * 365;
+143
//выберем все th-ячейки заголовка грида
var allGridHeaderCells = cell.parentNode.children;
//получим индекс ячейки 0...N, на которой произошел клик
for (var ThisColNum = 0; ThisColNum < allGridHeaderCells.length; ThisColNum++) {
if (allGridHeaderCells[ThisColNum] == cell) {
break;
}
}
Пишет очень аккуратный программист. Но зачем так?! Вместо простого cell.cellIndex.
Отдельный штрих, что дальше он использует переменную ThisColNum, определённую в цикле, доступность которой вне цикла — это вообще пережиток прошлого ECMAScript, не знавшего let.
+144
$orig_id = isset($_POST["orig_id"]) ? (int) $_POST["orig_id"] : (int) $_GET["orig_id"];
https://github.com/uisky/notabenoid/blob/6edfee9f33b8466be9164cd3ba6be90b8f3a5770/protected/controllers/MyCommentsController.php#L123
+141
private List<string> urls = new List<string>();
private int urls_index = -1;
private ProgressBar pb = new ProgressBar()
{
Width = 291,
Height = 26,
Maximum = 100,
Minimum = 0,
Location = new Point(12, 41)
};
public Object SyncIndex = new Object();
public void DownLoad(object index)
{
int indexwhile = (int) index;
while (work)
{
int localIndex;
lock (SyncIndex)
{
urls_index++;
localIndex = urls_index;
}
WebClient webClient = new WebClient();
try
{
webClient.DownloadFile(new Uri(urls[localIndex]), "img/" + localIndex + ".jpg");
webClient.DownloadProgressChanged += (s, a) => Invoke(new Action(() => {progressBars[indexwhile].Value = a.ProgressPercentage;}));
}
catch (Exception exception)
{
Invoke(new Action(() =>
{
listBox2.Items.Add("Ошибка" + listBox1.Items[localIndex]);
}));
DownLoad(index);
}
Invoke(new Action(() =>
{
listBox1.Items[localIndex] = "Загружен" + listBox1.Items[localIndex];
label1.Text = urls.Count.ToString();
richTextBox1.Text += localIndex + @".jpg Загружен" + Environment.NewLine;
}));
Thread.Sleep(500);
}
}
private void button2_Click(object sender, EventArgs e)
{
work = true;
Thread[] threads = new Thread[30];
for (int i = 0; i < 20; i++)
{
int mnoj = i + 1;
progressBars[i] = new ProgressBar()
{
Width = 291,
Height = 26,
Maximum = 100,
Minimum = 0,
Location = new Point(12, 41)
};
progressBars[i].Location = new Point(12, 41 * mnoj);
Controls.Add(progressBars[i]);
threads[i] = new Thread(DownLoad);
threads[i].IsBackground = true;
threads[i].Start(i);
}
}
И все в одной форме..