(5197,13,3597,2456,4,'2024-04-15 18:28:07','2024-04-15 18:28:07','06239433-93e7-4346-a788-22aa3509f962',NULL),(5198,13,3598,840,1,'2024-04-15 18:28:07','2024-04-15 18:28:07','a05be396-d559-4f5f-9e34-c6b1c14f82c9',NULL),(5199,13,3599,843,1,'2024-04-15 18:28:07','2024-04-15 18:28:07','d4e28c4c-bf08-4870-a361-fc38f29b41e0',NULL),(5200,13,3599,844,2,'2024-04-15 18:28:07','2024-04-15 18:28:07','d7534513-e7be-4395-b0b2-f7d184da5287',NULL),(5201,13,3599,845,3,'2024-04-15 18:28:07','2024-04-15 18:28:07','95959da8-77a9-4a6c-99ad-2c3c6c119ebe',NULL),(5202,13,3599,2106,4,'2024-04-15 18:28:07','2024-04-15 18:28:07','6bbbdc98-af1d-4ac1-a1b8-d7d2adad1c92',NULL),(5203,13,3599,2107,5,'2024-04-15 18:28:07','2024-04-15 18:28:07','8322b4d4-0c7b-42f3-914b-5cf0ed412ec6',NULL),(5204,13,3599,2114,6,'2024-04-15 18:28:07','2024-04-15 18:28:07','3f68bbeb-99f7-472b-bccd-f47d5d9703d4',NULL),(5205,13,3599,2127,7,'2024-04-15 18:28:07','2024-04-15 18:28:07','bf35361f-e0bc-4757-947a-0d4256eca6e4',NULL),(5206,13,3600,846,1,'2024-04-15 18:28:07','2024-04-15 18:28:07','c5cd2153-7faa-4927-bb57-88928ba79777',NULL),(5207,13,3600,847,2,'2024-04-15 18:28:07','2024-04-15 18:28:07','64c03aa9-b46c-49df-8d04-53f3a4b39798',NULL),(5208,13,3600,848,3,'2024-04-15 18:28:07','2024-04-15 18:28:07','ad017b78-96ac-48a2-8820-05dd370b8fed',NULL),(5209,13,3600,849,4,'2024-04-15 18:28:07','2024-04-15 18:28:07','92127aa9-59da-49ed-89f9-c9cfbcfd2402',NULL),(5210,13,3600,850,5,'2024-04-15 18:28:07','2024-04-15 18:28:07','5a436193-1cc4-4f1d-9220-0e1ff8247de8',NULL),(5211,13,3600,851,6,'2024-04-15 18:28:07','2024-04-15 18:28:07','1e179efc-aceb-4d67-88b9-38bda2dd9327',NULL),(5231,13,3626,837,1,'2024-04-15 18:36:12','2024-04-15 18:36:12','6bf23308-51a6-4ca9-bc26-112e39391337',NULL),(5232,13,3627,838,1,'2024-04-15 18:36:12','2024-04-15 18:36:12','15a0693a-122f-4fcf-badc-a80390ee6fc3',NULL),(5233,13,3627,839,2,'2024-04-15 18:36:12','2024-04-15 18:36:12','6f54b8cf-b7d2-4eab-9c93-64cd97e55532',NULL),(5234,13,3627,2442,3,'2024-04-15 18:36:12','2024-04-15 18:36:12','f00c44ca-7ff5-48ea-ad83-b0592741f43a',NULL),(5235,13,3627,2456,4,'2024-04-15 18:36:12','2024-04-15 18:36:12','cb45934d-ba6f-47e5-9865-9b78c41fe109',NULL),(5236,13,3628,840,1,'2024-04-15 18:36:12','2024-04-15 18:36:12','f3560c89-3090-4fc1-b36e-2dd806f3c6dd',NULL),(5237,13,3629,843,1,'2024-04-15 18:36:12','2024-04-15 18:36:12','d4460947-8d54-43e3-88ea-5c6bc80fa65e',NULL),(5238,13,3629,844,2,'2024-04-15 18:36:12','2024-04-15 18:36:12','be530546-1961-4195-a4be-165616a53891',NULL),(5239,13,3629,845,3,'2024-04-15 18:36:12','2024-04-15 18:36:12','78a5608e-2833-4b6c-8402-c731b05ff81a',NULL),(5240,13,3629,2106,4,'2024-04-15 18:36:12','2024-04-15 18:36:12','29f9b888-c698-43aa-9237-500b84bd8367',NULL),(5241,13,3629,2107,5,'2024-04-15 18:36:12','2024-04-15 18:36:12','d9977dc7-7f41-4167-aee9-d64a5d8a9906',NULL),(5242,13,3629,2114,6,'2024-04-15 18:36:12','2024-04-15 18:36:12','88e033be-45ab-4710-8bb4-421015a335df',NULL),(5243,13,3629,2127,7,'2024-04-15 18:36:12','2024-04-15 18:36:12','2295a783-f1ec-4d9d-bc3b-1f0da14077ba',NULL),(5244,13,3630,846,1,'2024-04-15 18:36:12','2024-04-15 18:36:12','a685b8bc-c7a1-48a8-af11-25b4235a3adf',NULL),(5245,13,3630,847,2,'2024-04-15 18:36:12','2024-04-15 18:36:12','f7b023c8-403c-452b-b2f4-d06f1664f18b',NULL),(5246,13,3630,848,3,'2024-04-15 18:36:12','2024-04-15 18:36:12','c0a483f1-6186-43f3-9117-56df1c1a86f3',NULL),(5247,13,3630,849,4,'2024-04-15 18:36:12','2024-04-15 18:36:12','c0896641-35af-4e99-a7c4-9aa771c963d6',NULL),(5248,13,3630,850,5,'2024-04-15 18:36:12','2024-04-15 18:36:12','c68942da-4486-4783-9195-46bbd596c8a1',NULL),(5249,13,3630,851,6,'2024-04-15 18:36:12','2024-04-15 18:36:12','87eaa24c-3f48-4849-93ce-712f4366c575',NULL),(5269,13,3675,837,1,'2024-04-15 18:39:57','2024-04-15 18:39:57','ef85334c-cb8c-40ed-9519-47e77716ceba',NULL),(5270,13,3676,838,1,'2024-04-15 18:39:57','2024-04-15 18:39:57','e9f91a84-0868-4f1a-8e98-1149467f2bca',NULL),(5271,13,3676,839,2,'2024-04-15 18:39:57','2024-04-15 18:39:57','0559ada2-a433-49a4-adbc-27c74f9d76ac',NULL),(5272,13,3676,2442,3,'2024-04-15 18:39:57','2024-04-15 18:39:57','75ee0c3e-146d-4922-8907-c05759ed4648',NULL),(5273,13,3676,2456,4,'2024-04-15 18:39:57','2024-04-15 18:39:57','8ecf01de-6c77-4846-bef3-fb78ec049cb1',NULL),(5274,13,3677,840,1,'2024-04-15 18:39:57','2024-04-15 18:39:57','024aab7d-e531-4871-852b-134f8743ca6f',NULL),(5275,13,3678,843,1,'2024-04-15 18:39:57','2024-04-15 18:39:57','7d290c5c-55c5-487a-a9be-b56be8bac017',NULL),(5276,13,3678,844,2,'2024-04-15 18:39:57','2024-04-15 18:39:57','22736e22-208d-497a-b4e5-cf89120cb268',NULL),(5277,13,3678,845,3,'2024-04-15 18:39:57','2024-04-15 18:39:57','6c910464-94ba-47c8-be6f-9004f8a3e3ee',NULL),(5278,13,3678,2106,4,'2024-04-15 18:39:57','2024-04-15 18:39:57','1aae8529-e258-4f8e-866e-9910ced3066e',NULL),(5279,13,3678,2107,5,'2024-04-15 18:39:57','2024-04-15 18:39:57','95611c67-0fe2-4179-9f4e-bb4d68238b44',NULL),(5280,13,3678,2114,6,'2024-04-15 18:39:57','2024-04-15 18:39:57','7065e28c-0e02-4184-ab5a-bb424a4cc5ef',NULL),(5281,13,3678,2127,7,'2024-04-15 18:39:57','2024-04-15 18:39:57','66eace3e-1600-48ec-9a4a-3eb71eb191dd',NULL),(5282,13,3679,846,1,'2024-04-15 18:39:57','2024-04-15 18:39:57','5d356597-93ef-4788-9a3d-4c605bf671ce',NULL),(5283,13,3679,847,2,'2024-04-15 18:39:57','2024-04-15 18:39:57','fd88ed5d-0948-4fce-9bd2-3f40f7279f7f',NULL),(5284,13,3679,848,3,'2024-04-15 18:39:57','2024-04-15 18:39:57','2972e971-0a86-4988-8951-e19511c405f4',NULL),(5285,13,3679,849,4,'2024-04-15 18:39:57','2024-04-15 18:39:57','9d0b3ccd-5960-40a6-8b7b-f7eac6af7fec',NULL),(5286,13,3679,850,5,'2024-04-15 18:39:57','2024-04-15 18:39:57','fa627f90-e9f6-4427-800f-303dc10ffefc',NULL),(5287,13,3679,851,6,'2024-04-15 18:39:57','2024-04-15 18:39:57','0110dd5e-fcbf-4d87-b8aa-443148903c37',NULL),(5307,13,3704,837,1,'2024-04-15 18:41:19','2024-04-15 18:41:19','cd6e33f1-db14-47ec-9f86-65cbd663b1e7',NULL),(5308,13,3705,838,1,'2024-04-15 18:41:19','2024-04-15 18:41:19','aa4bbede-2aea-452b-a205-a8084228a4db',NULL),(5309,13,3705,839,2,'2024-04-15 18:41:19','2024-04-15 18:41:19','4dd3a419-c1a0-45e1-ab04-13933768747f',NULL),(5310,13,3705,2442,3,'2024-04-15 18:41:19','2024-04-15 18:41:19','ebbbac92-a6c7-4fac-a4a2-c243b8b782a6',NULL),(5311,13,3705,2456,4,'2024-04-15 18:41:19','2024-04-15 18:41:19','644c8f92-b933-460c-b73d-ec1bc8292b03',NULL),(5312,13,3706,840,1,'2024-04-15 18:41:19','2024-04-15 18:41:19','2bc2dfa1-8c07-4c35-b4d6-f3c817f781da',NULL),(5313,13,3707,843,1,'2024-04-15 18:41:19','2024-04-15 18:41:19','625c2f4e-6d4a-47cc-aab1-8bad62329a19',NULL),(5314,13,3707,844,2,'2024-04-15 18:41:19','2024-04-15 18:41:19','3d1bf1f8-89b2-4786-8d4f-d07054039189',NULL),(5315,13,3707,845,3,'2024-04-15 18:41:19','2024-04-15 18:41:19','94fcc2fc-3a5d-412d-8c3c-1b5d849fa46b',NULL),(5316,13,3707,2106,4,'2024-04-15 18:41:19','2024-04-15 18:41:19','d7f82336-e856-441f-a479-6bafe5bb4c1a',NULL),(5317,13,3707,2107,5,'2024-04-15 18:41:19','2024-04-15 18:41:19','6c4b86b1-3f61-45cb-80aa-2028797e508c',NULL),(5318,13,3707,2114,6,'2024-04-15 18:41:19','2024-04-15 18:41:19','bf9a267b-4ce0-475d-ad6e-17eff8b6ef0f',NULL),(5319,13,3707,2127,7,'2024-04-15 18:41:19','2024-04-15 18:41:19','5df55947-aa19-41d3-b05b-941d4de66437',NULL),(5320,13,3708,846,1,'2024-04-15 18:41:19','2024-04-15 18:41:19','a31e73ba-351f-452a-a2f4-f3870f06d82e',NULL),(5321,13,3708,847,2,'2024-04-15 18:41:19','2024-04-15 18:41:19','a187b21a-049c-4aca-a95e-430364d6a761',NULL),(5322,13,3708,848,3,'2024-04-15 18:41:19','2024-04-15 18:41:19','ab294b7f-c2c8-4e86-a446-2abdc2911f5c',NULL),(5323,13,3708,849,4,'2024-04-15 18:41:19','2024-04-15 18:41:19','4b174785-9d2c-4c03-8215-3c3a9b704118',NULL),(5324,13,3708,850,5,'2024-04-15 18:41:19','2024-04-15 18:41:19','44dee8c0-d041-4caa-af1f-ddf40dbd5cff',NULL),(5325,13,3708,851,6,'2024-04-15 18:41:19','2024-04-15 18:41:19','88cf9df8-d9bf-43f3-8aa2-63d205f6fb8f',NULL),(5345,13,3722,837,1,'2024-04-15 18:43:25','2024-04-15 18:43:25','ffeff4d0-8ab5-4a73-a5fb-4a673165541b',NULL),(5346,13,3723,838,1,'2024-04-15 18:43:26','2024-04-15 18:43:26','60103d0a-1a84-4ab6-8af9-7255515368a8',NULL),(5347,13,3723,839,2,'2024-04-15 18:43:26','2024-04-15 18:43:26','a31a2fdd-4d24-4a4b-9451-4fc4eac5f9b1',NULL),(5348,13,3723,2442,3,'2024-04-15 18:43:26','2024-04-15 18:43:26','ae6968aa-1d87-426a-8f35-78abb253a3aa',NULL),(5349,13,3723,2456,4,'2024-04-15 18:43:26','2024-04-15 18:43:26','b3c32aac-bfe7-4248-8232-152c4586c144',NULL),(5350,13,3724,840,1,'2024-04-15 18:43:26','2024-04-15 18:43:26','61243ab7-2194-4709-b8da-bdce36ade4ca',NULL),(5351,13,3725,843,1,'2024-04-15 18:43:26','2024-04-15 18:43:26','f92d402b-b4d6-41cb-830d-d7264b0326f3',NULL),(5352,13,3725,844,2,'2024-04-15 18:43:26','2024-04-15 18:43:26','799140f3-4597-4dc0-adae-45cbac8cab0a',NULL),(5353,13,3725,845,3,'2024-04-15 18:43:26','2024-04-15 18:43:26','c8b7e854-a1e3-4e35-bc92-4269d3c502d1',NULL),(5354,13,3725,2106,4,'2024-04-15 18:43:26','2024-04-15 18:43:26','3bc24c5e-e75d-4cb3-ba5d-a156ea4f9045',NULL),(5355,13,3725,2107,5,'2024-04-15 18:43:26','2024-04-15 18:43:26','cdafaa81-3ac3-41ed-ae66-b0fdc5cd3ae2',NULL),(5356,13,3725,2114,6,'2024-04-15 18:43:26','2024-04-15 18:43:26','303a2b0f-c584-4986-93eb-9afe9e2c6c76',NULL),(5357,13,3725,2127,7,'2024-04-15 18:43:26','2024-04-15 18:43:26','aeec62f0-5789-4b20-aaf3-731e32074373',NULL),(5358,13,3726,846,1,'2024-04-15 18:43:26','2024-04-15 18:43:26','50c11866-b1c0-4f16-8808-fe2660759eee',NULL),(5359,13,3726,847,2,'2024-04-15 18:43:26','2024-04-15 18:43:26','0b9e0fad-2250-4634-8829-ee3d5d463733',NULL),(5360,13,3726,848,3,'2024-04-15 18:43:26','2024-04-15 18:43:26','f77c1eb8-0d60-4b6a-8a71-65e58d6b6ec5',NULL),(5361,13,3726,849,4,'2024-04-15 18:43:26','2024-04-15 18:43:26','dc8c4dfd-7d90-4940-af4a-636465b5e7de',NULL),(5362,13,3726,850,5,'2024-04-15 18:43:26','2024-04-15 18:43:26','edeef80a-48a2-43ab-9062-ed59a910ea05',NULL),(5363,13,3726,851,6,'2024-04-15 18:43:26','2024-04-15 18:43:26','7e6c582d-5397-44fc-860f-08cc5234c215',NULL),(5383,13,3740,837,1,'2024-04-16 15:25:13','2024-04-16 15:25:13','3ff8b709-c9f4-4f8f-ad06-164d556c307b',NULL),(5384,13,3741,838,1,'2024-04-16 15:25:13','2024-04-16 15:25:13','1eee34d7-5846-4f33-b98c-3e6158253d22',NULL),(5385,13,3741,839,2,'2024-04-16 15:25:13','2024-04-16 15:25:13','337f1698-af93-4333-a5c3-4c73b02adac1',NULL),(5386,13,3741,2442,3,'2024-04-16 15:25:13','2024-04-16 15:25:13','49ad8686-fdfe-4d5d-8de6-3ae4d9b523b4',NULL),(5387,13,3741,2456,4,'2024-04-16 15:25:13','2024-04-16 15:25:13','7d4ecd9c-9bdc-4ba1-9546-007fffd74a58',NULL),(5388,13,3742,840,1,'2024-04-16 15:25:13','2024-04-16 15:25:13','3d09ba07-9692-434c-9a5b-23a59ce61f93',NULL),(5389,13,3743,843,1,'2024-04-16 15:25:13','2024-04-16 15:25:13','1deb0a3b-3cc5-43b3-8905-fa2c68ec8002',NULL),(5390,13,3743,844,2,'2024-04-16 15:25:13','2024-04-16 15:25:13','978de5e3-4b66-4c44-b8d8-ba2e8c65208b',NULL),(5391,13,3743,845,3,'2024-04-16 15:25:13','2024-04-16 15:25:13','43e2b5aa-243e-467a-bc46-e5c7487a1d51',NULL),(5392,13,3743,2106,4,'2024-04-16 15:25:13','2024-04-16 15:25:13','d5b9294f-454e-494d-967a-fa28de087197',NULL),(5393,13,3743,2107,5,'2024-04-16 15:25:13','2024-04-16 15:25:13','c6dd6a55-1bdd-486e-9e9e-991754f1421e',NULL),(5394,13,3743,2114,6,'2024-04-16 15:25:13','2024-04-16 15:25:13','56ad177d-a9ef-4af0-b6e5-b2006b27008b',NULL),(5395,13,3743,2127,7,'2024-04-16 15:25:13','2024-04-16 15:25:13','d86ead26-b66f-40bb-af0a-0b74adf7bfcf',NULL),(5396,13,3744,846,1,'2024-04-16 15:25:13','2024-04-16 15:25:13','62ec738e-acdf-460a-aed8-b0c0a353fa87',NULL),(5397,13,3744,847,2,'2024-04-16 15:25:13','2024-04-16 15:25:13','439150cf-4b52-4d15-b97e-4ea6a77923fb',NULL),(5398,13,3744,848,3,'2024-04-16 15:25:13','2024-04-16 15:25:13','0e4ec874-6a48-403c-8b5a-e20ce81f3446',NULL),(5399,13,3744,849,4,'2024-04-16 15:25:13','2024-04-16 15:25:13','18663042-017a-45cc-a090-4db931f60358',NULL),(5400,13,3744,850,5,'2024-04-16 15:25:13','2024-04-16 15:25:13','9acc3c29-84e9-43b8-ab14-0e2815ab7d9b',NULL),(5401,13,3744,851,6,'2024-04-16 15:25:13','2024-04-16 15:25:13','cf35e0e5-bd47-4831-90fd-e8896a2e350c',NULL),(5421,13,3758,837,1,'2024-04-16 16:57:47','2024-04-16 16:57:47','d847d10a-8116-4a0f-ab22-52227add9a1d',NULL),(5422,13,3759,838,1,'2024-04-16 16:57:47','2024-04-16 16:57:47','69cb7251-0100-4170-baf3-dd4bae00088b',NULL),(5423,13,3759,839,2,'2024-04-16 16:57:47','2024-04-16 16:57:47','fbc2c7ac-ae35-4c88-b701-2035525eb002',NULL),(5424,13,3759,2442,3,'2024-04-16 16:57:47','2024-04-16 16:57:47','9f4dea14-d150-4645-8524-d514810f4130',NULL),(5425,13,3759,2456,4,'2024-04-16 16:57:47','2024-04-16 16:57:47','bce10a77-4bd5-4898-b661-d747db337ded',NULL),(5426,13,3760,840,1,'2024-04-16 16:57:47','2024-04-16 16:57:47','3aac52ab-079f-42ee-8c48-338d53424f45',NULL),(5427,13,3761,843,1,'2024-04-16 16:57:47','2024-04-16 16:57:47','b1bc2ec8-0409-47af-b261-39be2255c09f',NULL),(5428,13,3761,844,2,'2024-04-16 16:57:47','2024-04-16 16:57:47','ebdaac61-edb6-4d1f-8834-b4ac8c572c0d',NULL),(5429,13,3761,845,3,'2024-04-16 16:57:47','2024-04-16 16:57:47','573836e1-f1bb-4fb6-b8f7-2455f417329a',NULL),(5430,13,3761,2106,4,'2024-04-16 16:57:47','2024-04-16 16:57:47','62210689-6079-44f1-9ae5-9d8b9205cd24',NULL),(5431,13,3761,2107,5,'2024-04-16 16:57:47','2024-04-16 16:57:47','89c2a4d8-2a25-49c7-8e0d-acaade6314e5',NULL),(5432,13,3761,2114,6,'2024-04-16 16:57:47','2024-04-16 16:57:47','59297c8a-ce0e-4c33-a85b-b3fcb2d7f193',NULL),(5433,13,3761,2127,7,'2024-04-16 16:57:47','2024-04-16 16:57:47','5e709b54-02c0-4a50-a114-a633514b8a2c',NULL),(5434,13,3762,846,1,'2024-04-16 16:57:47','2024-04-16 16:57:47','864ab2d9-fd18-47d4-bc90-dbfa8d2702df',NULL),(5435,13,3762,847,2,'2024-04-16 16:57:47','2024-04-16 16:57:47','d7a80ee3-6434-4cd6-afdb-841ce5f40d63',NULL),(5436,13,3762,848,3,'2024-04-16 16:57:47','2024-04-16 16:57:47','d220b7b8-a433-4abd-8949-408f80deadb8',NULL),(5437,13,3762,849,4,'2024-04-16 16:57:47','2024-04-16 16:57:47','eb59f321-e998-4177-8c2a-dc11780f8cb4',NULL),(5438,13,3762,850,5,'2024-04-16 16:57:47','2024-04-16 16:57:47','f3fdc783-4235-4bef-8c32-4743848caf2d',NULL),(5439,13,3762,851,6,'2024-04-16 16:57:47','2024-04-16 16:57:47','609d28a7-4224-4be3-9b30-9c188b85d12b',NULL),(5465,13,14,3766,5,'2024-04-16 17:03:42','2024-04-16 17:03:42','e9635cb8-1fef-4198-b341-854545d30e31',NULL),(5466,13,14,3776,6,'2024-04-16 17:03:42','2024-04-16 17:03:42','f8a3b008-1675-40f0-8e2f-2321c31e5f41',NULL),(5467,13,14,3777,7,'2024-04-16 17:03:42','2024-04-16 17:03:42','09fb54fa-79c2-4fdf-81ce-a5c5a2916148',NULL),(5468,13,14,3778,8,'2024-04-16 17:03:42','2024-04-16 17:03:42','3c54a7af-f898-4f1b-9c94-8e2636ef508c',NULL),(5469,13,14,3779,9,'2024-04-16 17:03:42','2024-04-16 17:03:42','0c916dc6-6afa-4950-9055-7d6160d6f430',NULL),(5470,13,14,3780,10,'2024-04-16 17:03:42','2024-04-16 17:03:42','1faa36fc-ab83-41ed-a221-3b2c128446f2',NULL),(5471,13,3782,837,1,'2024-04-16 17:03:42','2024-04-16 17:03:42','5392a593-da31-4e58-8824-a15a03962f02',NULL),(5472,13,3783,838,1,'2024-04-16 17:03:42','2024-04-16 17:03:42','060035af-350f-4192-8a72-a3db8cb2b85b',NULL),(5473,13,3783,839,2,'2024-04-16 17:03:42','2024-04-16 17:03:42','ed80fcdf-9021-4b9f-8504-a54eff25e110',NULL),(5474,13,3783,2442,3,'2024-04-16 17:03:42','2024-04-16 17:03:42','5c5c6124-f1a0-467b-b094-41e6b8854e95',NULL),(5475,13,3783,2456,4,'2024-04-16 17:03:42','2024-04-16 17:03:42','2ec1769a-5841-4c70-adbc-053586386ea1',NULL),(5476,13,3783,3766,5,'2024-04-16 17:03:42','2024-04-16 17:03:42','7c2d949c-5fe8-4b6c-a96e-3330708c14e8',NULL),(5477,13,3783,3776,6,'2024-04-16 17:03:42','2024-04-16 17:03:42','8d29443b-f94c-43ef-b3dd-ac69f4a45121',NULL),(5478,13,3783,3777,7,'2024-04-16 17:03:42','2024-04-16 17:03:42','eba5d1da-f3f9-4f0f-9afa-dc1ab220e70c',NULL),(5479,13,3783,3778,8,'2024-04-16 17:03:42','2024-04-16 17:03:42','742b24cd-9c83-4a74-8b5e-f27f7143bf5b',NULL),(5480,13,3783,3779,9,'2024-04-16 17:03:42','2024-04-16 17:03:42','f260a19b-6cd3-4b10-9ef3-6cc92d57657a',NULL),(5481,13,3783,3780,10,'2024-04-16 17:03:42','2024-04-16 17:03:42','60d6893b-71fc-476d-94b0-939e867740a2',NULL),(5482,13,3784,840,1,'2024-04-16 17:03:42','2024-04-16 17:03:42','23b37318-a514-4957-b421-9481973fa5b3',NULL),(5483,13,3785,843,1,'2024-04-16 17:03:42','2024-04-16 17:03:42','4369f69b-d74c-4c71-89d7-43ef209a9813',NULL),(5484,13,3785,844,2,'2024-04-16 17:03:42','2024-04-16 17:03:42','cf80059b-d7d6-4682-83d2-ec0d0422e544',NULL),(5485,13,3785,845,3,'2024-04-16 17:03:42','2024-04-16 17:03:42','c42f9349-dd0e-4301-abc9-da70e9e7fe1b',NULL),(5486,13,3785,2106,4,'2024-04-16 17:03:42','2024-04-16 17:03:42','2b2317bb-8b4b-44fc-a972-fadf480a012f',NULL),(5487,13,3785,2107,5,'2024-04-16 17:03:42','2024-04-16 17:03:42','f6085597-1dce-4e84-aeab-12e7663efc25',NULL),(5488,13,3785,2114,6,'2024-04-16 17:03:42','2024-04-16 17:03:42','fae81b11-70ad-4dee-9579-3b5581f1c071',NULL),(5489,13,3785,2127,7,'2024-04-16 17:03:42','2024-04-16 17:03:42','6f377eec-c2f9-4c3c-b29a-893fc4c39a2c',NULL),(5490,13,3786,846,1,'2024-04-16 17:03:42','2024-04-16 17:03:42','924483a2-143c-40f0-b552-20c26d6e406f',NULL),(5491,13,3786,847,2,'2024-04-16 17:03:42','2024-04-16 17:03:42','38f0df08-2493-47c2-8c89-52246645a34a',NULL),(5492,13,3786,848,3,'2024-04-16 17:03:42','2024-04-16 17:03:42','86f502fd-11a3-4d4e-8f6d-0b3e917f241b',NULL),(5493,13,3786,849,4,'2024-04-16 17:03:42','2024-04-16 17:03:42','f6df312e-fc26-46bc-ad60-65665a393094',NULL),(5494,13,3786,850,5,'2024-04-16 17:03:42','2024-04-16 17:03:42','fb393f78-e8b7-452b-9b6d-7f79a885f04b',NULL),(5495,13,3786,851,6,'2024-04-16 17:03:42','2024-04-16 17:03:42','a744869b-b2b4-41f9-90d5-1bb31569be2b',NULL),(5521,13,3800,837,1,'2024-04-16 17:10:04','2024-04-16 17:10:04','5f0b2189-2890-4cc1-b7fb-8cb94e62ea6e',NULL),(5522,13,3801,838,1,'2024-04-16 17:10:04','2024-04-16 17:10:04','2694ebdf-19a6-40d4-a993-fad7c61ff805',NULL),(5523,13,3801,839,2,'2024-04-16 17:10:04','2024-04-16 17:10:04','99e1d50b-d846-4b6f-b68e-efe2240c3b9e',NULL),(5524,13,3801,2442,3,'2024-04-16 17:10:04','2024-04-16 17:10:04','6354628c-ea3c-492e-ac85-ac9a7931a448',NULL),(5525,13,3801,2456,4,'2024-04-16 17:10:04','2024-04-16 17:10:04','ab4e92f5-a670-4d88-bf47-99c7d3a26ef4',NULL),(5526,13,3801,3766,5,'2024-04-16 17:10:04','2024-04-16 17:10:04','d3616740-c1dd-4d45-a9e8-5ab10b7e1582',NULL),(5527,13,3801,3776,6,'2024-04-16 17:10:04','2024-04-16 17:10:04','f977e14e-45d4-4199-8894-464fcaa29687',NULL),(5528,13,3801,3777,7,'2024-04-16 17:10:04','2024-04-16 17:10:04','55ee5cdb-69d5-4535-906e-b6b7bac8d928',NULL),(5529,13,3801,3778,8,'2024-04-16 17:10:04','2024-04-16 17:10:04','94155197-fd07-4c0b-9ae6-e4fe84b6a2db',NULL),(5530,13,3801,3779,9,'2024-04-16 17:10:04','2024-04-16 17:10:04','5b80b620-728b-4b6a-aad4-0c3bd9fdf18d',NULL),(5531,13,3801,3780,10,'2024-04-16 17:10:04','2024-04-16 17:10:04','1d67eede-68a7-4cad-8bbf-4a5310678c11',NULL),(5532,13,3802,840,1,'2024-04-16 17:10:04','2024-04-16 17:10:04','c90be4de-be47-4f30-8a12-8ea016323f38',NULL),(5533,13,3803,843,1,'2024-04-16 17:10:04','2024-04-16 17:10:04','b80a1282-cf43-41eb-9111-4efa6cdf6526',NULL),(5534,13,3803,844,2,'2024-04-16 17:10:04','2024-04-16 17:10:04','c92a5d98-40f7-4c84-b3ea-6dbfb52fda12',NULL),(5535,13,3803,845,3,'2024-04-16 17:10:04','2024-04-16 17:10:04','d91536de-7333-4aa5-a067-935cc213a2f3',NULL),(5536,13,3803,2106,4,'2024-04-16 17:10:04','2024-04-16 17:10:04','7c4c3fac-d1ee-46e5-bd0c-02c49b5f6bf9',NULL),(5537,13,3803,2107,5,'2024-04-16 17:10:04','2024-04-16 17:10:04','8abbdb87-38c8-4d20-8546-c06df36d8ef1',NULL),(5538,13,3803,2114,6,'2024-04-16 17:10:04','2024-04-16 17:10:04','588b5dd8-9c33-438b-9742-f17fda5dfc58',NULL),(5539,13,3803,2127,7,'2024-04-16 17:10:04','2024-04-16 17:10:04','9c69b3bd-1aa6-4acc-839e-7a5cd487994f',NULL),(5540,13,3804,846,1,'2024-04-16 17:10:04','2024-04-16 17:10:04','4ffd89bc-e4f9-403c-bad2-5f98ebc4678f',NULL),(5541,13,3804,847,2,'2024-04-16 17:10:04','2024-04-16 17:10:04','880f8f7c-3650-4d9b-b719-6ed9fb17f616',NULL),(5542,13,3804,848,3,'2024-04-16 17:10:04','2024-04-16 17:10:04','f6a2c9ca-b309-4e4d-aabb-ca4a18caa6e0',NULL),(5543,13,3804,849,4,'2024-04-16 17:10:04','2024-04-16 17:10:04','79bc447b-3c57-449e-98f9-1fe7fceeb961',NULL),(5544,13,3804,850,5,'2024-04-16 17:10:04','2024-04-16 17:10:04','aa72bfc3-0ac8-4e8d-8c0f-1033b10f07f6',NULL),(5545,13,3804,851,6,'2024-04-16 17:10:04','2024-04-16 17:10:04','d0e53fd7-b2c0-47cc-9ead-45fbe11f932a',NULL),(5571,13,3818,837,1,'2024-04-16 17:10:39','2024-04-16 17:10:39','3eed4014-b20e-48ad-9590-435f96eca410',NULL),(5572,13,3819,838,1,'2024-04-16 17:10:39','2024-04-16 17:10:39','de7bea33-8d26-4b51-b228-7f96c273f39d',NULL),(5573,13,3819,839,2,'2024-04-16 17:10:39','2024-04-16 17:10:39','ad6f0508-4b3b-4ee5-ac9a-bd4b9d651443',NULL),(5574,13,3819,2442,3,'2024-04-16 17:10:39','2024-04-16 17:10:39','019d858c-d3ff-4001-970f-f26c6d6f88e1',NULL),(5575,13,3819,2456,4,'2024-04-16 17:10:39','2024-04-16 17:10:39','cde6cb74-1a4c-4983-a05b-15da33c6d505',NULL),(5576,13,3819,3766,5,'2024-04-16 17:10:39','2024-04-16 17:10:39','b9d61e32-cc8d-43c8-8506-7d1b843fd19f',NULL),(5577,13,3819,3776,6,'2024-04-16 17:10:39','2024-04-16 17:10:39','899fa882-d03a-45b8-a1de-c197b6b14df8',NULL),(5578,13,3819,3777,7,'2024-04-16 17:10:39','2024-04-16 17:10:39','e2b21dbb-5c1e-4a48-a265-faeb323d78b0',NULL),(5579,13,3819,3778,8,'2024-04-16 17:10:39','2024-04-16 17:10:39','3b2c554b-dd15-46b5-ab8f-0f3c66d89d82',NULL),(5580,13,3819,3779,9,'2024-04-16 17:10:39','2024-04-16 17:10:39','c36ad1e3-3347-4536-b116-40c8be4745c1',NULL),(5581,13,3819,3780,10,'2024-04-16 17:10:39','2024-04-16 17:10:39','83de098d-8b5a-4225-908b-ad06b39731c7',NULL),(5582,13,3820,840,1,'2024-04-16 17:10:39','2024-04-16 17:10:39','12927d66-34cf-42a5-b67d-02bd328a6d50',NULL),(5583,13,3821,843,1,'2024-04-16 17:10:39','2024-04-16 17:10:39','3c417460-faac-472c-9d64-7e3f65167445',NULL),(5584,13,3821,844,2,'2024-04-16 17:10:39','2024-04-16 17:10:39','eb47bafa-ea16-417f-9eb7-504e378ea4f4',NULL),(5585,13,3821,845,3,'2024-04-16 17:10:39','2024-04-16 17:10:39','73a4be1e-43e4-4520-87d1-287b48b29bcc',NULL),(5586,13,3821,2106,4,'2024-04-16 17:10:39','2024-04-16 17:10:39','582649af-f1fd-42bf-a3e5-d43a0ea50f49',NULL),(5587,13,3821,2107,5,'2024-04-16 17:10:39','2024-04-16 17:10:39','6fc8b2b4-f43d-4b6b-ad84-3c4a19bcd745',NULL),(5588,13,3821,2114,6,'2024-04-16 17:10:39','2024-04-16 17:10:39','433b99dd-a554-4a37-857c-af74447c22d1',NULL),(5589,13,3821,2127,7,'2024-04-16 17:10:39','2024-04-16 17:10:39','64310471-cec8-4c90-8528-0e779431b869',NULL),(5590,13,3822,846,1,'2024-04-16 17:10:39','2024-04-16 17:10:39','8e9ca382-b509-4969-a72c-0a15263888a4',NULL),(5591,13,3822,847,2,'2024-04-16 17:10:39','2024-04-16 17:10:39','9f0f71ee-0809-4969-baba-b09ed7f42fc5',NULL),(5592,13,3822,848,3,'2024-04-16 17:10:39','2024-04-16 17:10:39','9cc80ba5-3569-41fc-b777-81f1c64802ad',NULL),(5593,13,3822,849,4,'2024-04-16 17:10:39','2024-04-16 17:10:39','f8b2c4c2-62c8-42ba-a007-bb0dfc523663',NULL),(5594,13,3822,850,5,'2024-04-16 17:10:39','2024-04-16 17:10:39','68c96db3-d7f3-49d4-b3a1-6b1d10b51360',NULL),(5595,13,3822,851,6,'2024-04-16 17:10:39','2024-04-16 17:10:39','80a58a4e-f5ef-4dc0-8fed-72195593e533',NULL),(5624,13,13,3827,2,'2024-04-16 17:16:09','2024-04-16 17:16:26','54a83bc1-0cd5-4471-b2e5-e63a1372d765',NULL),(5625,13,3838,837,1,'2024-04-16 17:16:09','2024-04-16 17:16:09','26b47829-59a5-4ec0-a948-66bf6e3a07d9',NULL),(5626,13,3838,3826,2,'2024-04-16 17:16:09','2024-04-16 17:16:09','835ddbf8-3665-4523-b59c-c72093924a01',NULL),(5627,13,3838,3827,3,'2024-04-16 17:16:09','2024-04-16 17:16:09','a232ec61-162d-408f-a9b9-7046e24f7714',NULL),(5628,13,3839,838,1,'2024-04-16 17:16:09','2024-04-16 17:16:09','6afab326-f857-44c7-8b6d-9e8bb697c1da',NULL),(5629,13,3839,839,2,'2024-04-16 17:16:09','2024-04-16 17:16:09','7096615d-e40f-4022-86bc-d883f4d8b964',NULL),(5630,13,3839,2442,3,'2024-04-16 17:16:09','2024-04-16 17:16:09','8a8181fe-e45d-4458-874a-619d30327aa2',NULL),(5631,13,3839,2456,4,'2024-04-16 17:16:09','2024-04-16 17:16:09','a13d5b92-6014-41cf-a19f-ff86581a22b6',NULL),(5632,13,3839,3766,5,'2024-04-16 17:16:09','2024-04-16 17:16:09','02181106-3bd7-4fdf-b3c2-fc08f490d160',NULL),(5633,13,3839,3776,6,'2024-04-16 17:16:09','2024-04-16 17:16:09','6c2f6a59-fd8d-4ad7-9fbc-038e509670bd',NULL),(5634,13,3839,3777,7,'2024-04-16 17:16:09','2024-04-16 17:16:09','1ec36e60-95b5-440d-9e0d-908979f13f29',NULL),(5635,13,3839,3778,8,'2024-04-16 17:16:09','2024-04-16 17:16:09','964d4405-fa85-43fb-921f-bd8bb0263ebc',NULL),(5636,13,3839,3779,9,'2024-04-16 17:16:09','2024-04-16 17:16:09','ffd50633-ab9b-4478-b804-53d38e71bb11',NULL),(5637,13,3839,3780,10,'2024-04-16 17:16:09','2024-04-16 17:16:09','94f73aab-8dac-4268-9a26-3aa8f056ad97',NULL),(5638,13,3840,840,1,'2024-04-16 17:16:09','2024-04-16 17:16:09','30304912-5160-4339-9160-d9638496f660',NULL),(5639,13,3841,843,1,'2024-04-16 17:16:09','2024-04-16 17:16:09','e832f573-f88b-4402-9d91-129bd5e44cc5',NULL),(5640,13,3841,844,2,'2024-04-16 17:16:09','2024-04-16 17:16:09','2f2eb6f6-f374-41e0-9a40-563b6635e7bf',NULL),(5641,13,3841,845,3,'2024-04-16 17:16:09','2024-04-16 17:16:09','0dc08cef-4fec-4565-bdc7-0ed4b1c5fa95',NULL),(5642,13,3841,2106,4,'2024-04-16 17:16:09','2024-04-16 17:16:09','9d06cf7d-b0b2-4f1b-8fb6-c812f11f9797',NULL),(5643,13,3841,2107,5,'2024-04-16 17:16:09','2024-04-16 17:16:09','35b4be48-bdd3-4467-9c28-a12530e23520',NULL),(5644,13,3841,2114,6,'2024-04-16 17:16:09','2024-04-16 17:16:09','f729998b-946a-4dcc-8100-4681695ab2c7',NULL),(5645,13,3841,2127,7,'2024-04-16 17:16:09','2024-04-16 17:16:09','a0b7a0c5-34cb-466c-8423-23bf4bdf194b',NULL),(5646,13,3842,846,1,'2024-04-16 17:16:09','2024-04-16 17:16:09','5e142cf9-5745-47c5-bd2b-7e9d2593e812',NULL),(5647,13,3842,847,2,'2024-04-16 17:16:09','2024-04-16 17:16:09','ef339eb2-6b16-44f6-8551-747b36dbf681',NULL),(5648,13,3842,848,3,'2024-04-16 17:16:09','2024-04-16 17:16:09','318e1d98-e98d-45dc-b5d1-67e9a5c23d88',NULL),(5649,13,3842,849,4,'2024-04-16 17:16:09','2024-04-16 17:16:09','111525c9-6ff1-46fb-ab22-31a3c7763adf',NULL),(5650,13,3842,850,5,'2024-04-16 17:16:09','2024-04-16 17:16:09','e444e5fd-61d6-4b0a-b9e2-afe2b6a28db7',NULL),(5651,13,3842,851,6,'2024-04-16 17:16:09','2024-04-16 17:16:09','8024368d-2b30-4059-8afc-d3645067a0f4',NULL),(5679,13,3856,837,1,'2024-04-16 17:16:26','2024-04-16 17:16:26','1f379787-acc4-4308-9349-0a833ebdfc77',NULL),(5680,13,3856,3827,2,'2024-04-16 17:16:26','2024-04-16 17:16:26','c273aee6-a93e-41ca-bbc3-cd31c37786d3',NULL),(5681,13,3857,838,1,'2024-04-16 17:16:26','2024-04-16 17:16:26','1ef00db5-0463-4e65-9311-2889e3b5761b',NULL),(5682,13,3857,839,2,'2024-04-16 17:16:26','2024-04-16 17:16:26','82482cd0-7a8b-474c-8f78-412bf679b1a1',NULL),(5683,13,3857,2442,3,'2024-04-16 17:16:26','2024-04-16 17:16:26','4b4291fc-1bdd-4333-8d2c-e25bcb3fc562',NULL),(5684,13,3857,2456,4,'2024-04-16 17:16:26','2024-04-16 17:16:26','7ee3991e-7e86-47a3-80c2-0b4c6db14f16',NULL),(5685,13,3857,3766,5,'2024-04-16 17:16:26','2024-04-16 17:16:26','99e76bd1-70c8-4c98-af35-f970221083de',NULL),(5686,13,3857,3776,6,'2024-04-16 17:16:26','2024-04-16 17:16:26','00b4ab3d-fa48-403d-a3cc-6c49c37a7580',NULL),(5687,13,3857,3777,7,'2024-04-16 17:16:26','2024-04-16 17:16:26','8fcd7a18-e506-4f2f-8738-024de14c387e',NULL),(5688,13,3857,3778,8,'2024-04-16 17:16:26','2024-04-16 17:16:26','5888473a-8dd9-4e9e-adaf-ed1f407f0c21',NULL),(5689,13,3857,3779,9,'2024-04-16 17:16:26','2024-04-16 17:16:26','e4ebd11b-8818-406b-8593-2a42ae0c7191',NULL),(5690,13,3857,3780,10,'2024-04-16 17:16:26','2024-04-16 17:16:26','728aaee3-5ca5-49c5-ab95-57a4797d5361',NULL),(5691,13,3858,840,1,'2024-04-16 17:16:26','2024-04-16 17:16:26','7edab36d-8a2d-4aab-bd1d-b4f20d738817',NULL),(5692,13,3859,843,1,'2024-04-16 17:16:27','2024-04-16 17:16:27','04a9c564-fec2-4540-a836-8d50c9fe27b2',NULL),(5693,13,3859,844,2,'2024-04-16 17:16:27','2024-04-16 17:16:27','411b1ca0-5980-44b9-81d4-511a10ca6ecb',NULL),(5694,13,3859,845,3,'2024-04-16 17:16:27','2024-04-16 17:16:27','d3f3a1d4-1209-42fd-baba-2c0da646fc60',NULL),(5695,13,3859,2106,4,'2024-04-16 17:16:27','2024-04-16 17:16:27','f5d4f0da-ae14-4559-9936-942c963f4e65',NULL),(5696,13,3859,2107,5,'2024-04-16 17:16:27','2024-04-16 17:16:27','1872731e-c6a0-448d-bc7f-6bd8297fc9dd',NULL),(5697,13,3859,2114,6,'2024-04-16 17:16:27','2024-04-16 17:16:27','5d21ef4e-79e6-4153-82eb-35f50f4acdad',NULL),(5698,13,3859,2127,7,'2024-04-16 17:16:27','2024-04-16 17:16:27','28f89faa-053f-436f-a53c-8024e6ab992d',NULL),(5699,13,3860,846,1,'2024-04-16 17:16:27','2024-04-16 17:16:27','1ad1f020-2cef-4d51-a986-ef036e9f9c07',NULL),(5700,13,3860,847,2,'2024-04-16 17:16:27','2024-04-16 17:16:27','fe8b8109-a34b-44f8-a7d9-5d81c588ec1d',NULL),(5701,13,3860,848,3,'2024-04-16 17:16:27','2024-04-16 17:16:27','404ef0d2-96af-44ab-aaa8-e05603c27d4a',NULL),(5702,13,3860,849,4,'2024-04-16 17:16:27','2024-04-16 17:16:27','dbb08c67-4b29-449a-83d0-507899246d13',NULL),(5703,13,3860,850,5,'2024-04-16 17:16:27','2024-04-16 17:16:27','0168f264-f677-4b04-b139-be0d0b6be8f5',NULL),(5704,13,3860,851,6,'2024-04-16 17:16:27','2024-04-16 17:16:27','cf14e942-e6fd-4b48-9c1d-e5c6c811972f',NULL),(5732,13,13,3864,3,'2024-04-16 17:29:55','2024-04-16 17:29:55','ec52f479-a41c-450e-a487-8ebfb5d4d18d',NULL),(5733,13,3875,837,1,'2024-04-16 17:29:55','2024-04-16 17:29:55','c883bbc7-aa78-4358-9236-727eadc98b0c',NULL),(5734,13,3875,3827,2,'2024-04-16 17:29:55','2024-04-16 17:29:55','38c06347-2f21-43b5-8047-c007c35028a3',NULL),(5735,13,3875,3864,3,'2024-04-16 17:29:55','2024-04-16 17:29:55','e08995fe-03de-4ebb-85f1-0b3fd4b966cd',NULL),(5736,13,3876,838,1,'2024-04-16 17:29:55','2024-04-16 17:29:55','369a3162-e902-4be9-946e-072361a11b6a',NULL),(5737,13,3876,839,2,'2024-04-16 17:29:55','2024-04-16 17:29:55','a1e8d202-6f90-4ffe-a208-35625d0f6294',NULL),(5738,13,3876,2442,3,'2024-04-16 17:29:55','2024-04-16 17:29:55','1f9aeb92-3410-4e0c-9eac-78ff2b493830',NULL),(5739,13,3876,2456,4,'2024-04-16 17:29:55','2024-04-16 17:29:55','1221d85b-1577-47d2-a7a2-116d6eb394a2',NULL),(5740,13,3876,3766,5,'2024-04-16 17:29:55','2024-04-16 17:29:55','57fc5219-0dbf-42dc-a1ac-35225bc7939f',NULL),(5741,13,3876,3776,6,'2024-04-16 17:29:55','2024-04-16 17:29:55','3f834ac1-d043-4360-86df-775332e5e5db',NULL),(5742,13,3876,3777,7,'2024-04-16 17:29:55','2024-04-16 17:29:55','57b5e75e-e9e4-46e8-b704-dd06b771621a',NULL),(5743,13,3876,3778,8,'2024-04-16 17:29:55','2024-04-16 17:29:55','58dfff4e-a078-405a-b221-9b649917974d',NULL),(5744,13,3876,3779,9,'2024-04-16 17:29:55','2024-04-16 17:29:55','44c8d475-e006-4d6f-bc97-38cc67aca2a6',NULL),(5745,13,3876,3780,10,'2024-04-16 17:29:55','2024-04-16 17:29:55','777e5966-e039-41a1-b9f4-b0d458d19ac7',NULL),(5746,13,3877,840,1,'2024-04-16 17:29:55','2024-04-16 17:29:55','97794be0-7d1b-4fc1-a082-f0636906af72',NULL),(5747,13,3878,843,1,'2024-04-16 17:29:55','2024-04-16 17:29:55','0bba7baa-5c92-4491-a3e3-7492dffeaba9',NULL),(5748,13,3878,844,2,'2024-04-16 17:29:55','2024-04-16 17:29:55','c1c6a96e-5c45-4fe3-89a7-0e57e8df5c34',NULL),(5749,13,3878,845,3,'2024-04-16 17:29:55','2024-04-16 17:29:55','74709afc-abd5-4a08-bb19-3142beae2f5b',NULL),(5750,13,3878,2106,4,'2024-04-16 17:29:55','2024-04-16 17:29:55','a2c9ebce-93ba-4bf7-b299-43c0b485ebf6',NULL),(5751,13,3878,2107,5,'2024-04-16 17:29:55','2024-04-16 17:29:55','3b6c42e7-12ab-484d-b0b0-630a3b1c18f7',NULL),(5752,13,3878,2114,6,'2024-04-16 17:29:55','2024-04-16 17:29:55','705fe5da-f936-403d-9383-debe1eff30e1',NULL),(5753,13,3878,2127,7,'2024-04-16 17:29:55','2024-04-16 17:29:55','b5393144-8014-4ebb-9806-30902e4e0c48',NULL),(5754,13,3879,846,1,'2024-04-16 17:29:55','2024-04-16 17:29:55','b3c66716-5d22-4c32-8df2-fd367c9c6b61',NULL),(5755,13,3879,847,2,'2024-04-16 17:29:55','2024-04-16 17:29:55','4c4037ec-4a2a-430e-baa0-49dfc82106c7',NULL),(5756,13,3879,848,3,'2024-04-16 17:29:55','2024-04-16 17:29:55','95d547fc-32c4-4646-b8bd-db8825c0c201',NULL),(5757,13,3879,849,4,'2024-04-16 17:29:55','2024-04-16 17:29:55','3c732e28-9710-4009-9dab-bcf418eeef65',NULL),(5758,13,3879,850,5,'2024-04-16 17:29:55','2024-04-16 17:29:55','a940eaa3-0ccd-4d3f-adf2-a3edec682fef',NULL),(5759,13,3879,851,6,'2024-04-16 17:29:55','2024-04-16 17:29:55','8d65f541-6258-4844-8f16-ff706dc0d5e8',NULL),(5787,13,3893,837,1,'2024-04-16 17:50:17','2024-04-16 17:50:17','a16a4d67-591c-480e-ab20-23c35c50b65e',NULL),(5788,13,3893,3827,2,'2024-04-16 17:50:17','2024-04-16 17:50:17','bb6fc184-89fb-4045-bb89-e4156f00d0be',NULL),(5789,13,3893,3864,3,'2024-04-16 17:50:17','2024-04-16 17:50:17','5946bdfc-1aac-45a4-a9a4-0845e66e912c',NULL),(5790,13,3894,838,1,'2024-04-16 17:50:17','2024-04-16 17:50:17','42dd991d-4ef8-43a5-a6bb-12f613e63b79',NULL),(5791,13,3894,839,2,'2024-04-16 17:50:17','2024-04-16 17:50:17','7198b46a-9e21-4566-99cd-372d5d8aee0c',NULL),(5792,13,3894,2442,3,'2024-04-16 17:50:17','2024-04-16 17:50:17','7d2fe67e-4075-4210-9325-04d3a69c6bf1',NULL),(5793,13,3894,2456,4,'2024-04-16 17:50:17','2024-04-16 17:50:17','be9d374d-5079-4084-aee8-7558b26cbec0',NULL),(5794,13,3894,3766,5,'2024-04-16 17:50:17','2024-04-16 17:50:17','742cff13-a72d-4e13-895e-4ab1a204e9dd',NULL),(5795,13,3894,3776,6,'2024-04-16 17:50:17','2024-04-16 17:50:17','b406b879-fcfb-482a-aebd-ec1db5a78222',NULL),(5796,13,3894,3777,7,'2024-04-16 17:50:17','2024-04-16 17:50:17','8f5b71a1-4060-4534-a434-fe9c813252d4',NULL),(5797,13,3894,3778,8,'2024-04-16 17:50:17','2024-04-16 17:50:17','e5f0d8e1-46cc-4bf7-8b52-7e68790499b8',NULL),(5798,13,3894,3779,9,'2024-04-16 17:50:17','2024-04-16 17:50:17','5e6bd80c-da0f-4cfa-83f1-c1c4141519f2',NULL),(5799,13,3894,3780,10,'2024-04-16 17:50:17','2024-04-16 17:50:17','b05c54c5-7b8f-4723-8342-77cb0850acb5',NULL),(5800,13,3895,840,1,'2024-04-16 17:50:17','2024-04-16 17:50:17','0fc09e98-6da1-416e-b9fc-a9ee77beef7d',NULL),(5801,13,3896,843,1,'2024-04-16 17:50:17','2024-04-16 17:50:17','49e7401d-b78e-4372-b260-b09e3f62a087',NULL),(5802,13,3896,844,2,'2024-04-16 17:50:17','2024-04-16 17:50:17','a927de66-24d9-4995-97c1-6eebf52bb9b9',NULL),(5803,13,3896,845,3,'2024-04-16 17:50:17','2024-04-16 17:50:17','a1f0434a-93a9-46b5-8a56-754b5881fabe',NULL),(5804,13,3896,2106,4,'2024-04-16 17:50:17','2024-04-16 17:50:17','57a9bb64-2f46-404f-89ea-591ffb811b25',NULL),(5805,13,3896,2107,5,'2024-04-16 17:50:17','2024-04-16 17:50:17','76cc7eeb-69b5-4196-b001-5ebbb60b398a',NULL),(5806,13,3896,2114,6,'2024-04-16 17:50:17','2024-04-16 17:50:17','96f60958-1fff-4b08-81ce-05c018ad6758',NULL),(5807,13,3896,2127,7,'2024-04-16 17:50:17','2024-04-16 17:50:17','63d9c7d2-599d-4885-82f0-17dc44518253',NULL),(5808,13,3897,846,1,'2024-04-16 17:50:17','2024-04-16 17:50:17','1bc3840f-dd40-4873-a777-d4e65c959bbd',NULL),(5809,13,3897,847,2,'2024-04-16 17:50:17','2024-04-16 17:50:17','4ed209c2-86f5-4e9b-a1e3-73753f6f2f12',NULL),(5810,13,3897,848,3,'2024-04-16 17:50:17','2024-04-16 17:50:17','129ce525-a371-4281-ae3e-271950a5e50b',NULL),(5811,13,3897,849,4,'2024-04-16 17:50:17','2024-04-16 17:50:17','e1f75f90-c668-466d-9050-679f9b9e06ca',NULL),(5812,13,3897,850,5,'2024-04-16 17:50:17','2024-04-16 17:50:17','d34f3e8c-6399-4d13-b543-196b7aae772e',NULL),(5813,13,3897,851,6,'2024-04-16 17:50:17','2024-04-16 17:50:17','737c0e32-3948-4440-80fc-f0d4f1419a42',NULL),(5841,13,3911,837,1,'2024-04-16 17:50:34','2024-04-16 17:50:34','d6d7b475-b6fa-4b81-a5ac-4d8290eeb43e',NULL),(5842,13,3911,3827,2,'2024-04-16 17:50:34','2024-04-16 17:50:34','a47fba69-9d6b-4b04-8dec-2fe762789d99',NULL),(5843,13,3911,3864,3,'2024-04-16 17:50:34','2024-04-16 17:50:34','f6a996d6-2cd5-41c4-a35a-ca2c9a7927f0',NULL),(5844,13,3912,838,1,'2024-04-16 17:50:34','2024-04-16 17:50:34','94ffa7cc-f7a7-4265-9bd8-b3e29cf425eb',NULL),(5845,13,3912,839,2,'2024-04-16 17:50:34','2024-04-16 17:50:34','939c3f47-38e2-4ab2-9d42-c7c056a1c9ee',NULL),(5846,13,3912,2442,3,'2024-04-16 17:50:34','2024-04-16 17:50:34','ad5d8855-528a-4bcb-877d-b94de6659208',NULL),(5847,13,3912,2456,4,'2024-04-16 17:50:34','2024-04-16 17:50:34','780b7a90-0c1e-4d08-8ef4-52975190efee',NULL),(5848,13,3912,3766,5,'2024-04-16 17:50:34','2024-04-16 17:50:34','17b824bc-9614-4a02-b25e-fa4fd77c8308',NULL),(5849,13,3912,3776,6,'2024-04-16 17:50:34','2024-04-16 17:50:34','870f69ab-d804-41a4-9851-a3bc228d89d7',NULL),(5850,13,3912,3777,7,'2024-04-16 17:50:34','2024-04-16 17:50:34','d2c95a31-c5dd-424e-91e1-13dabd8954b9',NULL),(5851,13,3912,3778,8,'2024-04-16 17:50:34','2024-04-16 17:50:34','36d6a447-ffc4-4ef8-89e3-ece633370122',NULL),(5852,13,3912,3779,9,'2024-04-16 17:50:34','2024-04-16 17:50:34','0ee61447-12fc-400e-941f-a4fa14705380',NULL),(5853,13,3912,3780,10,'2024-04-16 17:50:34','2024-04-16 17:50:34','6c669ccd-3361-4680-b59e-95c5ca1cdbc8',NULL),(5854,13,3913,840,1,'2024-04-16 17:50:34','2024-04-16 17:50:34','36fce65e-8eb7-4aa3-a271-0a1f5aab6e68',NULL),(5855,13,3914,843,1,'2024-04-16 17:50:34','2024-04-16 17:50:34','787ad493-1f73-4fe8-9946-80f78c1ff8da',NULL),(5856,13,3914,844,2,'2024-04-16 17:50:34','2024-04-16 17:50:34','b6f70c13-cb53-4373-b650-af6efc48c011',NULL),(5857,13,3914,845,3,'2024-04-16 17:50:34','2024-04-16 17:50:34','a71efaf7-3255-4136-885b-2457df5382ad',NULL),(5858,13,3914,2106,4,'2024-04-16 17:50:34','2024-04-16 17:50:34','72f6279e-369e-47a5-984b-baa94445a81d',NULL),(5859,13,3914,2107,5,'2024-04-16 17:50:34','2024-04-16 17:50:34','757bea79-87f4-4efa-a84b-8e38ca853d35',NULL),(5860,13,3914,2114,6,'2024-04-16 17:50:34','2024-04-16 17:50:34','3d8c43dd-f13a-4fd9-a308-a8498fdf6be8',NULL),(5861,13,3914,2127,7,'2024-04-16 17:50:34','2024-04-16 17:50:34','614ab4dc-eec3-4527-b1ae-aeaba24a8b55',NULL),(5862,13,3915,846,1,'2024-04-16 17:50:34','2024-04-16 17:50:34','2a7daf57-0be9-48b9-8a8c-c176b3fc36ce',NULL),(5863,13,3915,847,2,'2024-04-16 17:50:34','2024-04-16 17:50:34','2ae37fd7-6a7b-4c66-add1-3c638177bf7f',NULL),(5864,13,3915,848,3,'2024-04-16 17:50:34','2024-04-16 17:50:34','5fdecac9-e12b-4ee3-8165-777dca823990',NULL),(5865,13,3915,849,4,'2024-04-16 17:50:34','2024-04-16 17:50:34','6b177c53-1443-452f-88e1-4aad8ba938be',NULL),(5866,13,3915,850,5,'2024-04-16 17:50:34','2024-04-16 17:50:34','a0c98b31-1503-4dc5-b8e1-b7fc7d924c79',NULL),(5867,13,3915,851,6,'2024-04-16 17:50:34','2024-04-16 17:50:34','08852ddf-52a1-47fa-bb03-9d2f15a02e58',NULL),(5895,13,3929,837,1,'2024-04-16 17:51:07','2024-04-16 17:51:07','66c43a08-ab1c-4245-91ac-fd1be4cdc330',NULL),(5896,13,3929,3827,2,'2024-04-16 17:51:07','2024-04-16 17:51:07','0c04f6b1-d6b2-41e2-949a-c47c67ab7569',NULL),(5897,13,3929,3864,3,'2024-04-16 17:51:07','2024-04-16 17:51:07','0bb44f1f-db57-4d19-9803-d6ff00d79e1e',NULL),(5898,13,3930,838,1,'2024-04-16 17:51:07','2024-04-16 17:51:07','ade53955-ab26-4896-ace5-bc62987fe1ed',NULL),(5899,13,3930,839,2,'2024-04-16 17:51:07','2024-04-16 17:51:07','ec218b85-dce0-49b9-86a5-fb51d9174a9d',NULL),(5900,13,3930,2442,3,'2024-04-16 17:51:07','2024-04-16 17:51:07','c5a0de5b-86ad-4179-936e-458c32e94175',NULL),(5901,13,3930,2456,4,'2024-04-16 17:51:07','2024-04-16 17:51:07','8273465a-a7eb-46b0-b463-83173cbd654a',NULL),(5902,13,3930,3766,5,'2024-04-16 17:51:07','2024-04-16 17:51:07','b1e3a745-70cb-4ccc-8b3e-99f936411d7c',NULL),(5903,13,3930,3776,6,'2024-04-16 17:51:07','2024-04-16 17:51:07','5fb18e99-3215-42b4-819c-e895d2a26f4d',NULL),(5904,13,3930,3777,7,'2024-04-16 17:51:07','2024-04-16 17:51:07','58c2bc0e-0dbb-426f-a8b9-0dd50d254bd3',NULL),(5905,13,3930,3778,8,'2024-04-16 17:51:07','2024-04-16 17:51:07','4948e1f0-bf96-4236-9722-680c45d0d669',NULL),(5906,13,3930,3779,9,'2024-04-16 17:51:07','2024-04-16 17:51:07','b0d571da-f62b-434d-b579-ce5b14183350',NULL),(5907,13,3930,3780,10,'2024-04-16 17:51:07','2024-04-16 17:51:07','b76c6937-c0fe-4e2c-8e50-cbce8bba9701',NULL),(5908,13,3931,840,1,'2024-04-16 17:51:07','2024-04-16 17:51:07','06dd5eca-a4c1-4439-86e0-c423cc7fe463',NULL),(5909,13,3932,843,1,'2024-04-16 17:51:08','2024-04-16 17:51:08','1b69abb2-79e7-4360-b6fc-f9d79c41fcbf',NULL),(5910,13,3932,844,2,'2024-04-16 17:51:08','2024-04-16 17:51:08','b2cf6cd0-f9f4-4027-be47-f53e48670286',NULL),(5911,13,3932,845,3,'2024-04-16 17:51:08','2024-04-16 17:51:08','48ddbd1b-aeef-408e-81fc-c5806cc9a1da',NULL),(5912,13,3932,2106,4,'2024-04-16 17:51:08','2024-04-16 17:51:08','cdc2105d-d826-4551-b1a1-469dd48bd3da',NULL),(5913,13,3932,2107,5,'2024-04-16 17:51:08','2024-04-16 17:51:08','a8b6a945-6426-4139-a962-d7b71506f83a',NULL),(5914,13,3932,2114,6,'2024-04-16 17:51:08','2024-04-16 17:51:08','b4f95ad8-0c01-468a-847c-69a02f790a1d',NULL),(5915,13,3932,2127,7,'2024-04-16 17:51:08','2024-04-16 17:51:08','5e13f80e-a18e-44ac-a6f3-fca130925c0c',NULL),(5916,13,3933,846,1,'2024-04-16 17:51:08','2024-04-16 17:51:08','cf198d39-99e8-4e3e-8f2e-f101db9f5ff8',NULL),(5917,13,3933,847,2,'2024-04-16 17:51:08','2024-04-16 17:51:08','33db091d-ff95-4c85-90e9-2646203f3da8',NULL),(5918,13,3933,848,3,'2024-04-16 17:51:08','2024-04-16 17:51:08','cec48074-d83f-4a67-bc7d-a182a6b9f97c',NULL),(5919,13,3933,849,4,'2024-04-16 17:51:08','2024-04-16 17:51:08','96579f8f-fa53-4705-8221-99ba84238ae4',NULL),(5920,13,3933,850,5,'2024-04-16 17:51:08','2024-04-16 17:51:08','5ddf730c-6231-4f0e-8dcf-acca8d7ccf8f',NULL),(5921,13,3933,851,6,'2024-04-16 17:51:08','2024-04-16 17:51:08','b6f1ad6d-bd4c-4a61-a1cd-f10bad2b91be',NULL),(5949,13,3947,837,1,'2024-04-16 17:51:35','2024-04-16 17:51:35','d5e3c183-a9bf-471a-9a29-b7378a59704a',NULL),(5950,13,3947,3827,2,'2024-04-16 17:51:35','2024-04-16 17:51:35','dce621c0-55c2-4a4b-b2ed-60f7542c405e',NULL),(5951,13,3947,3864,3,'2024-04-16 17:51:35','2024-04-16 17:51:35','6ff28b7b-65ca-4409-b217-c1ff5045b433',NULL),(5952,13,3948,838,1,'2024-04-16 17:51:35','2024-04-16 17:51:35','8d755ef8-c3f6-4684-b859-96d2c7fe8b7f',NULL),(5953,13,3948,839,2,'2024-04-16 17:51:35','2024-04-16 17:51:35','c978cf1c-1833-455a-9096-3eb9dce7b990',NULL),(5954,13,3948,2442,3,'2024-04-16 17:51:35','2024-04-16 17:51:35','bbcb6bd2-0043-4303-89b0-aa4eb7a2fe38',NULL),(5955,13,3948,2456,4,'2024-04-16 17:51:35','2024-04-16 17:51:35','2972856c-ae75-46eb-9174-248c57be22cd',NULL),(5956,13,3948,3766,5,'2024-04-16 17:51:35','2024-04-16 17:51:35','e27974d8-51e8-41e1-949f-abb8fca822ca',NULL),(5957,13,3948,3776,6,'2024-04-16 17:51:35','2024-04-16 17:51:35','bccccd9d-c291-4b75-a111-fb00dce50e76',NULL),(5958,13,3948,3777,7,'2024-04-16 17:51:35','2024-04-16 17:51:35','b18f6c8a-05ca-497a-846c-dcec101cd228',NULL),(5959,13,3948,3778,8,'2024-04-16 17:51:35','2024-04-16 17:51:35','4579ce69-f8a0-4e0b-8c50-0b16616120b8',NULL),(5960,13,3948,3779,9,'2024-04-16 17:51:35','2024-04-16 17:51:35','19709b97-2c21-424b-90c5-31ff60620a67',NULL),(5961,13,3948,3780,10,'2024-04-16 17:51:35','2024-04-16 17:51:35','339d6d31-d27f-41fa-9060-26364ce0c016',NULL),(5962,13,3949,840,1,'2024-04-16 17:51:35','2024-04-16 17:51:35','03c01146-e201-4933-9310-462e4ecbc3a1',NULL),(5963,13,3950,843,1,'2024-04-16 17:51:35','2024-04-16 17:51:35','7212aaaa-4adb-4e34-baf6-a21dfc04cdd1',NULL),(5964,13,3950,844,2,'2024-04-16 17:51:35','2024-04-16 17:51:35','9fc6a1ee-85c3-43e1-a6ad-9b139a17cdc3',NULL),(5965,13,3950,845,3,'2024-04-16 17:51:35','2024-04-16 17:51:35','afd96a40-6415-43dd-b916-0087969ebb11',NULL),(5966,13,3950,2106,4,'2024-04-16 17:51:35','2024-04-16 17:51:35','24a222ee-e457-40a2-bf1e-dbe09ce0ce87',NULL),(5967,13,3950,2107,5,'2024-04-16 17:51:35','2024-04-16 17:51:35','b6386766-ff87-49c0-b172-09a3fe5055ea',NULL),(5968,13,3950,2114,6,'2024-04-16 17:51:35','2024-04-16 17:51:35','e2a0cb5a-1d30-4e20-aa3c-94c246e95757',NULL),(5969,13,3950,2127,7,'2024-04-16 17:51:35','2024-04-16 17:51:35','90f42504-a550-470d-972d-cdf3eb453975',NULL),(5970,13,3951,846,1,'2024-04-16 17:51:35','2024-04-16 17:51:35','e0097598-59fe-4fd6-9155-d9bab497a599',NULL),(5971,13,3951,847,2,'2024-04-16 17:51:35','2024-04-16 17:51:35','1fb4ec3d-3d11-41eb-bacc-046b8b0e9e5d',NULL),(5972,13,3951,848,3,'2024-04-16 17:51:35','2024-04-16 17:51:35','f446b894-0a22-4eef-a531-3a5bb7dbbe00',NULL),(5973,13,3951,849,4,'2024-04-16 17:51:35','2024-04-16 17:51:35','93c6cf3d-d2df-4cb1-be96-366d300f03df',NULL),(5974,13,3951,850,5,'2024-04-16 17:51:35','2024-04-16 17:51:35','42be218a-551d-41e7-947c-ab730919005d',NULL),(5975,13,3951,851,6,'2024-04-16 17:51:35','2024-04-16 17:51:35','0f5faf6e-5ad2-493f-be18-67b513e3ddac',NULL),(6003,13,3965,837,1,'2024-04-16 17:51:59','2024-04-16 17:51:59','8b2a8c40-af6d-4a83-9236-cbddea7d5bed',NULL),(6004,13,3965,3827,2,'2024-04-16 17:51:59','2024-04-16 17:51:59','8716a63f-a71c-47a2-9eed-76421de0f47c',NULL),(6005,13,3965,3864,3,'2024-04-16 17:51:59','2024-04-16 17:51:59','9d77c56c-08a0-4439-bba7-2f0abc5ec892',NULL),(6006,13,3966,838,1,'2024-04-16 17:51:59','2024-04-16 17:51:59','4910315e-9c2b-4f1f-acba-87b55b2a3a1f',NULL),(6007,13,3966,839,2,'2024-04-16 17:51:59','2024-04-16 17:51:59','7bd2177e-bf03-48a7-ae10-1af0cf6df53d',NULL),(6008,13,3966,2442,3,'2024-04-16 17:51:59','2024-04-16 17:51:59','7012b3f0-f4c2-4ac4-8036-ef2080df7cb7',NULL),(6009,13,3966,2456,4,'2024-04-16 17:51:59','2024-04-16 17:51:59','d94b09a4-8929-4dae-aebd-c60a6f898160',NULL),(6010,13,3966,3766,5,'2024-04-16 17:51:59','2024-04-16 17:51:59','8c63d19b-98dc-43a2-b413-ae71a24f3432',NULL),(6011,13,3966,3776,6,'2024-04-16 17:51:59','2024-04-16 17:51:59','441c98e8-00e4-4f85-9de6-0f94709b75df',NULL),(6012,13,3966,3777,7,'2024-04-16 17:51:59','2024-04-16 17:51:59','12010c0a-913c-4885-bcb2-2edff16f27d5',NULL),(6013,13,3966,3778,8,'2024-04-16 17:51:59','2024-04-16 17:51:59','f74f49c9-25dd-4764-a714-53cc5aefc9cf',NULL),(6014,13,3966,3779,9,'2024-04-16 17:51:59','2024-04-16 17:51:59','baa915a6-e82b-4a09-8daa-a164c0341638',NULL),(6015,13,3966,3780,10,'2024-04-16 17:51:59','2024-04-16 17:51:59','2dd489aa-1a76-404f-b516-0d908a7b2942',NULL),(6016,13,3967,840,1,'2024-04-16 17:51:59','2024-04-16 17:51:59','8acd418c-7455-449d-87a6-f537d9abf9da',NULL),(6017,13,3968,843,1,'2024-04-16 17:51:59','2024-04-16 17:51:59','4e18c28a-5344-4c44-871e-7c8de4fa092e',NULL),(6018,13,3968,844,2,'2024-04-16 17:51:59','2024-04-16 17:51:59','d0e5c778-f1b5-4e86-bbcd-9751e0a621d1',NULL),(6019,13,3968,845,3,'2024-04-16 17:51:59','2024-04-16 17:51:59','65609103-58dd-49ac-bab0-008601f79034',NULL),(6020,13,3968,2106,4,'2024-04-16 17:51:59','2024-04-16 17:51:59','49f76e45-c42b-4b06-972d-61cb5e30917f',NULL),(6021,13,3968,2107,5,'2024-04-16 17:51:59','2024-04-16 17:51:59','dfb39d7c-64b2-4319-9e00-d1aa7e51c814',NULL),(6022,13,3968,2114,6,'2024-04-16 17:51:59','2024-04-16 17:51:59','6d0aa51f-2799-4cb2-951b-74a78d08de9f',NULL),(6023,13,3968,2127,7,'2024-04-16 17:51:59','2024-04-16 17:51:59','c2f5a4e9-56be-4e9a-ad85-4a4192e86004',NULL),(6024,13,3969,846,1,'2024-04-16 17:51:59','2024-04-16 17:51:59','ad93d0f1-659e-4e12-836b-e13ab5e80dbe',NULL),(6025,13,3969,847,2,'2024-04-16 17:51:59','2024-04-16 17:51:59','e1d58f4a-0390-4938-b79d-f534499a3b38',NULL),(6026,13,3969,848,3,'2024-04-16 17:51:59','2024-04-16 17:51:59','165f5f9f-6952-4e73-ac5a-7a101adb1d42',NULL),(6027,13,3969,849,4,'2024-04-16 17:51:59','2024-04-16 17:51:59','c596f63b-06d2-427d-9269-cfd36730c352',NULL),(6028,13,3969,850,5,'2024-04-16 17:51:59','2024-04-16 17:51:59','38ebd0bb-7d5b-402c-ad30-d2db4f139a1c',NULL),(6029,13,3969,851,6,'2024-04-16 17:51:59','2024-04-16 17:51:59','a2f9cdf6-1b64-43bf-a3a9-ccccf0eee291',NULL),(6057,13,3983,837,1,'2024-04-16 17:52:15','2024-04-16 17:52:15','55a18308-9faf-43ce-8572-d219dbd2cb84',NULL),(6058,13,3983,3827,2,'2024-04-16 17:52:15','2024-04-16 17:52:15','1c62fdfc-9331-40d3-99e3-468b0b27c0b5',NULL),(6059,13,3983,3864,3,'2024-04-16 17:52:15','2024-04-16 17:52:15','5c61a568-83f9-488f-84c3-af5ba687f7c0',NULL),(6060,13,3984,838,1,'2024-04-16 17:52:15','2024-04-16 17:52:15','385ff7d8-91d2-436a-afb8-df965dcb7f82',NULL),(6061,13,3984,839,2,'2024-04-16 17:52:15','2024-04-16 17:52:15','0ae14187-425e-4a2e-b0a7-05a642d7f5aa',NULL),(6062,13,3984,2442,3,'2024-04-16 17:52:15','2024-04-16 17:52:15','a83169aa-9366-4701-8aa4-cb5c596eecf5',NULL),(6063,13,3984,2456,4,'2024-04-16 17:52:15','2024-04-16 17:52:15','c85c6c08-417c-4a34-9fe9-a89af2941e63',NULL),(6064,13,3984,3766,5,'2024-04-16 17:52:15','2024-04-16 17:52:15','f5a32ba1-201a-49f8-9eb2-7e26d91c67a0',NULL),(6065,13,3984,3776,6,'2024-04-16 17:52:15','2024-04-16 17:52:15','085abe7a-8fe2-49d2-85ca-38c7dcd50e7c',NULL),(6066,13,3984,3777,7,'2024-04-16 17:52:15','2024-04-16 17:52:15','1fee21c5-0785-42a3-b916-4dab37534335',NULL),(6067,13,3984,3778,8,'2024-04-16 17:52:15','2024-04-16 17:52:15','84c1ae47-312c-43b9-a94f-0c2205c90512',NULL),(6068,13,3984,3779,9,'2024-04-16 17:52:15','2024-04-16 17:52:15','bfcf5ba9-1cee-41d7-9a2f-7b3c20e10d90',NULL),(6069,13,3984,3780,10,'2024-04-16 17:52:15','2024-04-16 17:52:15','d83bfbf4-f19a-4191-baf2-cee20adec7ce',NULL),(6070,13,3985,840,1,'2024-04-16 17:52:15','2024-04-16 17:52:15','8bb2f0f3-a5c6-471d-b387-4eac43039ebd',NULL),(6071,13,3986,843,1,'2024-04-16 17:52:15','2024-04-16 17:52:15','62fe32ea-e4f4-4ff6-94bd-43b16bbff7a5',NULL),(6072,13,3986,844,2,'2024-04-16 17:52:15','2024-04-16 17:52:15','1f0a5bf7-bdde-4259-9b4e-1c64008545af',NULL),(6073,13,3986,845,3,'2024-04-16 17:52:15','2024-04-16 17:52:15','52dfa587-14f4-4e0a-b646-64b3c9281235',NULL),(6074,13,3986,2106,4,'2024-04-16 17:52:15','2024-04-16 17:52:15','4b7f5372-70f4-426f-a043-232910317922',NULL),(6075,13,3986,2107,5,'2024-04-16 17:52:15','2024-04-16 17:52:15','c33f084f-d52e-43fa-b372-ba28b847b665',NULL),(6076,13,3986,2114,6,'2024-04-16 17:52:15','2024-04-16 17:52:15','ce01ccc1-0deb-43b9-a9d0-7c727b383d9f',NULL),(6077,13,3986,2127,7,'2024-04-16 17:52:15','2024-04-16 17:52:15','3aaaf514-d978-41ad-95d7-04293dd92f38',NULL),(6078,13,3987,846,1,'2024-04-16 17:52:15','2024-04-16 17:52:15','88dfd554-5007-49a2-88c5-ae15cc613086',NULL),(6079,13,3987,847,2,'2024-04-16 17:52:15','2024-04-16 17:52:15','f8de3652-e36e-435d-b836-421ecab20ef1',NULL),(6080,13,3987,848,3,'2024-04-16 17:52:15','2024-04-16 17:52:15','dad1ed02-dc0b-4efe-acb3-6ed12021ef8f',NULL),(6081,13,3987,849,4,'2024-04-16 17:52:15','2024-04-16 17:52:15','7cdee01d-d775-409f-80a2-c5b9e587a196',NULL),(6082,13,3987,850,5,'2024-04-16 17:52:15','2024-04-16 17:52:15','b0e37af4-156b-4154-bc15-e9d4b545f475',NULL),(6083,13,3987,851,6,'2024-04-16 17:52:15','2024-04-16 17:52:15','1cb4bd10-31ea-4369-9a33-4b7e72e01531',NULL),(6111,13,4353,837,1,'2024-08-11 18:10:14','2024-08-11 18:10:14','d126a484-1c51-40f6-8ad8-835c912bf6f2',NULL),(6112,13,4353,3827,2,'2024-08-11 18:10:14','2024-08-11 18:10:14','a8ef5a63-c0f5-47c3-ac05-c931c8df99e6',NULL),(6113,13,4353,3864,3,'2024-08-11 18:10:14','2024-08-11 18:10:14','7c722cfd-ef78-4e53-b9bc-4221626d363b',NULL),(6114,13,4354,838,1,'2024-08-11 18:10:14','2024-08-11 18:10:14','ed612de2-2f37-4d5e-b691-01fb3446fe97',NULL),(6115,13,4354,839,2,'2024-08-11 18:10:14','2024-08-11 18:10:14','796f25d7-87dd-4b56-bae7-e07c747c43dc',NULL),(6116,13,4354,2442,3,'2024-08-11 18:10:14','2024-08-11 18:10:14','d9ba5583-f03c-428b-a04b-689607312590',NULL),(6117,13,4354,2456,4,'2024-08-11 18:10:14','2024-08-11 18:10:14','dee703cb-e38a-43da-b0b1-ed17c3d6a873',NULL),(6118,13,4354,3766,5,'2024-08-11 18:10:14','2024-08-11 18:10:14','22085b57-7a2c-44d1-a561-2c3ce2ce8b5a',NULL),(6119,13,4354,3776,6,'2024-08-11 18:10:14','2024-08-11 18:10:14','f7ea2744-bfce-44c1-8170-fbac579920a9',NULL),(6120,13,4354,3777,7,'2024-08-11 18:10:14','2024-08-11 18:10:14','fbf3fd33-ae55-45e8-9759-6d14f84c7d1f',NULL),(6121,13,4354,3778,8,'2024-08-11 18:10:14','2024-08-11 18:10:14','9c9ea51d-4a53-4048-bdd9-4b4103554bff',NULL),(6122,13,4354,3779,9,'2024-08-11 18:10:14','2024-08-11 18:10:14','b0b4cef0-0835-4425-89a7-67712c2bed45',NULL),(6123,13,4354,3780,10,'2024-08-11 18:10:14','2024-08-11 18:10:14','11678176-f1d0-42a7-a07c-d1397dbc0a54',NULL),(6124,13,4355,840,1,'2024-08-11 18:10:14','2024-08-11 18:10:14','e0be5a11-b8f2-4f8d-b5b0-ece381884d3f',NULL),(6125,13,4356,843,1,'2024-08-11 18:10:14','2024-08-11 18:10:14','d6be3d0d-7a11-4406-84d1-b74797a5ca6b',NULL),(6126,13,4356,844,2,'2024-08-11 18:10:14','2024-08-11 18:10:14','387919fb-3b8d-409b-be20-146ab0db546b',NULL),(6127,13,4356,845,3,'2024-08-11 18:10:14','2024-08-11 18:10:14','9d77a246-8217-4f75-bc50-44302e5281d7',NULL),(6128,13,4356,2106,4,'2024-08-11 18:10:14','2024-08-11 18:10:14','471dfc07-f66a-4c42-9ee3-f636d4eadcd1',NULL),(6129,13,4356,2107,5,'2024-08-11 18:10:14','2024-08-11 18:10:14','a635c2c4-bb2b-4111-be11-89319b595c44',NULL),(6130,13,4356,2114,6,'2024-08-11 18:10:14','2024-08-11 18:10:14','0ff81f08-02a0-43fe-aa0a-0110c8db10d3',NULL),(6131,13,4356,2127,7,'2024-08-11 18:10:14','2024-08-11 18:10:14','ea8c5f27-1392-49ef-a49e-60f4fe82fab9',NULL),(6132,13,4357,846,1,'2024-08-11 18:10:14','2024-08-11 18:10:14','199a82ff-d8ac-4d2e-b4ea-70b404764c07',NULL),(6133,13,4357,847,2,'2024-08-11 18:10:14','2024-08-11 18:10:14','018c59ba-0fb6-4e67-90ff-0f174b51f752',NULL),(6134,13,4357,848,3,'2024-08-11 18:10:14','2024-08-11 18:10:14','84adacf8-16a9-461e-b1f9-31e0d120c8d1',NULL),(6135,13,4357,849,4,'2024-08-11 18:10:14','2024-08-11 18:10:14','643a951f-1da2-4230-a551-482e1311c594',NULL),(6136,13,4357,850,5,'2024-08-11 18:10:14','2024-08-11 18:10:14','61585d31-21cd-4958-ab8d-ebf264cacf80',NULL),(6137,13,4357,851,6,'2024-08-11 18:10:14','2024-08-11 18:10:14','8cb104ad-bc13-45ed-ac83-451070e481df',NULL),(6138,15,4561,301,1,'2024-12-30 16:14:43','2024-12-30 16:14:43','fc200062-0966-4679-8890-456bb5624cdb',NULL),(6139,15,4561,300,2,'2024-12-30 16:14:47','2024-12-30 16:14:47','b5bc7672-913e-4cdc-9610-c25a7797189f',NULL),(6140,15,4561,855,3,'2024-12-30 16:14:50','2024-12-30 16:14:50','c56f374e-1172-4d44-bded-d13eb021afe3',NULL),(6141,15,4562,301,1,'2024-12-30 16:15:01','2024-12-30 16:15:01','61f2c4d4-c48f-4649-9fca-a01e7d6d5a52',NULL),(6142,15,4562,300,2,'2024-12-30 16:15:01','2024-12-30 16:15:01','65fecfd5-721b-48b3-98e6-a8cd35894bcb',NULL),(6143,15,4562,855,3,'2024-12-30 16:15:01','2024-12-30 16:15:01','6636f914-c448-4828-811c-4dcf50df255f',NULL),(6148,5,4561,4563,1,'2025-01-03 16:50:34','2025-01-03 16:50:34','f643a1ff-2d57-4e22-8065-e95b8b354fd5',NULL),(6149,5,4565,4563,1,'2025-01-03 16:50:34','2025-01-03 16:50:34','1440c588-72ab-40a3-b5e8-6c0e421c39cf',NULL),(6150,15,4565,301,1,'2025-01-03 16:50:34','2025-01-03 16:50:34','5a020572-9f4d-49e3-8756-f48027931ea6',NULL),(6151,15,4565,300,2,'2025-01-03 16:50:34','2025-01-03 16:50:34','89c47a6e-f134-4890-a9ad-7cfb78f10d4f',NULL),(6152,15,4565,855,3,'2025-01-03 16:50:34','2025-01-03 16:50:34','47b782eb-3f8e-4877-b8e8-f527d4c62df3',NULL),(6164,5,4573,379,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','cc20af6b-5884-4d83-916b-5845debf1b27',NULL),(6165,15,4573,304,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','736bb9dd-3080-42ec-8fa5-1d6fc49c4afc',NULL),(6166,15,4573,301,2,'2025-01-03 16:53:22','2025-01-03 16:53:22','db114592-e8cd-4d61-93a2-9120f77e11a1',NULL),(6167,15,4573,300,3,'2025-01-03 16:53:22','2025-01-03 16:53:22','998ec537-487b-4dbc-ba78-1f415f9a4098',NULL),(6168,15,4573,302,4,'2025-01-03 16:53:22','2025-01-03 16:53:22','cd1a2787-64b5-4b80-8978-e07cf0e7dfa0',NULL),(6169,7,4574,383,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','9ddfdca3-aded-44d6-bc0f-f4a35f8b2033',NULL),(6170,7,4575,385,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','bf1cbb7c-6f94-4544-99df-7851000d4fb0',NULL),(6171,7,4576,378,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','a9b46fed-0d67-4576-935d-5d35f544a774',NULL),(6172,9,4577,382,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','03489d18-b576-4b22-ae38-7ea3feff4500',NULL),(6173,9,4578,381,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','09f2ad0b-d08b-46a6-b8ff-5785d5f6100b',NULL),(6174,9,4579,384,1,'2025-01-03 16:53:22','2025-01-03 16:53:22','1a305d27-07fa-4f99-b3bc-594fdcaf8587',NULL),(6175,5,4580,827,1,'2025-01-03 16:53:38','2025-01-03 16:53:38','9fe47dbd-0c89-44fa-8168-94aa82365601',NULL),(6176,15,4580,299,1,'2025-01-03 16:53:38','2025-01-03 16:53:38','7430e624-d6a4-4090-9c0a-409d6001e7fb',NULL),(6177,15,4580,301,2,'2025-01-03 16:53:38','2025-01-03 16:53:38','fc093526-6ffe-40b3-a4ed-9eb2b02690a4',NULL),(6178,15,4580,300,3,'2025-01-03 16:53:38','2025-01-03 16:53:38','65c2f843-18f3-48cd-a67e-4a3314eec676',NULL),(6179,15,4580,302,4,'2025-01-03 16:53:38','2025-01-03 16:53:38','7d814b9e-8c64-4026-8438-747c502ca17f',NULL),(6187,5,4586,755,1,'2025-01-03 16:55:42','2025-01-03 16:55:42','7711c1a3-9f82-4c5e-b68a-523c9bdd540f',NULL),(6188,15,4586,299,1,'2025-01-03 16:55:42','2025-01-03 16:55:42','c419c453-3149-48c1-9b15-9af978ed43e8',NULL),(6189,15,4586,749,2,'2025-01-03 16:55:42','2025-01-03 16:55:42','14f60725-06a7-4973-94e7-d1781c8321d0',NULL),(6190,7,4587,750,1,'2025-01-03 16:55:42','2025-01-03 16:55:42','fe316d65-d805-43ca-914a-4233664df96e',NULL),(6191,7,4588,751,1,'2025-01-03 16:55:43','2025-01-03 16:55:43','7486fac9-4a7f-4016-9339-5bfbd2e49ad4',NULL),(6192,7,4589,752,1,'2025-01-03 16:55:43','2025-01-03 16:55:43','392f5edc-9158-4271-b596-4029388bdcf0',NULL),(6193,7,4590,753,1,'2025-01-03 16:55:43','2025-01-03 16:55:43','168747e6-c34a-48ca-8728-3bddc7881d07',NULL),(6194,5,4591,831,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','a22b0ba4-c8bc-4fe0-8d3a-f6a9cc8fb154',NULL),(6195,15,4591,299,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','6ecfbc44-106a-41bd-8a47-d6e7b0b1d633',NULL),(6196,15,4591,301,2,'2025-01-03 16:56:24','2025-01-03 16:56:24','a5c9114c-9d3b-4bac-9a9f-8af5e15dc9f0',NULL),(6197,15,4591,300,3,'2025-01-03 16:56:24','2025-01-03 16:56:24','01dea735-e894-47da-af61-49f1162eae94',NULL),(6198,15,4591,302,4,'2025-01-03 16:56:24','2025-01-03 16:56:24','830b37d2-cf0e-462c-8336-c05e03670e92',NULL),(6199,7,4592,471,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','b3bdd836-7cff-44e6-b39c-61a2bec19df6',NULL),(6200,7,4593,472,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','394d185f-0a2f-44d4-b099-c46249a1947f',NULL),(6201,7,4594,473,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','bf7164fd-aca0-4111-8396-8ef1593bf62d',NULL),(6202,7,4595,470,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','55f3d6f2-71bc-4f45-ac31-07ce9388fdb0',NULL),(6203,5,4596,857,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','800df820-5270-49b0-a433-61e785ab485e',NULL),(6204,15,4596,299,1,'2025-01-03 16:56:24','2025-01-03 16:56:24','0d76f339-3ec4-4f7a-959d-b780f3135a27',NULL),(6205,15,4596,301,2,'2025-01-03 16:56:24','2025-01-03 16:56:24','9011c237-43e2-4718-8b1d-d0ff26301995',NULL),(6206,15,4596,300,3,'2025-01-03 16:56:24','2025-01-03 16:56:24','89eb5ba7-dc96-4361-8599-32b8326b176c',NULL),(6207,15,4596,855,4,'2025-01-03 16:56:24','2025-01-03 16:56:24','58fabe08-409d-4b2a-bd47-e08a68fa4cbc',NULL),(6208,5,4597,767,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','f2c73f18-447f-4613-bcd6-a488d6307603',NULL),(6209,15,4597,301,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','5db50604-8d06-41c9-8210-fb5685bee6bf',NULL),(6210,15,4597,300,2,'2025-01-03 19:02:21','2025-01-03 19:02:21','4bda0a66-cbba-4175-a0f1-032b86a6a230',NULL),(6211,15,4597,302,3,'2025-01-03 19:02:21','2025-01-03 19:02:21','81a068b4-62e9-40b3-9076-8d75a9a4ec04',NULL),(6212,15,4597,299,4,'2025-01-03 19:02:21','2025-01-03 19:02:21','5a70f6f5-4393-44c9-9b81-af20568981aa',NULL),(6213,7,4598,764,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','296cf3af-8090-46b6-8b28-aa769d76fdc1',NULL),(6214,7,4599,766,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','3c66eefc-c1d6-4dcb-9b91-b0db726a0b31',NULL),(6215,9,4600,763,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','92fc7b14-3e23-4b4f-8559-c33c6fdb1f72',NULL),(6216,9,4601,765,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','ccc846e8-a2e7-4e3d-b0fa-850c47c598bf',NULL),(6217,9,4602,761,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','4a5f46b0-012b-4a2e-82c8-5c8ec1c878a5',NULL),(6218,7,4603,762,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','e543d26c-e09a-4710-bc92-ac3e50735b11',NULL),(6219,5,4604,826,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','6174cc15-cd4f-4cf7-bc93-afd0e83ce0fd',NULL),(6220,15,4604,749,1,'2025-01-03 19:02:21','2025-01-03 19:02:21','23c5cc6d-0388-47f7-8237-170da8ee941b',NULL),(6221,15,4604,301,2,'2025-01-03 19:02:21','2025-01-03 19:02:21','b9553b2d-d5b8-47fe-a274-3b82e72e2487',NULL),(6222,15,4604,300,3,'2025-01-03 19:02:21','2025-01-03 19:02:21','b845f7ad-33ba-4e1a-8eb0-b927dd9b2325',NULL),(6223,15,4604,302,4,'2025-01-03 19:02:21','2025-01-03 19:02:21','1180330d-c09c-4938-847b-6b287045d110',NULL),(6228,5,4606,829,1,'2025-01-03 19:02:52','2025-01-03 19:02:52','1332d963-670a-4d28-b89a-4e4364dfb5e7',NULL),(6229,15,4606,301,1,'2025-01-03 19:02:52','2025-01-03 19:02:52','72f4715e-0bcb-4550-879a-034bbc685b24',NULL),(6230,15,4606,300,2,'2025-01-03 19:02:52','2025-01-03 19:02:52','fcce3eb6-f83a-4d12-a779-736a14c90e84',NULL),(6231,15,4606,302,3,'2025-01-03 19:02:52','2025-01-03 19:02:52','cd553e5e-9df3-472e-b6ae-881d59526bd4',NULL);
commit;

--
-- Dumping data for table `craft_revisions`
--

set autocommit=0;
INSERT INTO `craft_revisions` VALUES (1,853,NULL,4,'Revision from Oct 15, 2018, 11:49:29 AM'),(2,853,NULL,9,NULL),(3,4,NULL,20,'Revision from Oct 2, 2017, 2:57:25 PM'),(4,4,NULL,21,NULL),(5,5,NULL,3,'Revision from Apr 1, 2014, 8:43:06 PM'),(6,5,NULL,4,NULL),(7,261,1,2,NULL),(8,858,1,1,NULL),(9,856,1,3,NULL),(10,856,1,2,NULL),(11,856,1,1,NULL),(12,854,1,1,NULL),(13,853,1,8,NULL),(14,307,1,4,NULL),(15,853,1,3,NULL),(16,853,1,2,NULL),(17,853,1,1,'Revision from Oct 4, 2017, 12:07:37 PM'),(18,4,1,19,NULL),(19,4,1,18,NULL),(20,4,1,17,NULL),(21,4,1,16,NULL),(22,4,1,15,NULL),(23,4,1,14,NULL),(24,4,1,13,NULL),(25,4,1,12,NULL),(26,4,1,11,NULL),(27,4,1,10,NULL),(28,4,1,9,NULL),(29,4,1,8,NULL),(30,836,1,1,NULL),(31,834,1,1,NULL),(32,774,1,6,NULL),(33,298,1,4,NULL),(34,303,1,4,NULL),(35,308,1,4,NULL),(36,311,1,5,NULL),(37,310,1,5,NULL),(38,310,1,4,NULL),(39,313,1,5,NULL),(40,314,1,4,NULL),(41,315,1,5,NULL),(42,315,1,4,NULL),(43,316,1,5,NULL),(44,317,1,4,NULL),(45,320,1,4,NULL),(46,321,1,4,NULL),(47,309,1,4,NULL),(48,781,1,2,NULL),(49,784,1,2,NULL),(50,780,1,2,NULL),(51,779,1,2,NULL),(52,778,1,3,NULL),(53,777,1,3,NULL),(54,777,1,2,NULL),(55,776,1,2,NULL),(56,775,1,4,NULL),(57,775,1,3,NULL),(58,785,1,3,NULL),(59,774,1,5,NULL),(60,774,1,4,NULL),(61,813,1,1,NULL),(62,811,1,1,NULL),(63,810,1,2,NULL),(64,810,1,1,NULL),(65,809,1,1,NULL),(66,808,1,1,NULL),(67,807,1,1,NULL),(68,806,1,1,NULL),(69,805,1,1,NULL),(70,804,1,1,NULL),(71,792,1,2,NULL),(72,46,1,4,NULL),(73,802,1,1,NULL),(74,801,1,3,NULL),(75,801,1,2,NULL),(76,801,1,1,NULL),(77,799,1,1,NULL),(78,46,1,3,NULL),(79,49,1,3,NULL),(80,52,1,3,NULL),(81,798,1,1,NULL),(82,797,1,1,NULL),(83,796,1,1,NULL),(84,60,1,3,NULL),(85,59,1,4,NULL),(86,62,1,3,NULL),(87,66,1,3,NULL),(88,795,1,1,NULL),(89,794,1,1,NULL),(90,79,1,4,NULL),(91,79,1,3,NULL),(92,73,1,3,NULL),(93,85,1,3,NULL),(94,86,1,3,NULL),(95,84,1,3,NULL),(96,793,1,1,NULL),(97,792,1,1,NULL),(98,124,1,3,NULL),(99,791,1,1,NULL),(100,790,1,1,NULL),(101,789,1,1,NULL),(102,148,1,3,NULL),(103,785,1,2,NULL),(104,774,1,3,NULL),(105,785,1,1,NULL),(106,784,1,1,NULL),(107,783,1,1,NULL),(108,782,1,1,NULL),(109,781,1,1,NULL),(110,780,1,1,NULL),(111,779,1,1,NULL),(112,778,1,2,NULL),(113,778,1,1,NULL),(114,777,1,1,NULL),(115,775,1,2,NULL),(116,774,1,2,NULL),(117,321,1,3,NULL),(118,320,1,3,NULL),(119,319,1,3,NULL),(120,318,1,3,NULL),(121,317,1,3,NULL),(122,316,1,4,NULL),(123,315,1,3,NULL),(124,314,1,3,NULL),(125,313,1,4,NULL),(126,312,1,3,NULL),(127,311,1,4,NULL),(128,310,1,3,NULL),(129,309,1,3,NULL),(130,308,1,3,NULL),(131,307,1,3,NULL),(132,306,1,3,NULL),(133,305,1,3,NULL),(134,303,1,3,NULL),(135,298,1,3,NULL),(136,776,1,1,NULL),(137,775,1,1,NULL),(138,774,1,1,NULL),(139,760,1,2,'Published draft “Draft 1”.'),(140,760,1,1,NULL),(141,754,1,4,NULL),(142,754,1,3,NULL),(143,754,1,2,'Published draft “Draft 1”.'),(144,754,1,1,NULL),(145,4,1,7,NULL),(146,4,1,6,NULL),(147,311,1,3,NULL),(148,313,1,3,NULL),(149,316,1,3,NULL),(150,321,1,2,NULL),(151,320,1,2,NULL),(152,319,1,2,NULL),(153,318,1,2,NULL),(154,317,1,2,NULL),(155,316,1,2,NULL),(156,315,1,2,NULL),(157,314,1,2,NULL),(158,313,1,2,NULL),(159,312,1,2,NULL),(160,311,1,2,NULL),(161,310,1,2,NULL),(162,309,1,2,NULL),(163,308,1,2,NULL),(164,307,1,2,NULL),(165,306,1,2,NULL),(166,305,1,2,NULL),(167,303,1,2,NULL),(168,298,1,2,NULL),(169,321,1,1,NULL),(170,320,1,1,NULL),(171,319,1,1,NULL),(172,318,1,1,NULL),(173,317,1,1,NULL),(174,316,1,1,NULL),(175,315,1,1,NULL),(176,314,1,1,NULL),(177,313,1,1,NULL),(178,312,1,1,NULL),(179,311,1,1,NULL),(180,310,1,1,NULL),(181,309,1,1,NULL),(182,308,1,1,NULL),(183,307,1,1,NULL),(184,306,1,1,NULL),(185,305,1,1,NULL),(186,303,1,1,NULL),(187,298,1,1,NULL),(337,148,1,2,NULL),(361,124,1,2,NULL),(398,86,1,2,NULL),(399,85,1,2,NULL),(400,84,1,2,NULL),(405,79,1,2,NULL),(410,73,1,2,NULL),(416,66,1,2,NULL),(418,62,1,2,NULL),(420,60,1,2,NULL),(421,59,1,3,NULL),(425,52,1,2,NULL),(427,49,1,2,NULL),(428,46,1,2,NULL),(429,56,1,2,NULL),(430,176,1,2,NULL),(431,131,1,2,NULL),(432,130,1,2,NULL),(433,59,1,2,NULL),(434,297,1,1,NULL),(435,296,1,1,NULL),(436,295,1,1,NULL),(437,294,1,1,NULL),(438,293,1,1,NULL),(439,292,1,1,NULL),(440,291,1,1,NULL),(441,290,1,1,NULL),(442,289,1,1,NULL),(443,288,1,1,NULL),(444,287,1,1,NULL),(445,286,1,1,NULL),(446,285,1,1,NULL),(447,284,1,1,NULL),(448,283,1,1,NULL),(449,282,1,1,NULL),(450,281,1,1,NULL),(451,280,1,1,NULL),(452,279,1,1,NULL),(453,278,1,1,NULL),(454,277,1,1,NULL),(455,276,1,1,NULL),(456,275,1,1,NULL),(457,274,1,1,NULL),(458,273,1,1,NULL),(459,272,1,1,NULL),(460,271,1,1,NULL),(461,270,1,1,NULL),(462,269,1,1,NULL),(463,268,1,1,NULL),(464,267,1,1,NULL),(465,266,1,1,NULL),(466,265,1,1,NULL),(467,264,1,1,NULL),(468,263,1,1,NULL),(469,262,1,1,NULL),(470,261,1,1,NULL),(471,260,1,1,NULL),(472,259,1,1,NULL),(473,258,1,1,NULL),(474,257,1,1,NULL),(475,256,1,1,NULL),(476,255,1,1,NULL),(477,254,1,1,NULL),(478,253,1,1,NULL),(479,252,1,1,NULL),(480,251,1,1,NULL),(481,250,1,1,NULL),(482,249,1,1,NULL),(483,248,1,1,NULL),(484,247,1,1,NULL),(485,246,1,1,NULL),(486,245,1,1,NULL),(487,244,1,1,NULL),(488,243,1,1,NULL),(489,242,1,1,NULL),(490,241,1,1,NULL),(491,240,1,1,NULL),(492,239,1,1,NULL),(493,238,1,1,NULL),(494,237,1,1,NULL),(495,236,1,1,NULL),(496,235,1,1,NULL),(497,234,1,1,NULL),(498,233,1,1,NULL),(499,232,1,1,NULL),(500,231,1,1,NULL),(501,230,1,1,NULL),(502,229,1,1,NULL),(503,228,1,1,NULL),(504,227,1,1,NULL),(505,226,1,1,NULL),(506,225,1,1,NULL),(507,224,1,1,NULL),(508,223,1,1,NULL),(509,222,1,1,NULL),(510,221,1,1,NULL),(511,220,1,1,NULL),(512,219,1,1,NULL),(513,218,1,1,NULL),(514,217,1,1,NULL),(515,216,1,1,NULL),(516,215,1,1,NULL),(517,214,1,1,NULL),(518,213,1,1,NULL),(519,212,1,1,NULL),(520,211,1,1,NULL),(521,210,1,1,NULL),(522,209,1,1,NULL),(523,208,1,1,NULL),(524,207,1,1,NULL),(525,206,1,1,NULL),(526,205,1,1,NULL),(527,204,1,1,NULL),(528,203,1,1,NULL),(529,202,1,1,NULL),(530,201,1,1,NULL),(531,200,1,1,NULL),(532,199,1,1,NULL),(533,198,1,1,NULL),(534,197,1,1,NULL),(535,196,1,1,NULL),(536,195,1,1,NULL),(537,194,1,1,NULL),(538,193,1,1,NULL),(539,192,1,1,NULL),(540,191,1,1,NULL),(541,190,1,1,NULL),(542,189,1,1,NULL),(543,188,1,1,NULL),(544,187,1,1,NULL),(545,186,1,1,NULL),(546,185,1,1,NULL),(547,184,1,1,NULL),(548,183,1,1,NULL),(549,182,1,1,NULL),(550,181,1,1,NULL),(551,180,1,1,NULL),(552,179,1,1,NULL),(553,178,1,1,NULL),(554,177,1,1,NULL),(555,176,1,1,NULL),(556,175,1,1,NULL),(557,174,1,1,NULL),(558,173,1,1,NULL),(559,172,1,1,NULL),(560,171,1,1,NULL),(561,170,1,1,NULL),(562,169,1,1,NULL),(563,168,1,1,NULL),(564,167,1,1,NULL),(565,166,1,1,NULL),(566,165,1,1,NULL),(567,164,1,1,NULL),(568,163,1,1,NULL),(569,162,1,1,NULL),(570,161,1,1,NULL),(571,160,1,1,NULL),(572,159,1,1,NULL),(573,158,1,1,NULL),(574,157,1,1,NULL),(575,156,1,1,NULL),(576,155,1,1,NULL),(577,154,1,1,NULL),(578,153,1,1,NULL),(579,152,1,1,NULL),(580,151,1,1,NULL),(581,150,1,1,NULL),(582,149,1,1,NULL),(583,148,1,1,NULL),(584,147,1,1,NULL),(585,146,1,1,NULL),(586,145,1,1,NULL),(587,144,1,1,NULL),(588,143,1,1,NULL),(589,142,1,1,NULL),(590,141,1,1,NULL),(591,140,1,1,NULL),(592,139,1,1,NULL),(593,138,1,1,NULL),(594,137,1,1,NULL),(595,136,1,1,NULL),(596,135,1,1,NULL),(597,134,1,1,NULL),(598,133,1,1,NULL),(599,132,1,1,NULL),(600,131,1,1,NULL),(601,130,1,1,NULL),(602,129,1,1,NULL),(603,128,1,1,NULL),(604,127,1,1,NULL),(605,126,1,1,NULL),(606,125,1,1,NULL),(607,124,1,1,NULL),(608,123,1,1,NULL),(609,122,1,1,NULL),(610,121,1,1,NULL),(611,120,1,1,NULL),(612,119,1,1,NULL),(613,118,1,1,NULL),(614,117,1,1,NULL),(615,116,1,1,NULL),(616,115,1,1,NULL),(617,114,1,1,NULL),(618,113,1,1,NULL),(619,112,1,1,NULL),(620,111,1,1,NULL),(621,110,1,1,NULL),(622,109,1,1,NULL),(623,108,1,1,NULL),(624,107,1,1,NULL),(625,106,1,1,NULL),(626,105,1,1,NULL),(627,104,1,1,NULL),(628,103,1,1,NULL),(629,102,1,1,NULL),(630,101,1,1,NULL),(631,100,1,1,NULL),(632,99,1,1,NULL),(633,98,1,1,NULL),(634,97,1,1,NULL),(635,96,1,1,NULL),(636,95,1,1,NULL),(637,94,1,1,NULL),(638,93,1,1,NULL),(639,92,1,1,NULL),(640,91,1,1,NULL),(641,89,1,1,NULL),(642,88,1,1,NULL),(643,87,1,1,NULL),(644,86,1,1,NULL),(645,85,1,1,NULL),(646,84,1,1,NULL),(647,83,1,1,NULL),(648,82,1,1,NULL),(649,81,1,1,NULL),(650,80,1,1,NULL),(651,79,1,1,NULL),(652,78,1,1,NULL),(653,77,1,1,NULL),(654,76,1,1,NULL),(655,74,1,1,NULL),(656,73,1,1,NULL),(657,72,1,1,NULL),(658,71,1,1,NULL),(659,70,1,1,NULL),(660,69,1,1,NULL),(661,67,1,1,NULL),(662,66,1,1,NULL),(663,65,1,1,NULL),(664,62,1,1,NULL),(665,61,1,1,NULL),(666,60,1,1,NULL),(667,59,1,1,NULL),(668,57,1,1,NULL),(669,56,1,1,NULL),(670,54,1,1,NULL),(671,52,1,1,NULL),(672,51,1,1,NULL),(673,49,1,1,NULL),(674,46,1,1,NULL),(675,4,1,5,NULL),(676,4,1,4,NULL),(677,5,1,2,NULL),(679,5,1,1,NULL),(682,779,1,3,NULL),(683,780,1,3,NULL),(684,834,1,2,NULL),(685,853,1,10,NULL),(686,853,NULL,11,NULL),(687,4,NULL,22,NULL),(688,5,NULL,5,NULL),(689,2057,1,1,NULL),(690,2057,1,2,NULL),(691,778,1,4,NULL),(692,776,1,3,NULL),(693,4,NULL,23,NULL),(694,853,NULL,12,NULL),(695,5,NULL,6,NULL),(696,4,NULL,24,NULL),(697,781,1,3,NULL),(698,775,1,5,NULL),(699,785,1,4,NULL),(700,4,1,25,''),(701,2087,1,1,NULL),(702,2089,1,1,''),(703,2091,1,1,''),(704,2093,1,1,''),(705,297,1,2,'Applied “Draft 1”'),(706,4,1,26,'Applied “Draft 1”'),(707,4,1,27,'Applied “Draft 1”'),(708,4,1,28,'Applied “Draft 1”'),(714,853,1,13,'Applied “Draft 1”'),(731,320,1,5,'Applied “Draft 1”'),(732,313,1,6,'Applied “Draft 1”'),(733,310,1,6,'Applied “Draft 1”'),(734,308,1,5,'Applied “Draft 1”'),(735,298,1,5,'Applied “Draft 1”'),(736,836,1,2,'Applied “Draft 1”'),(737,776,1,4,'Applied “Draft 2”'),(738,834,1,3,'Applied “Draft 1”'),(739,307,1,5,'Applied “Draft 1”'),(740,785,1,5,'Applied “Draft 1”'),(743,303,1,5,NULL),(744,775,1,6,NULL),(756,853,1,14,'Applied “Draft 1”'),(763,2266,NULL,19,NULL),(764,2266,NULL,20,NULL),(765,2266,NULL,21,NULL),(766,2266,NULL,22,NULL),(767,2266,NULL,23,NULL),(768,2266,NULL,24,NULL),(769,2266,NULL,25,NULL),(770,2266,NULL,26,NULL),(771,2266,NULL,27,NULL),(772,2266,NULL,28,NULL),(773,2266,NULL,29,NULL),(774,2266,NULL,30,NULL),(775,2266,NULL,31,NULL),(776,2266,NULL,32,NULL),(777,2266,NULL,33,NULL),(778,2266,NULL,34,NULL),(779,2266,NULL,35,NULL),(780,2266,NULL,36,NULL),(781,2266,NULL,37,NULL),(782,2266,NULL,38,NULL),(792,2266,1,39,'Applied “Draft 1”'),(810,2140,NULL,49,NULL),(811,2140,NULL,50,NULL),(813,2140,NULL,51,NULL),(815,2140,NULL,52,NULL),(816,2140,NULL,53,NULL),(817,2140,NULL,54,NULL),(820,2140,NULL,55,NULL),(821,2140,NULL,56,NULL),(823,2140,NULL,57,NULL),(825,2140,NULL,58,NULL),(826,2140,NULL,59,NULL),(827,2140,NULL,60,NULL),(828,2140,NULL,61,NULL),(829,2140,NULL,62,NULL),(830,2140,NULL,63,NULL),(831,2140,NULL,64,NULL),(836,2140,NULL,65,NULL),(837,2140,NULL,66,NULL),(839,2140,NULL,67,NULL),(840,2140,NULL,68,NULL),(842,2140,NULL,69,NULL),(843,2140,NULL,70,NULL),(844,2140,NULL,71,NULL),(845,2140,NULL,72,NULL),(846,2140,NULL,73,NULL),(847,2140,NULL,74,NULL),(848,2140,NULL,75,NULL),(849,2140,NULL,76,NULL),(850,2140,NULL,77,NULL),(851,2140,NULL,78,NULL),(852,2140,NULL,79,NULL),(853,2140,NULL,80,NULL),(854,2140,NULL,81,NULL),(855,2140,NULL,82,NULL),(856,2140,NULL,83,NULL),(857,2140,NULL,84,NULL),(858,2140,NULL,85,NULL),(859,2266,NULL,40,NULL),(860,2266,NULL,41,NULL),(861,2140,NULL,86,NULL),(862,2140,NULL,87,NULL),(863,2140,NULL,88,NULL),(864,2140,NULL,89,NULL),(865,2140,NULL,90,NULL),(866,2140,NULL,91,NULL),(867,2140,NULL,92,NULL),(868,2266,NULL,42,NULL),(869,2140,NULL,93,NULL),(870,2140,NULL,94,NULL),(871,54,NULL,2,NULL),(872,61,NULL,2,NULL),(873,71,NULL,2,NULL),(874,71,NULL,3,NULL),(875,71,NULL,4,NULL),(876,71,NULL,5,NULL),(877,71,NULL,6,NULL),(878,71,NULL,7,NULL),(879,71,NULL,8,NULL),(880,71,NULL,9,NULL),(881,71,NULL,10,NULL),(882,71,NULL,11,NULL),(883,71,NULL,12,NULL),(884,103,NULL,2,NULL),(885,103,NULL,3,NULL),(886,2266,NULL,43,NULL),(887,2266,NULL,44,NULL),(888,2266,NULL,45,NULL),(889,2266,NULL,46,NULL),(890,2266,NULL,47,NULL),(891,2266,NULL,48,NULL),(892,271,NULL,2,NULL),(893,214,NULL,2,NULL),(894,2140,NULL,95,NULL),(895,2266,NULL,49,NULL),(896,2140,NULL,96,NULL),(897,4,1,29,'Applied “Draft 1”'),(898,4,1,30,'Applied “Draft 1”'),(899,74,NULL,2,NULL),(900,74,NULL,3,NULL),(901,2266,NULL,50,NULL),(902,2266,NULL,51,NULL),(903,74,NULL,4,NULL),(904,74,NULL,5,NULL),(905,2266,NULL,52,NULL),(906,2266,NULL,53,NULL),(907,2266,NULL,54,NULL),(908,2266,NULL,55,NULL),(913,2266,NULL,56,NULL),(914,2266,NULL,57,NULL),(935,82,1,2,'Applied “Draft 1”'),(936,82,1,3,''),(937,51,1,2,''),(938,853,1,15,'Applied “Draft 1”'),(939,853,1,16,'Applied “Draft 1”'),(944,2266,1,58,'Applied “Draft 1”'),(945,2266,1,59,'Applied “Draft 1”'),(946,2266,1,60,'Applied “Draft 1”'),(947,2266,1,61,'Applied “Draft 1”'),(948,2266,1,62,'Applied “Draft 1”'),(949,2266,1,63,'Applied “Draft 1”'),(950,2266,1,64,''),(951,2266,1,65,'Applied “Draft 1”'),(952,2140,1,97,'Applied “Draft 1”'),(953,2140,NULL,98,NULL),(954,774,1,7,'Applied “Draft 2”'),(973,94,1,2,'Applied “Draft 1”'),(1013,4,1,31,''),(1032,4,NULL,32,NULL),(1033,4,NULL,33,NULL),(1034,4,NULL,34,NULL),(1035,4,1,35,'Applied “Draft 1”'),(1036,4,1,36,'Applied “Draft 1”'),(1037,4,1,37,'Applied “Draft 1”'),(1038,4,1,38,'Applied “Draft 1”'),(1039,4,1,39,'Applied “Draft 1”'),(1040,4,1,40,'Applied “Draft 1”'),(1041,4,1,41,'Applied “Draft 1”'),(1042,4,1,42,'Applied “Draft 1”'),(1043,4,1,43,'Applied “Draft 1”'),(1044,4,1,44,'Applied “Draft 1”'),(1045,4,1,45,''),(1046,4,1,46,'Applied “Draft 1”'),(1047,4,1,47,'Applied “Draft 1”'),(1048,4,1,48,'Applied “Draft 1”'),(1049,4,1,49,'Applied “Draft 1”'),(1050,4,1,50,'Applied “Draft 1”'),(1051,4,1,51,''),(1052,4,1,52,'Applied “Draft 1”'),(1076,2266,NULL,66,NULL),(1092,2477,NULL,142,NULL),(1093,2477,NULL,143,NULL),(1094,2477,NULL,144,NULL),(1095,2477,NULL,145,NULL),(1096,2477,NULL,146,NULL),(1097,4,1,53,'Applied “Draft 1”'),(1098,2477,NULL,147,NULL),(1099,2477,NULL,148,NULL),(1100,2477,NULL,149,NULL),(1101,2477,NULL,150,NULL),(1102,2477,NULL,151,NULL),(1103,2477,NULL,152,NULL),(1104,2266,NULL,67,NULL),(1105,2477,NULL,153,NULL),(1106,2477,NULL,154,NULL),(1107,2477,NULL,155,NULL),(1108,2477,NULL,156,NULL),(1109,2477,NULL,157,NULL),(1110,2477,NULL,158,NULL),(1111,2477,NULL,159,NULL),(1112,2477,NULL,160,NULL),(1113,2477,NULL,161,NULL),(1114,2477,NULL,162,NULL),(1115,2477,NULL,163,NULL),(1116,2477,NULL,164,NULL),(1117,2477,NULL,165,NULL),(1118,2477,NULL,166,NULL),(1119,2477,NULL,167,NULL),(1120,2477,NULL,168,NULL),(1121,2477,NULL,169,NULL),(1122,2266,NULL,68,NULL),(1123,4561,1,1,''),(1124,4561,1,2,'Applied “Draft 1”'),(1125,305,1,4,'Applied “Draft 1”'),(1126,779,1,4,NULL),(1127,754,1,5,'Applied “Draft 1”'),(1128,309,1,5,NULL),(1129,856,1,4,NULL),(1130,760,1,3,NULL),(1131,778,1,5,NULL),(1132,784,1,3,'Applied “Draft 1”'),(1133,4607,1,1,''),(1134,2477,NULL,170,NULL),(1135,2477,NULL,171,NULL),(1136,2477,NULL,172,NULL),(1137,2477,NULL,173,NULL),(1138,2477,NULL,174,NULL),(1139,2477,NULL,175,NULL),(1140,2477,NULL,176,NULL),(1141,2477,NULL,177,NULL),(1142,2477,NULL,178,NULL),(1143,2477,NULL,179,NULL),(1144,2477,NULL,180,NULL),(1145,2477,NULL,181,NULL),(1146,2477,NULL,182,NULL),(1147,2477,NULL,183,NULL),(1148,2477,NULL,184,NULL),(1149,2477,NULL,185,NULL),(1150,2477,NULL,186,NULL),(1151,2477,NULL,187,NULL),(1152,2477,NULL,188,NULL),(1153,2477,NULL,189,NULL),(1154,2477,NULL,190,NULL),(1155,2477,NULL,191,NULL),(1156,5,NULL,7,NULL);
commit;

--
-- Dumping data for table `craft_searchindex`
--

set autocommit=0;
INSERT INTO `craft_searchindex` VALUES (1,'username',0,' tdavis ',1),(1,'lastname',0,' davis ',1),(799,'field',4,' http viget com flourish you matter ',1),(2086,'kind',0,' image ',1),(4,'title',0,' about ',1),(4,'slug',0,' about ',1),(3766,'filename',0,' img 0117 jpeg ',1),(15,'field',13,' bike ',1),(806,'field',4,' https www viget com articles why we love craft cms ',1),(805,'field',4,' https www viget com articles craft cms summit ',1),(804,'field',4,' https www viget com articles integrating craft shopify ',1),(802,'field',4,' http viget com extend reroute plugin for craft ',1),(801,'field',4,' http viget com extend getting crafty ',1),(5,'title',0,' contact ',1),(5,'slug',0,' contact ',1),(858,'field',4,' https www viget com articles level up with craft cms know when to ditch twig ',1),(853,'field',18,' im a senior software engineer at dutchie if you have a project that you think i can help with get in touch ',1),(853,'slug',0,' homepage ',1),(852,'slug',0,'',1),(853,'title',0,' homepage ',1),(852,'field',13,' food 1 food 2 food 3 food 4 food 5 food 6 ',1),(851,'kind',0,' image ',1),(851,'extension',0,' jpg ',1),(851,'filename',0,' food 6 jpg ',1),(850,'extension',0,' jpg ',1),(849,'filename',0,' food 4 jpg ',1),(850,'kind',0,' image ',1),(849,'extension',0,' jpg ',1),(848,'kind',0,' image ',1),(848,'extension',0,' jpg ',1),(848,'filename',0,' food 3 jpg ',1),(847,'filename',0,' food 2 jpg ',1),(846,'kind',0,' image ',1),(847,'kind',0,' image ',1),(846,'filename',0,' food 1 jpg ',1),(846,'extension',0,' jpg ',1),(13,'field',13,' me img 2226 1591575874636 ',1),(16,'field',13,' bball 3 bball 4 bball 5 bball smile bball chill bball save bball run ',1),(811,'field',4,' https www viget com articles craft color swatches plugin ',1),(810,'field',4,' https www viget com articles responsive images with srcset craft ',1),(821,'extension',0,' jpg ',1),(46,'slug',0,' javascript execution patterns for non web apps ',1),(46,'title',0,' javascript execution patterns for non web apps ',1),(46,'field',2,' i finally got back to blogging and wrote an article about javascript execution patterns a topic which i recently presented on at the dc jquery meetup ',1),(46,'field',4,' http viget com extend javascript execution patterns for non web apps ',1),(47,'name',0,' javascript ',1),(48,'name',0,' presentations ',1),(49,'slug',0,' who says the web is just for squares ',1),(49,'title',0,' who says the web is just for squares ',1),(49,'field',2,' i had some fun building a crazy diamond responsive grid for a project at work this article explains how i did it ',1),(49,'field',4,' http viget com inspire who says the web is just for squares ',1),(50,'name',0,' css ',1),(51,'field',3,' javascript ',1),(51,'title',0,' dumbwaiter chrome extension ',1),(51,'slug',0,' dumbwaiter chrome extension ',1),(51,'field',2,' i recently got around to trying out statamic to create a little recipe manager yes i know there are tons of apps out there that do this type of stuff but i wanted to really be able to control everything i also wanted to figure out some way that my wife could bookmark recipes for us and i didnt expect her to login to my statamic install and go through that whole process of adding a new entry i wanted her to be able to click a button when she was on a site displaying a recipe that she wanted to bookmark and an entry would then be created that led me to create my first chrome extension dumbwaiter the basic idea is that you provide a url that will be opened in a popup window when you click the exntension then you provide some javascript to do something on the current page you are on and then some more javascript to do something with that data so in my case i grab the url of the page where the recipe is coming from grab the name of the recipe and then whatever text is highlighted on the page so the process to add a recipe is to highlight the actual recipe then click the dumbwaiter icon and all the data will be pre populated into my statamic new entry form here is some example code that i am using but the options are limitless whatever you can do with jquery you can do with dumbwaiter retrieve data code var title = jquery meta property= og title attr content var source = window location href var img = jquery meta property= og image attr content var content = window getselection tostring if title title = jquery title text var data = title title source source img img content content insert data code function makeslug str str = str replace s s $ g trim str = str tolowercase remove accents swap n for n etc var from = aaaaeeeeiiiioooouuuunc var to = aaaaeeeeiiiioooouuuunc for var i=0 l=from length i l i str = str replace new regexp from charat i g to charat i str = str replace a z0 9 g remove invalid chars replace s g collapse whitespace and replace by replace g collapse dashes return str $ publish title val data title focus var slug = makeslug data title $ publish slug val slug $ input name= page yaml source val data source $ textarea markitupeditor val data content you can download dumbwaiter here and let me know if you guys find any creative uses ',1),(52,'field',3,' asides javascript ',1),(52,'slug',0,' jquery stick em ',1),(52,'title',0,' jquery stick em make content sticky on scroll to a point ',1),(52,'field',2,' i created a plugin jquery stick em to allow items to be sticky but only within a container ',1),(52,'field',4,' http viget com inspire jquery stick em ',1),(53,'name',0,' asides ',1),(54,'title',0,' advanced templating with expressionengine ',1),(54,'slug',0,' advanced templating with expressionengine ',1),(54,'field',2,' i was luckily enough to be asked to speak at the dceers day conference yesterday i was asked to speak about best templating practices which ended up being a talk about how i use stash and how i build custom plugins to streamline templating it was a great day filled with discussion about expressionengine and it made me look forward to eeci even more ',1),(54,'field',14,' 2018 ',1),(55,'name',0,' expressionengine ',1),(56,'slug',0,' sass compass never write regular css again ',1),(56,'title',0,' sass compass never write regular css again ',1),(56,'field',2,' i gave a presentation last week at refresh dc about sass compass after being introduced to sass compass about six months ago i cant imagine writing regular css ever again i was a little hesitant at first but now i cant live without it i posted my slides online and here is the git repo with all of the code samples ',1),(56,'field',14,' 2017 ',1),(57,'field',3,' news ',1),(57,'slug',0,' a long time coming ',1),(57,'title',0,' a long time coming ',1),(57,'field',2,' its funny how quickly you come to hate your own site almost exactly 2 years ago i launched a redesigned version of my site after maybe a year i hated it but who has time to redo their own site apparently it took me 6 months to find the time to finish mine even within those 6 months i found things that i had started on the site that i hated my goals were to simplify things a bit make it responsive and play around with sass and compass i also wanted to take some of the focus off of my blog since i really dont write too much on it anymore i write almost all of my articles on the viget blogs these days since im giving 2 presentations in the next few weeks refresh dc dceers i wanted to get my new site up so i may have rushed a few things but im pretty happy with it let me know if you run into any errors ',1),(798,'field',4,' http viget com inspire building a nested responsive grid with sass compass ',1),(58,'name',0,' news ',1),(59,'slug',0,' background clip text shadow amp gradients oh my ',1),(59,'title',0,' background clip text shadow gradients oh my ',1),(59,'field',2,' i have been able to play around with background clip text shadow and gradients on a few recent projects and i wrote up some tricks that i have come across ',1),(59,'field',4,' http www viget com inspire background clip text shadow gradients ',1),(60,'slug',0,' notes from our default expressionengine build ',1),(60,'title',0,' notes from our default expressionengine build ',1),(60,'field',2,' i put together some notes about vigets default expressionengine build in the hopes that you can find some tips and tricks in all of my nonsense ',1),(60,'field',4,' http www viget com inspire our default expressionengine build ',1),(61,'field',3,' expressionengine ',1),(61,'title',0,' is ajax expressionengine plugin ',1),(61,'slug',0,' is ajax ee plugin ',1),(61,'field',2,' for a recent project i needed to detect whether a request was an ajax request or not mx ajax detect already existed but i didnt like that you needed the extra set of tags usage if exp is ajax == true oh yeaaah if else oh nooo if download you can find the plugin on devot ee and github ',1),(61,'field',14,' 1999 ',1),(62,'slug',0,' html5 elements irresponsible choice right now ',1),(62,'title',0,' styling html5 elements an irresponsible choice right now ',1),(62,'field',2,' i figured it was time to post about a controversial topic that had come up recently i just dont see the value in using most html5 elements right now ',1),(62,'field',4,' http www viget com inspire html5 elements irresponsible choice right now ',1),(63,'name',0,' html ',1),(64,'name',0,' thoughts ',1),(65,'slug',0,' a couple of presentations ',1),(65,'title',0,' a couple of presentations ',1),(65,'field',2,' ive given a couple of presentations recently so i thought i would share them mee ee sitting in a tree an internal presentation given to all of viget to give an overview of ee and why i love it add some awesome sauce a presentation given to clarksburg high school students with a supporting demo site to introduce them to some html5 and css3 features ',1),(65,'field',14,' 1992 ',1),(66,'field',3,' asides css ',1),(66,'slug',0,' css generated content ',1),(66,'title',0,' my new best friend css generated content ',1),(66,'field',2,' ive started to use generated content more and more these days here are a couple of examples from a recent project ',1),(67,'slug',0,' use htaccess files with mamp ',1),(67,'title',0,' so you want to use htaccess files with mamp ',1),(67,'field',2,' well this was easy in the older version of mamp that i had you would just drop them in place and they worked i was having a problem with something so i thought maybe there was an updated version of mamp that would solve the problem sure enough there was so i installed it and went along my way then i went back to the local version of my site and it was completely busted i finally tracked it down to htaccess files being ignored so i opened up my http conf file and went down to line 378 and sure enough this is what i saw directory options indexes followsymlinks allowoverride none directory in the older version of mamp that i had the default for this value was all in order to get htaccess files working in the new version i just had to change none to all restart the server and everything worked normally just thought i would share in case anyone else runs into this problem ',1),(67,'field',14,' 1989 ',1),(68,'name',0,' web ',1),(69,'field',3,' expressionengine ',1),(69,'slug',0,' config variables plugin ',1),(69,'title',0,' expressionengine config variables plugin ',1),(69,'field',2,' as i was in the process of moving this site into git and having a local version i have been trying to move as many paths as possible into the config php one of them included the cache path for image sizer since the local and production paths are different i wanted some way for them to be dynamic in my config php file i am using $ server document root to set the base path i could have enabled php in the template and then use the $ server document root but that seemed like a silly reason to enable php so i made a plugin that gives you access to everything in the $config array without having to use php usage exp config vars value= base path to see all possible values just pass in all exp config vars value= all download you can download from github or devot ee as always let me know if you run into any issues ',1),(795,'field',4,' http www viget com inspire building an expressionengine mini calendar scroller ',1),(70,'field',3,' asides ',1),(70,'slug',0,' url design ',1),(70,'title',0,' url design ',1),(70,'field',2,' great article about designing urls it really is an art and is so easy to do so wrong ',1),(71,'title',0,' hon ee pot captcha for expressionengine ',1),(71,'slug',0,' hon ee pot captcha expressionengine ',1),(71,'field',2,' i have a confession to make i hate captcha but on the other hand spam is one of the most frustrating issues ever so with that being said i am a big fan of honeypot captcha i couldnt find any expressionengine addons that added honeypot captcha functionality for both the comment form and the freeform module so i decided to go ahead and create one basic functionality this extension validates the ee comment form and freeform forms to make sure a field that is hidden with css is left empty getting started download hon ee pot captcha unzip the folder and copy the honeepot folder into your system expressionengine third party directory go to add ons extensions and enable extension you can customize the field name for the honey pot field and the message a user receives if the field is filled in by going to the extension settings setup in the freeform module go to fields create a new field now create a field with the field name matching the field name in the hon ee pot captcha settings the default is honeepot now in your form add the honey pot field li class= screen reader label for= honeepot dont put anything here label input type= text name= honeepot id= honeepot li in my css i have a class to move things off of the page screen reader display block important left 9999px important position absolute important top 9999px important you can add the same form field to your comment forms as well that is all hopefully this addition will help to combat some of the spam contact form submissions and comments even though they get caught by low nospam you can download the hon ee pot captcha extension on github let me know if you run into any issues ',1),(71,'field',14,' 1971 ',1),(72,'field',3,' asides css javascript ',1),(72,'slug',0,' custom file inputs jquery ',1),(72,'title',0,' custom file inputs with a bit of jquery ',1),(72,'field',2,' i needed to create a custom file input when building clever little bag so ive written a tutorial on the inspire blog discussing that process ',1),(794,'field',4,' http www viget com inspire custom file inputs with a bit of jquery ',1),(73,'slug',0,' simple jquery refactoring ',1),(73,'title',0,' simple jquery refactoring ',1),(73,'field',2,' ive learned so much about jquery while working at viget i wrote a blog post about how you can improve your jquery through some simple refactoring ',1),(73,'field',4,' http www viget com inspire simple jquery refactoring ',1),(74,'slug',0,' jquery one page navigation plugin ',1),(74,'title',0,' jquery one page navigation plugin ',1),(74,'field',2,' when appropriate i am a fan of the one page sites i really like the ones that add smooth scrolling and highlight the navigation depending upon which part of the page you have scrolled to here are a few examples brizk design and crush lovely i finally have a freelance project where a one page site makes sense so i needed to write the javascript to make the navigation work how i wanted i wanted the page to scroll smoothly when the navigation was clicked so i used the jquery scrollto plugin i also wanted the page to automatically highlight the correct navigation section depending upon which section was scrolled to and that was where i added my custom code if you want to skip ahead you can check out the demo and download the plugin from github the markup i started with an unordered list for the navigation and a bunch of sections ul id= nav li class= current a href= section 1 section 1 a li lia href= section 2 section 2 a li li a href= section 3 section 3 a li ul div id= section 1 strongsection 1 strong plorem ipsum dolor sit amet consectetur adipisicing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua p div div id= section 2 strongsection 2 strong plorem ipsum dolor sit amet consectetur adipisicing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua p div div id= section 3 strongsection 3 strong plorem ipsum dolor sit amet consectetur adipisicing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua p div the javascript then i added jquery the scrollto plugin and my plugin to the page script src= jquery js script script src= jquery scrollto js script script src= jquery nav min js script finally i just need to call my plugin on the navigation $ document ready function $ nav onepagenav options there are a few options for this plugin currentclass current class to add to the list item when the navigation item is selected changehash false if you want the hash to change when the user clicks on the navigation change this to true scrollspeed 750 speed to scroll the page when the navigation is clicked and thats it check out the demo and download the plugin from github ',1),(74,'field',14,' 1962 ',1),(75,'name',0,' tutorial ',1),(76,'field',3,' thoughts web ',1),(76,'slug',0,' most out of an event apart ',1),(76,'title',0,' how i got the most out of an event apart ',1),(76,'field',2,' i had the pleasure of attending an event apart last week when they finally made it to dc this was the third time i had atended an event apart conference but i feel like i absorbed the most from this one leave the laptop at home the last two times i attended i brought my laptop and took notes during the presentations sure i learned some things but i think other things slipped by me as i was typing this time i brought a pencil notebook and an ipad that was so graciously given to me as a viget 10th anniversary gift now i realize that not everyone has the luxury of choosing between a laptop and an ipad but i really only used the ipad for checking email and twitter during breaks so i definitely could have gone without that i really enjoyed just sitting absorbing and sporadically jotting down notes when i thought it was necessary youve got the slides available to download so dont feel like you have to write down everything that is being presented to you focus on the speakers i know a feed apart is really cool but do you really want to spend your time on twitter while speakers are presenting try checking a feed apart during the breaks to catch up on what everyone thought about the speaker leave your phone alone and stop checking your email you paid good money for the conference so pay attention stay sober i didnt even make it to the opening night party this year because thursdays are my basketball night but i heard about numerous people who got drunk at the party really people arent we all adults now didnt we pay good money for this conference if you want to go re live your college days dont waste $1000 to do it so go to the party and mingle but please dont get sloppy drunk we really dont want to hear about it the next day of the conference just enjoy yourself you are surrounded by people just like you for two days its fantastic we even had lunch the first day with jason santa maria and jeremy keith how badass is that much thanks goes to zeldman eric meyer for organizing such a fantastic conference and i look forward to going back again next year ',1),(77,'field',3,' css html javascript ',1),(77,'slug',0,' find your own starting point ',1),(77,'title',0,' find your own starting point ',1),(77,'field',2,' everyone and their mother has been releasing their html5 boilerplates for others to use there is no chance that i would just take such a set of files and start building a site youve got to find a good starting place for yourself not someone elses i have been starting from a similar point for everything that i build now and i just finally put it out on github im not doing this because i want someone to use this template to start a site im doing this so that i can have somewhere to always access this set of files with that being said i would urge everyone to have their own starting point you know your own coding patterns best so just figure out the best place for yourself to start from sure you can learn from everyone elses but it is much more beneficial to have your own mine is super basic so feel free to start from mine and modify it to suit your needs see my starting point on github and feel free to fork away and modify ',1),(78,'field',3,' expressionengine ',1),(78,'slug',0,' ee 2x addons ',1),(78,'title',0,' a couple of ee 2 x addons ',1),(78,'field',2,' its no secret that im a big expressionengine fan im really excited to get started using ee 2 x on projects but the one thing holding me back is add ons ive never written an add on but i use tons of add ons that others have written with that being said i ended up porting over a couple of add ons to work with ee 2 x scroll to comment first i modified matthew pennells scroll to comment extension when a user submits a comment they are scrolled down to the newly added comment you can find the ee 2 x compatible version on github ee default cp tabs we loved using lg add cp tabs in order to add a tab for structure for all users as we were getting our ee 2 x template site setup we noticed that this extension wasnt converted yet i made a slight modification so that you only get one textbox to add tabs instead of multiple boxes broken out by member group you can find my ee 2 x compatible version on github my hope is to eventually get this site converted over to ee 2 x and i think the only add on holding me back is the eeflickr module ',1),(78,'field',14,' 1956 ',1),(79,'slug',0,' jquery image scroller plugin ',1),(79,'title',0,' jquery image scroller plugin ',1),(79,'field',2,' while working on the individual product page for puma i had to use jquery to create a scrollable interface for really tall products its kind of hard to describe but have a look at the plugin for a better description ',1),(79,'field',4,' http www viget com inspire jquery image scroller plugin ',1),(80,'field',3,' javascript tutorial ',1),(80,'slug',0,' jquery show password plugin ',1),(80,'title',0,' jquery show password plugin ',1),(80,'field',2,' in a recent project at work i had to add in functionality so that a user could see what they had typed in a password field when they click a link one would think that it is as easy as using javascript to change the type attribute but that of course doesnt work in ie virtually all of the jquery plugins that i found used a checkbox instead of a link to toggle between the two states so i set out to write my own if you just want to get to the code you can download the plugin from github or check out the demo this plugin works by adding a text field that takes the value of what is typed into the password field then when the link is clicked the password field is hidden and the text field is shown the markup in the demo well just start with a simple form form action= ol class= forms li label for= username username label input type= text id= username li li label for= password password label input type= password id= password class= password li li class= buttons button type= submit submit button li ol form add a little style in the design that i was working on the link to show the password actually sat on top of the password input field so we just need to add a little bit of css to make that happen forms li position relative show password link display block position absolute z index 11 password showing position absolute z index 10 by default the link to show the password has the class of show password link but that can be changed in the plugin options also the password showing class is added to the text field that is used to show the password but again that can be changed via the plugin options and now javascript takes over to get started you will need to include jquery and my plugin script type= text javascript src= scripts jquery js script script type= text javascript src= scripts jquery showpassword min js script then you can instantiate it like this $ document ready function $ password showpassword options linkclass show password link class for the toggle link linktext show text for the toggle link showpasswordlinktext hide text for the toggle link when password is not masked showpasswordinputclass password showing class for the text input that will show the password linkrightoffset 0 offset for the link from the right of parent linktopoffset 0 offset for the link from the top of parent so there you have it check out the demo and download the plugin from github ',1),(81,'slug',0,' jquery simple validation plugin ',1),(81,'title',0,' jquery simple validation plugin ',1),(81,'field',2,' i find that i end up consistently adding form validation to sites and for some reason i never made a plugin out of it i feel like every jquery validation plugin that i look at is way too bloated for what i really need so i finally whipped up a simple validation plugin that comes in at about 1 5kb i tried to keep it really simple with this plugin just check to see if a field that has been marked as required is not empty and check to see if an email address is valid if you want to skip ahead check out the demo and download the plugin from github start with the markup to get started i would always start with a simple form marked up in an ordered list form action= thanks htm method= post ol class= forms li label for= name em class= required em name label input type= text name= name id= name li li label for= email em class= required em email label input type= text name= email id= email li li label for= website website label input type= text name= website id= website li li label for= comment em class= required em comment label textarea name= comment id= comment textarea li li class= buttons button type= submit submit button li ol form then i need some way to denote which fields should be validated the html5 required attribute just isnt supported well enough to use so all that is needed is to add the class of required to each field that needs to be validated form action= thanks htm method= post ol class= forms li label for= name em class= required em name label input type= text name= name id= name class= required li li label for= email em class= required em email label input type= text name= email id= email class= required li li label for= website website label input type= text name= website id= website li li label for= comment em class= required em comment label textarea name= comment id= comment class= required textarea li li class= buttons button type= submit submit button li ol form since i have an email field i also need to add the class of email to the email field form action= thanks htm method= post ol class= forms li label for= name em class= required em name label input type= text name= name id= name class= required li li label for= email em class= required em email label input type= text name= email id= email class= required email li li label for= website website label input type= text name= website id= website li li label for= comment em class= required em comment label textarea name= comment id= comment class= required textarea li li class= buttons button type= submit submit button li ol form i also want to tell my plugin which forms to validate so ill also add a class to the form itself form action= thanks htm method= post class= required form ol class= forms li label for= name em class= required em name label input type= text name= name id= name class= required li li label for= email em class= required em email label input type= text name= email id= email class= required email li li label for= website website label input type= text name= website id= website li li label for= comment em class= required em comment label textarea name= comment id= comment class= required textarea li li class= buttons button type= submit submit button li ol form its javascript time get started by including jquery and my simple validate plugin then include them on the page script type= text javascript src= scripts jquery js script script type= text javascript src= scripts jquery simplevalidate min js script now i just need to call my plugin on any form that has required fields $ document ready function $ form required form simplevalidate just like that the form validation will work but i want to customize a few of the options first i want to change the error element to use an em tag instead of a strong tag $ document ready function $ form required form simplevalidate errorelement em then maybe i decide that i want to submit the form via ajax there is no need to add that kind of functionality into the plugin ajax is so easy with jquery so i just need to tell the plugin that im going to submit the form with ajax and then pass in my callback function which will fire once the form is submitted with no errors $ document ready function $ form required form simplevalidate errorelement em ajaxrequest true completecallback function $el var formdata = $el serialize do ajax request with formdata variable options here are all of the available options for the plugin errorclass error class for the error message text errortext label is a required field structure for the error message text label will be replaced with the associated label text emailerrortext please enter a valid label structure for the email error message text label will be replaced with the associated label text errorelement strong element to use for the error message text removelabelchar if there is an extra character in the label to denote a required field strip it out inputerrorclass class to add to an input when it is marked as having an error completecallback function to call once the form is error free ajaxrequest false if you dont want to use the default form action and want to submit it via ajax check out the demo and download the plugin from github let me know if you run into any bugs or have any feature requests ',1),(81,'field',14,' 1954 ',1),(82,'title',0,' my long journey from wordpress to expressionengine ',1),(82,'slug',0,' from wordpress to expressionengine ',1),(82,'field',2,' about the time i started my new job at viget labs in december 2009 i decided that it was time to start working on a redesigned website this redesign was a chance for me to play around with some of the new css3 properties font face jquery my first three designs have also been very white so i wanted to try something a little different i wanted to go with a dark background and i wanted to be able to change the feel of the site very easily so by changing the background color in the stylesheet i can completely change how the site feels check it out with red green or purple all that is done by just simply changing the background color on the body another big step in this redesign is finally transitioning to expressionengine my first experience with content management systems began with wordpress and i had a good run with it but i felt like it was time to transition to a real cms let me just say that going transferring posts form wordpress to expressionengine was a huge pain in the butt expressionengine can import a movable type format but wordpress cannot export into that format there are various scripts on the web that can convert wordpress to movable type but all of them are outdated so i decided to approach it by installing movable type on my server importing the wordpress file and then exporting the movable type file unfortunately that process doesnt work that smoothly and movable type kept failing to import the wordpress file after much searching i finally found an air application that can convert from wordpress to movable type format so after some cleanup of the posts i was finally ready to launch i havent looked at the site in ie yet and im sure there will be some broken urls but i will get to that eventually im also hoping to get back to posting articles more regularly here so stay tuned some other notes headings are using aller being displayed with font face thanks go out to my friend nate eagle for helping to write my about page thanks also go out to erik reagan for helping me with some last minute htaccess rules ',1),(83,'field',3,' news ',1),(83,'slug',0,' transition ',1),(83,'title',0,' transition ',1),(83,'field',2,' its been a long time since ive posted anything here but im hoping to change that soon ive been busy with a new job teaching and i even found time to get married too ive been working on building a newly designed site with expressionengine and i am finally getting to the last stages the hardest part now is porting all of my posts and comments over so while i am transitioning i am going to be turning off comments for this site so that i can pull everything over and not worry about missing anything if you need to you can contact me through my site ',1),(84,'slug',0,' youtube chromeless video jquery plugin ',1),(84,'title',0,' youtube chromeless video player jquery plugin ',1),(84,'field',2,' in my latest blog post on the viget inspire blog i discussed a youtube chromeless video jquery plugin that i wrote while building the puma running site ',1),(84,'field',4,' http www viget com inspire youtube chromeless video jquery plugin ',1),(85,'slug',0,' jquery presentation plugin ',1),(85,'title',0,' jquery presentation plugin say no to keynote ',1),(85,'field',2,' im done with keynote and powerpoint i created a jquery presentation plugin to use when giving presentations ',1),(85,'field',4,' http www viget com inspire jquery presentation plugin ',1),(86,'slug',0,' a better jquery in field label plugin ',1),(86,'title',0,' a better jquery in field label plugin ',1),(86,'field',2,' ive just written another article for my company blog about using jquery in field labels ',1),(86,'field',4,' http www viget com inspire a better jquery in field label plugin ',1),(87,'field',3,' asides ',1),(87,'slug',0,' on flash ',1),(87,'title',0,' on flash ',1),(87,'field',2,' ever since the ipad was announced and we were informed that flash wasnt supported everyone and their mother has been writing articles about flash i actually thoroughly enjoyed jeff crofts take ',1),(88,'slug',0,' the importance of teaching your clients and being the boss ',1),(88,'title',0,' the importance of teaching your clients and being the boss ',1),(88,'field',2,' hallelujah we may check the site in a dozen browser and operating configurations but the visitors dont and never will we can not forget that ',1),(88,'field',14,' 1946 ',1),(89,'slug',0,' do what works best for you not them ',1),(89,'title',0,' do what works best for you not them ',1),(89,'field',2,' cameron moll reminds us that if something works for you but isnt recommended by others who cares do what works best for you ',1),(89,'field',14,' 1945 ',1),(792,'field',3,' css ',1),(792,'field',4,' http www viget com inspire practical uses of css3 ',1),(803,'slug',0,' shopify ',1),(803,'title',0,' shopify ',1),(804,'field',3,' craft shopify ',1),(91,'slug',0,' dont fear the fold people do scroll ',1),(91,'title',0,' dont fear the fold people do scroll ',1),(91,'field',2,' im definitely in the camp of people who dont believe in the fold in web design and this user testing does provide evidence to support that was of thinking designs should still be structured so that more important information is higher on the page though ',1),(91,'field',14,' 1942 ',1),(92,'slug',0,' simplest jquery slideshow ',1),(92,'title',0,' simplest jquery slideshow ',1),(92,'field',2,' i totally agree with this thinking everyone loves jquery plugins but they can sometimes be extremely bloated for things that can be coded relatively simply ',1),(92,'field',14,' 1941 ',1),(93,'slug',0,' smashing magazine killed the community or maybe it was me ',1),(93,'title',0,' smashing magazine killed the community or maybe it was me ',1),(93,'field',2,' it is getting pretty tiresome reading blogs that just have lists as blog posts every once in a while they may be ok but try putting some thought into your posts ',1),(93,'field',14,' 1940 ',1),(94,'slug',0,' freeform fieldframe expressionengine form builder ',1),(94,'title',0,' freeform fieldframe = expressionengine form builder ',1),(94,'field',2,' a form builder is a regular request for some clients when they are looking for a content management system there arent that many cms that have this kind of functionality built in and even if they do the implementation is usually less than desirable if you follow along with what ive been up to you can probably tell that i have been on a big expressionengine kick ive been using it on a ton of projects recently and i love it for its flexibility although it does lack a true form builder i figured out a simple way to build one if you are impatient and just want to get to the demo go ahead although the form will look like nothing special as i have just added some simple styling the real magic of the form builder happens in the control panel we need add ons this form builder would not be possible without the use of some awesome add ons fieldframe this one is a no brainer i cant even imagine building a site without it freeform if you need a form in ee this is the way to do it freeform data select a new fieldtype which pulls in templates and fields from the freeform module creating a field group i built a custom field group called forms which consisted of four fields template notification email addresses return page fields the first three are pretty simple so i will just give a quick run through on the specifications for those fields and give a more detail review of the fields field template this is where you select the freeform template that will be used for the email this field is not completely necessary as just using the default template should be good enough but i figured since it was an option to throw it in field name form template field type freeform data select populate drop down with freeform templates notification email addresses this is where you will enter the email address es that you want to email when the form is submitted since freeform wants multiple email addresses separated by the character i added some help text describing that as well field name form notify field type text input default text formatting for this field none hide formatting menu return page this is where you enter the url to the thank you page once a user successfully submits the form they will be redirected here field name form return field type text input default text formatting for this field none hide formatting menu fields this is where the magic happens this field is a ff matrix field type that consists of five other fields each row of the ff matrix represents one field or field group in the form ill give a brief description of each field of the ff matrix and show you a screenshot so you can get a better picture field name form field field type ff matrix label this is where you will enter the label for the form field col name label cell type text input field this field pulls in all of the fields that have been entered into the freeform module so you are presented with a dropdown of all of the fields and you just select the appropriate one col name field cell type freeform data select populate drop down with freeform fields field type this is where you select the type of form field you want to use i put in a few different options but this could be expanded upon too col name type cell type ff select select options text input textarea select multi select checkbox checkbox group radio group is this field required with most forms there are some fields that are required and some that are not if you want the field to be required you just check the checkbox and the freeform module will make sure it is filled in col name required cell type ff checkbox checkbox label is this field required options finally this field is used when you select a field type that has multiple options for example if you select a select field type you need to provide the options to populate it so you enter the options separated by the character col name options cell type text input so that is all you need for the field group now go ahead and create a forms channel or weblog and make sure to assign the forms field group to it now when you go to publish a forms entry you should see something like this i made a demo form showing off the various types of form fields here is what that entry looks like in the control panel template now that we have our channel and field group all setup we need to deal with the template you could really setup your template template group in various ways so im not going to get into those details one detail that you need to know is that i enabled php for my template first we just need to start with a simple exp weblog entries tag exp weblog entries weblog= forms limit= 1 disable= categories category fields member data pagination trackbacks exp weblog entries next we want to start the freeform form tag exp weblog entries weblog= forms limit= 1 disable= categories category fields member data pagination trackbacks exp freeform form form name= url title form id= url title template= form template notify= form notify return= form return exp freeform form exp weblog entries since we are inside of the exp weblog entries tag we have access to everything that is being returned from that entry if you have any questions about the various parameters refer to the freeform documentation so far the values that we are passing into the parameters are pretty straightforward just custom fields from our entry but passing in the required parameter is a little more challenging since we have to loop through all of the rows in our ff matrix if we refer to the ff matrix documentation we can see how to loop through the rows in the matrix i only want to return rows that have the required checkbox checked and i want to separate the names of the fields with the character then i use the backspace parameter to remove the last one exp freeform form form name= url title form id= url title template= form template notify= form notify return= form return strongrequired= form field search required=y backspace=1 field form field strong exp freeform form next we want to add a title ordered list that will contain the form fields and the submit button exp freeform form form name= url title form id= url title template= form template notify= form notify return= form return required= form field search required=y backspace=1 field form field h1 title h1 ol class= forms li class= buttons input type= submit name= submit value= submit li ol exp freeform form now here is where the code gets interesting just like we did with the required parameter we want to loop through each row in the ff matrix and display a list item for each one form field li li form field first lets display the label if there is one and denote if the field is required or not if label label for= field if required == y em class= required em if label label if the rest of the code is a big conditional statement which depends upon the field types that you specified in the ff matrix lets first take a look at the text input textarea and checkbox types since they are pretty straightforward if type == text input input type= text name= field id= field if elseif type == textarea textarea name= field id= field textarea if elseif type == checkbox input type= checkbox class= checkbox name= field id= field if so we are just checking the type column in the ff matrix and then displaying the rest of the data from the row in the appropriate form field next lets walk through what happens if you select the select or multi select types if elseif type == select type == multi select options select name= field if type == multi select if id= field if type == multi select multiple= multiple size= 4 if php $items = explode options php foreach $items as $item option value= php echo $item php echo $item option php select if so first we are displaying the select element and if it is a multi select we are adding to the name attribute and adding the multiple and size attributes next we want to take the string of options that are separated by the character and create an array out of the string using the explode function then we loop through the array and display the options for each one finally we do virtually the same thing for the radio group and checkbox group field types if elseif type == radio group options ul class= group php $items = explode options $count = 1 php foreach $items as $item liinput type= radio class= radio name= field id= field php echo $count value= php echo $item label for= field php echo $count php echo $item label li php $count php ul if elseif type == checkbox group options ul class= group php $items = explode options $count = 1 php foreach $items as $item liinput type= checkbox class= checkbox name= field id= field php echo $count value= php echo $item label for= field php echo $count php echo $item label li php $count php ul if so thats it really here is the full template exp weblog entries weblog= forms limit= 1 disable= categories category fields member data pagination trackbacks exp freeform form form name= url title form id= url title template= form template notify= form notify return= form return required= form field search required=y backspace=1 field form field h1 title h1 ol class= forms form field li if label label for= field if required == y em class= required em if label label if if type == text input input type= text name= field id= field if elseif type == textarea textarea name= field id= field textarea if elseif type == checkbox input type= checkbox class= checkbox name= field id= field if elseif type == select type == multi select options select name= field if type == multi select if id= field if type == multi select multiple= multiple size= 4 if php $items = explode options php foreach $items as $item option value= php echo $item php echo $item option php select if elseif type == radio group options ul class= group php $items = explode options $count = 1 php foreach $items as $item liinput type= radio class= radio name= field id= field php echo $count value= php echo $item label for= field php echo $count php echo $item label li php $count php ul if elseif type == checkbox group options ul class= group php $items = explode options $count = 1 php foreach $items as $item liinput type= checkbox class= checkbox name= field id= field php echo $count value= php echo $item label for= field php echo $count php echo $item label li php $count php ul if li form field li class= buttons input type= submit name= submit value= submit li ol exp freeform form exp weblog entries conclusion this is not meant to be an all inclusive form builder as you can see there are many other parameters for the freeform module but this was meant to show a creative use of expressionengine and ee add ons to add functionality that is not directly built into the cms so go forth and create ',1),(95,'field',3,' javascript tutorial ',1),(95,'slug',0,' reversed ordered list jquery ',1),(95,'title',0,' reversed ordered list with jquery ',1),(95,'field',2,' at work this past week a client requested something that i wasnt sure how to achieve a reversed ordered list so basically they wanted to have a top 10 list with the first item being numbered 10 and the last 1 if you want to skip ahead to the demo go ahead view demo now sure i could have just written the numbers in as text but its a list and its ordered here is an example of what the client wanted 10 lorem ipsum dolor sit amet consectetur adipiscing elit 9 lorem ipsum dolor sit amet consectetur adipiscing elit 8 lorem ipsum dolor sit amet consectetur adipiscing elit 1 lorem ipsum dolor sit amet consectetur adipiscing elit after some digging around i found out that you can add the value attribute to each list item to specify the number to display so basically i just needed to code my list like this ol li value= 10 lorem ipsum dolor sit amet consectetur adipiscing elit li li value= 9 lorem ipsum dolor sit amet consectetur adipiscing elit li li value= 8 lorem ipsum dolor sit amet consectetur adipiscing elit li hellip li value= 1 lorem ipsum dolor sit amet consectetur adipiscing elit li ol pretty straightforward but also pretty ugly so what happens when the client decides they want to insert another bullet in the middle of the list yep thats right they would have to adjust the numbering for the rest of the list pretty crappy so lets use the powerfulness of jquery to make this a little better the markup so just like before we just want to create an ordered list but this time we will leave off the value attribute we are also going to add a class to the ordered list that we will use as a hook to add in the jquery functionality ol class= reversed lilorem ipsum dolor sit amet consectetur adipiscing elit li lilorem ipsum dolor sit amet consectetur adipiscing elit li lilorem ipsum dolor sit amet consectetur adipiscing elit li hellip lilorem ipsum dolor sit amet consectetur adipiscing elit li ol the jquery mapping out the code a bit we want to select each element with a class of reversed and count the total number of children list items then we want to loop through the children and update the value attribute to be the value of the total number of children minus a counter variable that we started at zero and increment each time through the loop that seems relatively straightforward so ill just show the code that i wrote $ document ready function $ reversed each function var $children = $ this children li var totalchildren = $children length var start = 0 $children each function $ this val totalchildren start start view demo it looks like with html 5 we get a reversed attribute that accomplishes the same thing but until its fully supported this quick easy solution seems to work on a personal note i have been severely neglecting my blog but for good reason i have been teaching some intro to web development courses at cdiabu in georgetown also i will be starting a new job on december 1st i will be joining the amazing team at viget labs as their new front end developer ',1),(96,'slug',0,' creativity is not design design test 2 ',1),(96,'title',0,' creativity is not design design test 2 ',1),(96,'field',2,' andy rutledge has created a second design test to show that creativity does not necessarily mean you are an effective designer the first test is excellent as well i need to learn more about design principles ',1),(96,'field',14,' 1937 ',1),(97,'slug',0,' expressionengine embed an embed within itself ',1),(97,'title',0,' expressionengine embed an embed within itself ',1),(97,'field',2,' at work this week there was discussion on how to accomplish something in expressionengine we wanted to pull in entries that were in one category but if there were no entries then pull in from other categories and display that instead we were kind of stumped as to how to do that im not sure if we were missing some easy way to do that but we couldnt think of a nice way to accomplish it lets backup i guess it will be helpful to give you some more context we had created a channel our term for weblog for events you could categorize the events and they would publish in different places in this instance the homepage we wanted to pull an event from one category but if there were none then just display an event from another category the initial code this code was separated out in an embed so that we could use it in various places on the site assign variable channel name= embed channel assign variable category id= embed category exp weblog entries weblog= channel name category= category id show future entries= yes show expired= no limit= 1 disable=a oecategory fields custom fields member data pagination trackbacksa h2 title h2 if events feature image p class= rightside a href= url title path= embed template path img src= events feature image alt= a p if if events summary events summary if pa href= url title path= embed template path class= more read more raquo a p exp weblog entries the code doesnt really need to be explained its not the important part of this post so on the homepage we had code that looked like this to pull in the event embed= site events channel= events category= 7 template path= news events events now what we really wanted to be able to do was to modify the exp weblog entries code to pull from a different category if there were no results something like this exp weblog entries weblog= channel name category= category id show future entries= yes show expired= no limit= 1 disable=a oecategory fields custom fields member data pagination trackbacksa hellip if no results code to pull from a different category if hellip exp weblog entries but the problem was there really was no code that we could put in there that would pull from another category since you cant nest exp weblog entries tags so thats when i remembered that you could stick an embed file in there that could have the exp weblog entries tag inside of it then we realized that the code we wanted to write would be exactly like the code in the embed file we were already working with so we did a little investigation and found out that according to the documentation see notes section you cannot embed an embed within itself that makes sense because you could create an infinite loop but what if we knew that it would not return an infinite loop modified code so we determined that what we could do is not pass in the category on the embed statement and that would pull back any events exp weblog entries weblog= channel name category= category id show future entries= yes show expired= no limit= 1 disable=a oecategory fields custom fields member data pagination trackbacksa hellip if no results embed= site events channel= events template path= news events events if hellip exp weblog entries see how there is no category parameter this time here is the full modified code assign variable channel name= embed channel assign variable category id= embed category exp weblog entries weblog= channel name category= category id show future entries= yes show expired= no limit= 1 disable=a oecategory fields custom fields member data pagination trackbacksa h2 title h2 if events feature image p class= rightside a href= url title path= embed template path img src= events feature image alt= a p if if events summary events summary if pa href= url title path= embed template path class= more read more raquo a p strong if no results embed= site events channel= events template path= news events events if strong exp weblog entries and that worked houston we still have a problem but we then realized that the same problem would occur if there were no future events in any categories so we still needed to go back and solve that problem by similarly passing the value for the show expired parameter in the embed statement as well i left that to my colleague so i didnt test this code but this is my guess of how to solve that problem assign variable channel name= embed channel assign variable category id= embed category strong assign variable show expired= embed show expired strong exp weblog entries weblog= channel name category= category id show future entries= yes strongshow expired= show expired strong limit= 1 disable=a oecategory fields custom fields member data pagination trackbacksa h2 title h2 if events feature image p class= rightside a href= url title path= embed template path img src= events feature image alt= a p if if events summary events summary if pa href= url title path= embed template path class= more read more raquo a p if no results embed= site events channel= events strongshow expired= yes strong template path= news events events if exp weblog entries conclusion was there some really easy way to do this that we completely blanked on it seemed a little hacky but the solution worked ',1),(97,'field',14,' 1936 ',1),(98,'field',3,' asides ',1),(98,'slug',0,' seo faq ',1),(98,'title',0,' seo faq ',1),(98,'field',2,' derek powazek clarifies some points from his latest post again great stuff here ',1),(98,'field',14,' 1935 ',1),(99,'slug',0,' spammers evildoers and opportunists ',1),(99,'title',0,' spammers evildoers and opportunists ',1),(99,'field',2,' derek powazek shares his opinion of seo im not going to lie i agree with what he is saying ',1),(99,'field',14,' 1934 ',1),(100,'slug',0,' dear small businesses some advice ',1),(100,'title',0,' dear small businesses some advice ',1),(100,'field',2,' jonathan longnecker has posted a well written article expressing his love and frustrations of designing websites with small businesses some very nice points and advice here ',1),(100,'field',14,' 1933 ',1),(101,'field',3,' asides ',1),(101,'slug',0,' what gives ',1),(101,'title',0,' what gives ',1),(101,'field',2,' i like this were working at building the most important communications network in history what we do today matters good read things need to change ',1),(102,'slug',0,' the state of the web design profession ',1),(102,'title',0,' the state of the web design profession ',1),(102,'field',2,' noah stokes has written a fantastic article on the state of the web design profession well said ',1),(102,'field',14,' 1931 ',1),(103,'slug',0,' simple jquery text resizer ',1),(103,'title',0,' simple jquery text resizer ',1),(103,'field',2,' i have done javascript text resizers a couple of different ways before but i think i found my favorite way on a recent project in previous projects i have messed around with determining the current font size and adjusting it appropriately but in my opinion simplifying things has made it a much better implementation if you want to skip right to the demo feel free view demo disclaimer let me first say that i have started to size text in pixels and soft serving ems to ie6 there are tons of different font sizing techniques you can use but this is what is working for me so use whatever technique you please and adjust as needed another thing i hate text resizers in my opinion there is no reason to duplicate browser functionality i feel the same about back and print links but sometimes the functionality is requested so i have to build it concept the idea is very simple you click on the text size you want and a class is added to the body to indicate which size the user has selected then we take advantage of that body class when we are writing our css to size the different elements appropriately code lets first start as we always should by creating the markup ul class= resizer li class= small a href= a a li li class= medium a href= a a li li class= large a href= a a li ul jquery the markup was simple enough so lets get started on the jquery first we want to execute our code when the document is loaded and then add an event when one of the resizer links are clicked $ document ready function $ resizer a click function next we want to get the class of the parent of the link that has been clicked remove any of the resizer classes from the body and add the new one $ document ready function $ resizer a click function var textsize = $ this parent attr class $ body removeclass small medium large addclass textsize we also dont want to regular action of the link to be followed so we need to return false $ document ready function $ resizer a click function var textsize = $ this parent attr class $ body removeclass small medium large addclass textsize return false i also think it is important to remember what text size a user has selected while browsing the site so we will take advantage of the jquery cookie plugin to help us with that we will set a cookie that denotes which size the user has selected $ document ready function $ resizer a click function var textsize = $ this parent attr class $ body removeclass small medium large addclass textsize $ cookie text size textsize path expires 10000 return false finally we just need to add a check to the beginning of the script so that if that cookie is set we add that size as a class to the body $ document ready function if $ cookie text size $ body addclass $ cookie text size $ resizer a click function var textsize = $ this parent attr class $ body removeclass small medium large addclass textsize $ cookie text size textsize path expires 10000 return false css now is where we get to the really powerful part of doing the text resizing like this the css we can start by simply stating our text size when it is in the small default state body font 12px 18px arial sans serif then we just need to make a simple adjustment for the medium and large sizes medium font size 16px line height 22px large font size 20px line height 26px so you can just carry through this idea for the rest of the elements that have been assigned a font size h1 font size 30px line height 36px medium h1 font size 34px line height 40px large h1 font size 38px line height 44px h2 font size 24px line height 30px medium h2 font size 28px line height 34px large h2 font size 32px line height 38px h3 font size 18px line height 24px medium h3 font size 22px line height 28px large h3 font size 26px line height 32px view demo the idea is very simple and it really separates the presentation and behavioral layers so what do you think do you have another technique that you like ',1),(103,'field',14,' 1930 ',1),(104,'slug',0,' create a newsletter with expressionengine fieldframe ',1),(104,'title',0,' create a newsletter with expressionengine fieldframe ',1),(104,'field',2,' i guess it is time to come back from my little hiatus to actually write a blog post i recently moved so i have been busy with getting settled and working on freelance projects as well if you follow me on twitter you may have noticed that i have recently become obsessed with expressionengine i completed a project at work using it and i realized that i could have done something much more efficiently view demo i had to create an online newsletter that had issues that were made up of multiple articles i ended up creating two separate weblogs one for each issue and one for individual articles in the issues weblog there was a playa custom field which could be used to pick the individual articles to be published in that issue but another one of brandon kellys fabulous extensions fieldframe seems to be a much better choice for creating this functionality so download install enable the fieldframe extension and lets be on our way creating the custom field group first lets create a field group named newsletter now we just need to create one custom field with the field name of newsletter articles select ff matrix as the field type we want to have two cells in the ff matrix articles title articles body the cell types should be text and textarea respectively then adjust the sizes as you see fit creating the weblog now that we have the custom field group setup we need to create a new weblog called newsletter and make sure to assign our newsletter field group to it now that the newsletter weblog is created we can start adding newsletters first fill in the main title field and then add in one or more articles now lets get onto coding the output template creating the template lets start by creating a new template group called newsletter we have two different pages that we want to create the page listing all of the newsletter entries and the individual newsletter entry displaying all of the articles but we can do this with only one template so open up the index template in the newsletter template group and we will start by setting up the structure of the template assign variable weblog= newsletter embed= newsletter header title= if segment 2 display individual newsletter entry title here if else newsletters if if segment 2 display full individual newsletter entry with 1 or more articles if else display list of newsletters entered if embed= newsletter footer we start by creating a variable to store the name of our weblog then i created a simple header and footer to store some of the html that frames the page i am passing in the title value in an embed variable to the header and displaying that in the browser title if the segment 2 value is not null we know that we are on an individual newsletter page so we will display that title if the segment 2 value is null then we are on the main newsletter listing page so we just display newsletters we are using the same conditional again for the content on the page we either show the individual newsletter entry with the articles or we show the list of newsletter entered so lets build out the code a little more first lets finish displaying the title embed= newsletter header title= if segment 2 exp weblog entries weblog= weblog limit= 1 disable= categories category fields custom fields member data pagination trackbacks title entry date format= %f %j %y exp weblog entries if else newsletters if pretty simple stuff here just displaying the title and entry date of the newsletter entry next lets tackle displaying the single newsletter entry view if segment 2 exp weblog entries weblog= weblog limit= 1 disable= categories category fields custom fields member data pagination trackbacks h1 title entry date format= %f %j %y h1 newsletter articles div class= entry h2 articles title h2 articles body div newsletter articles exp weblog entries pa href= path= newsletter laquo back to newsletters a p the beginning should look pretty normal just using the standard exp weblog entries tag to pull in the individual entry we first display the title and entry date then the next part is where we are taking advantage of the fieldframe matrix we are basically just looping through all of the newsletter articles and displaying them in divs finally lets finish up by displaying the list of newsletter entries if else exp weblog entries weblog= weblog disable= categories category fields custom fields member data pagination trackbacks if count == 1 ul if lia href= url title path= newsletter title entry date format= %f %j %y a li if count == total results ul if exp weblog entries if simple stuff again just looping through all newsletter entries and displaying them in a list the two conditional statements are so you dont end up with any empty unordered lists when there are no entries view demo i wish i would have realized this would have been a more efficient way to build a newsletter in ee for the project but this is why always learning is so important ',1),(104,'field',14,' 1929 ',1),(105,'slug',0,' packt book giveaway winners ',1),(105,'title',0,' packt book giveaway winners ',1),(105,'field',2,' thank you everyone for participating in the packt book giveaway it was interesting to see how many more people were interested in the jquery book compared to the others now on to the winners the choosing an open source cms book was won by eric d greene with his comment on the blog article the wordpress 2 7 complete book was won by adrian turner with his twitter entry the learning jquery 1 3 book was won by codejoust chattanooga webdesign development for their comment on the blog article the winners have been contacted but if their are any problems i will choose a new winner thanks everyone for the entries and i hope to be able to do this again ',1),(105,'field',14,' 1927 ',1),(106,'field',3,' asides ',1),(106,'slug',0,' web design is a journey ',1),(106,'title',0,' web design is a journey ',1),(106,'field',2,' i definitely dont categorize myself as a designer because there is no way i can create such amazing work as this its fantastic to see the very different directions that mike went in before reaching the final design ',1),(107,'slug',0,' strangers at a cocktail party ',1),(107,'title',0,' strangers at a cocktail party ',1),(107,'field',2,' i love this way of thinking a successful environment is one where you are able to tell people when theyre full of crap ',1),(107,'field',14,' 1925 ',1),(108,'field',3,' news ',1),(108,'slug',0,' packt book giveaway ',1),(108,'title',0,' packt book giveaway jquery wordpress open source cms ',1),(108,'field',2,' i am pleased to announced that i have 3 packt books to giveaway learning jquery 1 3 wordpress 2 7 complete choosing an open source cms entering to win one of these books is very simple and you can enter in two different ways but first let me provide a little more detail about the books learning jquery 1 3 to build interesting interactive sites developers are turning to javascript libraries such as jquery to automate common tasks and simplify complicated ones because many web developers have more experience with html and css than with javascript the librarys design lends itself to a quick start for designers with little programming experience experienced programmers will also be aided by its conceptual consistency revised and updated for version 1 3 of jquery this book teaches you the basics of jquery for adding interactions and animations to your pages even if previous attempts at writing javascript have left you baffled this book will guide you past the pitfalls associated with ajax events effects and advanced javascript language features full book detail wordpress 2 7 complete using wordpress you can easily create dynamic blogs and web sites with great content and many outstanding features it is an ideal tool for developing blogs and although it is chiefly used for blogging it can also be used as a complete cms with very little effort you can customize the features incorporate your own design and even write your own plug ins with ease its versatility and ease of use have attracted a large enthusiastic and helpful community of users while it is easy to get started with wordpress its full power is not obvious if you want to create a powerful fully featured blog or non blog web site in no time this book is for you it will give you a rapid and straightforward introduction to the rich and powerful features of wordpress and get you up and running with a state of the art blog as quickly and painlessly as possible it will help you learn everything wordpress has to offer from the ground up so you can build your complete web site you will see many of wordpresss hidden powers that will help you build a fully functioning web site full book detail choosing an open source cms there are many powerful open source cmss available to take the pain away from managing a web site these systems are feature rich often easy to use and free unfortunately there are so many choices its tough to be sure youre choosing the right one how can you be sure that you are selecting and working with the right tool this book will guide you through choosing the right cms for your needs you can be confident in your choice of cms for the needs of your project it will also help you make a start using the cms and give you a feel for what its like to use it a even before you install it yourself are you bewildered by the many open source cmss available online open source cmss are the best way to create and manage sophisticated web sites you can create a site that precisely meets your business goals and keep the site up to date easily because these systems give you full control over every aspect of your site because open source cmss are free to download you have a huge amount of choice between the various systems full book detail how to enter there are two different ways to enter post a comment on this blog post with the book of your choice jquery wordpress or cms make sure you provide a valid email address so that i can get in touch with you if you win tweet about it here is what you need to tweet http bit ly 5j7gj free packt book giveaway from davist11 i want the book name here book then just replace book name here with the book of your choice jquery wordpress or cms contest details you can enter once by submitting a comment on this post and as many times as you want on twitter the contest will end friday july 24th at 6 pm et once over i will randomly choose the winners and notify them to get their addresses thats it now get going and enter already big thanks to packt publishing for sponsoring the giveaway ',1),(109,'field',3,' asides ',1),(109,'slug',0,' misunderstanding markup ',1),(109,'title',0,' misunderstanding markup ',1),(109,'field',2,' everyone is freaking out about the xhtml 2 working group disbanding at the end of the year relax people jeremy keith helps to explain why nobody should worry ',1),(110,'field',3,' web ',1),(110,'slug',0,' enough with the ie6 whining ',1),(110,'title',0,' enough with the ie6 whining ',1),(110,'field',2,' seriously i cant go a day without reading about someone complaining about ie6 yes we all know its support is terrible yes we know that microsoft sat around and did nothing for 5 years but look they have stepped their game up they have released 2 browser versions in 3 years yes they are not up to par with more standards compliant browsers but they are a major improvement over ie6 so i ask you what is microsoft supposed to do it isnt their fault that users wont upgrade their browser suck it up if you call yourself a web developer you should be able to make things presentable in ie6 if you cant then you probably shouldnt call yourself one so suck it up and deal with it doesnt the challenge make our jobs more interesting im not saying that your site has to look exactly the same in all browsers we already know the answer to that question just make it presentable make sure a user can access all content on the site remember its still all about the content better yet take a look at the traffic to the site and determine to what degree you even need to support it if ie6 visitors only compromise a very small percentage maybe consider using andy clarkes universal internet explorer 6 css that will put the content front and center in ie6 and you wont even have to worry about it just please stop complaining rant ',1),(111,'field',3,' asides ',1),(111,'slug',0,' walls come tumbling down ',1),(111,'title',0,' walls come tumbling down ',1),(111,'field',2,' andy clarke has posted the slides and transcript from his presentation at media2009 its a long one so i scanned it but it looked like a fantastic presentation ',1),(112,'field',3,' javascript tutorial ',1),(112,'slug',0,' jquery inline form labels ',1),(112,'title',0,' jquery inline form labels ',1),(112,'field',2,' ive been seeing the trend of applying inline labels on form elements more and more these days so i definitely needed to come up with a solid solution that would help me easily apply this effect maybe i need to explain a little better what i am referring to instead of using a label that is next to or above the input element the label is actually within the input then when the input is focused the label goes away and you can enter your value into it finally when the input is no longer focused if there is no value entered the inline label is then added back in see demo my solution the title attribute its so simple but perfect a great benefit of using the title attribute is that when you hover over the input you get a little tooltip displaying the inline label so all i need to do is add a title attribute with the text that we want to have show up as the inline label then we just use a little jquery to make it all happen the jquery first we want to select each input that has a title attribute once the document is loaded $ document ready function $ input title each function hellip next if the value of the input element is empty we want to take the title attribute and add it as the value of the input $ document ready function $ input title each function if $ this val === $ this val $ this attr title after that we want to setup a function that will fire once the input is focused when it is focused if the value is equal to the title attribute we want to set the value to nothing and add a class of focused $ document ready function $ input title each function if $ this val === $ this val $ this attr title $ this focus function if $ this val === $ this attr title $ this val addclass focused the reason why we add the class of focused is so that we can change the text color border or anything to make it noticeable that the input is being focused you can see this effect in the demo finally we want to add a function that will fire when the input loses focus when it does if the input value is empty we want to set the value back to the title attribute and remove the class of focused $ document ready function $ input title each function if $ this val === $ this val $ this attr title $ this focus function if $ this val === $ this attr title $ this val addclass focused $ this blur function if $ this val === $ this val $ this attr title removeclass focused see demo and thats it its just a little bit of code but it can go a long way so take it and build on it ',1),(113,'field',3,' asides ',1),(113,'slug',0,' dog and pony show design ',1),(113,'title',0,' dog and pony show design ',1),(113,'field',2,' andy rutledge continues to blow my mind with his fantastic articles multiple design options are what you visit in your design process on your way toward a solution what you present to your client must be the most effective result of your exhaustive efforts nothing less ',1),(114,'field',3,' thoughts ',1),(114,'slug',0,' remember you are the expert ',1),(114,'title',0,' remember you are the expert ',1),(114,'field',2,' ive been realizing lately that there is a big problem in the web design development field we arent thought of as experts ok maybe thats not completely true but ive seen a lot of clients guiding the process but actually maybe this is our own fault so how can we fix it be the expert we have to remember that we are the web experts in this relationship we need to show confidence when talking with clients talk authoritatively about the details of the project and show them that we know what we are talking about just like we wouldnt go tell an architect how to design a house our clients need to trust us to build their website stick to your guns so lets say a client suggests something that you know would work better if you did it a different way dont just say yes to the client make your suggestion and build a case for it reference other examples site statistics fight for the best solution remember you are the expert read browse and read some more the web is full of great articles bad examples of web sites good examples of web sites and much more so by just spending time browsing the web you can amass a huge amount of knowledge about what works and what doesnt this will provide you with loads of ammunition to use when clients need your guidance its hard i struggle with it all the time its hard to say no to a client when they are the ones paying you but the best thing to do is to make your suggestions back it up with statistics examples and hope that the client trusts your judgment remember you are the expert ',1),(115,'field',3,' asides ',1),(115,'slug',0,' of brands and commodities ',1),(115,'title',0,' of brands and commodities ',1),(115,'field',2,' genius turning down money to make money sounds like a dodgy strategy but its more powerful than you might think and its required if you want to build a brand ',1),(116,'slug',0,' 10 cost effective web development techniques ',1),(116,'title',0,' 10 cost effective web development techniques ',1),(116,'field',2,' excellent excellent excellent presentation from drew mclellan wish i could have seen it in person ',1),(116,'field',14,' 1916 ',1),(117,'slug',0,' creating a google map with expressionengine ',1),(117,'title',0,' creating a google map with expressionengine ',1),(117,'field',2,' since i have a newfound love of expressionengine i wrote my most recent article for nettuts about creating a google map with it ',1),(117,'field',14,' 1915 ',1),(118,'slug',0,' user experience beyond the web ',1),(118,'title',0,' user experience beyond the web ',1),(118,'field',2,' i had the pleasure of having jury duty last week this was the first time i had ever been called for it before and i must say that the experience definitely left a lot to be desired it is definitely clear that all of the time spent on user experience on the web ends up providing a better experience for the end user but my question now is why isnt that kind of effort put in outside of the web there was basically no part of my jury duty experience that was pleasurable let me walk you through how my day went getting up early first off i had to get up super early in order to get there on time if i am just going to be waiting around most of the day why do i have to be there at 8 15am parking so i pulled into the parking lot that they told me to park in and started to walk to the court house but wait i had no clue where to go there were no signs at all luckily i guessed right or i would have been late security since i was going into a court house i totally expected to have to go through security i was told that jury duty would probably end up being a lot of waiting around and i saw that they had wireless internet access there so i figured i would bring my laptop and get some work done first i had to check my cellphone since it had a camera on it im not really sure what i would want to take pictures with but whatever i checked it i did feel a little lost without my phone though next i had to go through the metal detectors and put my bag on the x ray machine the security officer asked me to take out my laptop and turn it on i was confused as to why i would need to turn it on but i hit the button and waited for it to power up then he sees that my laptop has a built in camera and tells me that i cant bring it in i looked at him befuddled because i couldnt imagine sitting with my laptop facing out in the courtroom taking pictures and not having someone say something to me the security officer tells me that i have to take it back to my car so i had to walk the quarter of a mile back to my car put the laptop in there then walk back and go through security seems a little ridiculous right i must give them credit for actually having wireless internet but not being able to bring in my laptop really pissed me off the waiting room once i got through security and checked in i was directed to a big room with a bunch of tables and chairs where we would wait for the next hour or so of course the chairs were jammed in together and there were not enough seats in the room for everyone we watched a 15 minute training video and then the courthouse employees tried to get us to donate money to the court system yeah after you put me in a bad mood because i couldnt bring in my laptop im sure ill jump at the opportunity to give you money what a great start to the morning the next waiting room finally my group got called to the courtroom and we stood around and waited for about two hours until we finally got called into the court room to go through the jury selection process so again more waiting thats basically what i did all day does anyone think about the experience here we are in a situation where we are supposed to be impartial and have no biases and i was in a piss poor mood why dont they make these kind of situations as painless as possible why isnt there someone making sure that the experience of having jury duty is not awful just like we devote time thinking about users experiences on the websites we are creating organizations need to consider what those experiences outside of the web are like ',1),(118,'field',14,' 1914 ',1),(119,'slug',0,' designer owner manager 1 hiring the right people ',1),(119,'title',0,' designer owner manager 1 hiring the right people ',1),(119,'field',2,' andy rutledges latest article seems like it will come in handy when i eventually start my own business some great tips here especially numbers 6 8 ',1),(119,'field',14,' 1913 ',1),(120,'slug',0,' let your links look like links ',1),(120,'title',0,' let your links look like links ',1),(120,'field',2,' roger johansson discusses one of my big pet peeves links need to look like links links are the most important part of the web make them stand out ',1),(120,'field',14,' 1912 ',1),(121,'slug',0,' review building websites with expressionengine 1 6 ',1),(121,'title',0,' review building websites with expressionengine 1 6 ',1),(121,'field',2,' i was lucky enough to be contacted by packt publishing to review the book building websites with expressionengine 1 6 by leonard murphy i have recently become very infatuated with expressionengine and i have devoted a lot of time to learning how to use it this book was a great opportunity to see where my skill set was at who is it for this book is definitely aimed toward beginning users of ee who have some knowledge of html there is no knowledge of ee needed in order to read this book so basically anyone who wants to learn how to use ee would benefit from reading this while i have had some experience with ee i found many parts of this book that were more of a review for me what i liked i really liked that leonard uses a lot of screenshots and code snippets to help walk through how he is doing something they definitely would have helped me to comprehend some of the ee concepts that i did not understand until devoting a lot of time online doing research this book does a great job of covering a variety of topics from installing ee and creating a calendar to using other modules and plugins even though i have prior experience with ee and this book is geared toward beginners i did learn a few things about ee from reading this book what i could do without there seemed to be a large chunk of the book devoted to applying css to the examples to make them presentable i dont think there is any need to go through and explain the css people are buying the book for information about ee i also wish that the example site that is used in the book were a bit more realistic i really learned a lot from mike boyinks building a church site and building a small business site tutorials because the content and functionality of the sites were real conclusion this book is really the only ee book out there so if you are one of those people who has trouble learning from online tutorials and needs a book this is definitely a solid choice to get started with ee you can get a preview of it by downloading a sample chapter update i actually wasnt aware of this but mike boyink also has his tutorials available as books ',1),(121,'field',14,' 1911 ',1),(122,'slug',0,' dear designer you suck ',1),(122,'title',0,' dear designer you suck ',1),(122,'field',2,' as usual another well thought out post from khoi vinh i agree completely i thrive on criticism even though im not a designer im always looking to improve by hearing the thoughts of others ',1),(122,'field',14,' 1909 ',1),(123,'field',3,' news ',1),(123,'slug',0,' css naked day 2009 ',1),(123,'title',0,' css naked day 2009 ',1),(123,'field',2,' yep today april 9 2009 is the annual css naked day some people may think it is a huge risk to completely strip the design from my site for a day but i think otherwise if anything it gives visitors a chance to see my ability to code with web standards i take the time and effort to write well structured xhtml so it is still readable without any style applied i am striping my design with the css naked day wordpress plugin i encourage everyone else to strip down and show off your body is anyone else going naked today ',1),(124,'slug',0,' creating a jquery word counter ',1),(124,'title',0,' creating a jquery word counter ',1),(124,'field',2,' i had to code a form at work that required word limitations on each textarea the article describing how i created a jquery word counter was published on the themeforest blog ',1),(124,'field',4,' http blog themeforest net tutorials creating a jquery word counter ',1),(125,'slug',0,' presentation to damscus high school students ',1),(125,'title',0,' presentation to damscus high school students ',1),(125,'field',2,' i have been noticeably absent from my blog recently but for good reason i was honored when jeff brown a teacher at damascus high school asked if i wanted to speak to the students in his advanced web class i have always been interested in speaking about web development so this seemed like a great first opportunity so basically mr brown has people in the industry come in and speak to his students every friday after looking at the list of other speakers i sure was nervous i mean i go to conferences to see some of these guys speak mr brown has a great program going and i was glad to be a part of it he is one of the few teachers that actually teach about web standards and is a member of the wasp education task force he also gave a presentation at refreshdc about web education the night before my presentation that i unfortunately missed my presentation i decided to focus my presentation on my path through web development some tips to become successful as a front end developer and then how to maintain that success i was pretty nervous and i felt like i raced at times but i think it turned out well mr brown has posted the audio from the presentation on his site view presentation become a productive front end developer continue to be one i would love to hear any feedback on the presentation so let me know what you all think ',1),(125,'field',3,' presentations ',1),(125,'field',14,' 1906 ',1),(126,'slug',0,' browser compatibility master tables ',1),(126,'title',0,' browser compatibility master tables ',1),(126,'field',2,' ppk has updated his browser compatibility tables to include more css3 testing new browsers and more this is a great resource to determine which browsers support what ',1),(126,'field',14,' 1905 ',1),(127,'slug',0,' the 13 most essential plugins for wordpress ',1),(127,'title',0,' the 13 most essential plugins for wordpress ',1),(127,'field',2,' i feel like right after i install wordpress i immediately install the same set of plugins i figured this would be a good topic for a post so i chose that for my most recent article at nettuts ',1),(127,'field',14,' 1904 ',1),(128,'field',3,' tutorial ',1),(128,'slug',0,' dynamically set a body id in php ',1),(128,'title',0,' dynamically set a body id in php ',1),(128,'field',2,' i have already written a couple of articles about body ids set a body id using php and setting body ids in expression engine but in a recent project i was looking for a more dynamic way to do it in php and wordpress i dont think its necessary to discuss the benefits of body ids because i have already discussed them in the other posts so if you still arent using body ids classes go read the articles and start using them the plan this seems so straightforward that im not sure why i didnt start with this method so basically i look at the uri and if it is equal to then i give it a body id of home otherwise i grab the first folder and set that as the body id example lets say that the uri is about team leadership the body id would be about ok the seems easy lets get to the code the code here is our setbodyid function function setbodyid $path = $ server request uri if $path === $bodyid = home else $bodyid = substr $path 1 strpos $path 1 1 return $bodyid if you are using this in wordpress put this function in your theme function php file then you want to call the function and assign it to a variable $bodyid = setbodyid finally if the $bodyid variable is not empty add the id attribute on the body tag body php if empty $bodyid echo id= $bodyid conclusion its so simple yet powerful this could also easily be recoded in other programming languages what do you think any ideas for improvement ',1),(129,'field',3,' asides ',1),(129,'slug',0,' we refuse ',1),(129,'title',0,' we refuse ',1),(129,'field',2,' you know what i refuse too just because someone tells you that you shouldnt do something that doesnt mean you have to listen would you have gotten to where you are today by only listening to other people ',1),(2057,'field',15,' html css js php craft ',1),(130,'slug',0,' theres always time to launch your dream ',1),(130,'title',0,' theres always time to launch your dream ',1),(130,'field',2,' i agree completely stop with the excuses i dont think i tried that hard in school either definitely the quote of the article never let your schooling interfere with your education ',1),(130,'field',14,' 1901 ',1),(2057,'field',6,'',1),(2057,'field',16,'',1),(131,'slug',0,' wordpress jquery contact form without a plugin ',1),(131,'title',0,' wordpress jquery contact form without a plugin ',1),(131,'field',2,' there are lots of wordpress plugins for contact forms but wouldnt it be nice to have more control over the markup in this tutorial i am going to show how to use a custom page template to create a contact form in wordpress without a plugin some people may want to skip the post and get to the demo and source files view demo download source files so why not use a plugin well i think that a contact form is so simple that a wordpress plugin that doesnt provide exactly what i want is pretty lame plus i dont need all those fancy interfaces for building the form i just need the code the plan our plan is to create a custom wordpress page template then create a page that uses that template finally we will add in a little jquery to improve the form lets write a little pseudo code to help determine how our page template will be structured pseudo code codeif form was submitted validate it if the form was submitted successfully send email s else set variables to show errors if the form was submitted successfully show thank you message else show form with errors if there are any creating the wordpress page template alright so first we are going to start with some basic stuff define the template name include the header sidebar footer and setup the basic structure of our pseudo code code php template name contact form php if the form is submitted if isset $ post submitted if there is no error send the email if isset $haserror php get header php if the email was sent show a thank you message otherwise show form if isset $emailsent $emailsent == true php else php php get sidebar php get footer the form next lets code the actual form i also want to provide the ability for the user to enter some text to go above the form so we are going to use the regular loop code php if isset $emailsent $emailsent == true div class= thanks h1thanks =$name h1 pyour email was successfully sent i will be in touch soon p div php else php if have posts php while have posts the post h1 php the title h1 php the content php if isset $haserror isset $captchaerror p class= error there was an error submitting the form p php form action= php the permalink id= contactform method= post form php endwhile php endif if the emailsent variable is set to true we display the thank you message otherwise we show the form so we are outputting the title of the page and any content that was entered then we are checking to see if there was an error finally we display the form codeol class= forms li label for= contactname name label input type= text name= contactname id= contactname value= php if isset $ post contactname echo $ post contactname class= requiredfield php if $nameerror = span class= error =$nameerror span php li li label for= email email label input type= text name= email id= email value= php if isset $ post email echo $ post email class= requiredfield email php if $emailerror = span class= error =$emailerror span php li li class= textarea label for= commentstext comments label textarea name= comments id= commentstext rows= 20 cols= 30 class= requiredfield php if isset $ post comments if function exists stripslashes echo stripslashes $ post comments else echo $ post comments textarea php if $commenterror = span class= error =$commenterror span php li li class= inline input type= checkbox name= sendcopy id= sendcopy value= true php if isset $ post sendcopy $ post sendcopy == true echo checked= checked label for= sendcopy send a copy of this email to yourself label li li class= screenreader label for= checking class= screenreader if you want to submit this form do not enter anything in this field label input type= text name= checking id= checking class= screenreader value= php if isset $ post checking echo $ post checking li li class= buttons input type= hidden name= submitted id= submitted value= true button type= submit email me button li ol note line wrapping added for readability ok wow that may seem like a lot so lets break down the name field to see what this code is actually doing codelilabel for= contactname name label input type= text name= contactname id= contactname value= php if isset $ post contactname echo $ post contactname class= requiredfield php if $nameerror = span class= error =$nameerror span php li we are displaying each form field in a list item displaying the label input field and then showing an error message if there is one we are also displaying the value in the form field if it was already submitted so in essence we are just doing that for each field of the form you could easily go into the code to add more fields we are also using honeypot captcha to see if a bot was trying to submit the form codeli class= screenreader label for= checking class= screenreader if you want to submit this form do not enter anything in this field label input type= text name= checking id= checking class= screenreader value= php if isset $ post checking echo $ post checking li that list item is pushed off the page with css and if there is a value in that field we can assume that it is not a human trying to submit the form code screenreader left 9999px position absolute top 9999px the validation next we are going to have a conditional statement to determine if the form was submitted or not code php if the form is submitted if isset $ post submitted within that conditional is where we are going to do all of our validation of the required fields first lets check to see if our honeypot captcha form field is filled in if it is then we will display an error and not check anymore of the form code check to see if the honeypot captcha field was filled in if trim $ post checking == $captchaerror = true else so if the captcha field was left blank we will continue to validate the required fields code check to make sure that the name field is not empty if trim $ post contactname === $nameerror = you forgot to enter your name $haserror = true else $name = trim $ post contactname check to make sure sure that a valid email address is submitted if trim $ post email === $emailerror = you forgot to enter your email address $haserror = true else if eregi a z0 9 % a z0 9 % a z 2 4 $ trim $ post email $emailerror = you entered an invalid email address $haserror = true else $email = trim $ post email check to make sure comments were entered if trim $ post comments === $commenterror = you forgot to enter your comments $haserror = true else if function exists stripslashes $comments = stripslashes trim $ post comments else $comments = trim $ post comments again that may seem like a little much so lets just take a look at the validation on the name field codeif trim $ post contactname === $nameerror = you forgot to enter your name $haserror = true else $name = trim $ post contactname if the name field if empty set a variable that will display the name error and set a flag saying that there was an error on the form otherwise set a variable that will contain the name value from the form sending the email now we want to send the email if there are no errors code if there is no error send the email if isset $haserror $emailto = strongme somedomain com strong $subject = contact form submission from $name $sendcopy = trim $ post sendcopy $body = name $name nnemail $email nncomments $comments $headers = from my site $emailto rn reply to $email mail $emailto $subject $body $headers if $sendcopy == true $subject = you emailed strongyour name strong $headers = from strongyour name strong strongnoreply somedomain com strong mail $email $subject $body $headers $emailsent = true note items bolded are values that you will want to change before implementing i personally like to have the contact form submission come from myself that way i just setup a filter in gmail and i can guarantee that it wont get caught in my spam filter the second email is only sent if the user checks the checkbox to send a copy to themselves view entire custom page template creating the page in wordpress first you want to upload the contact form php page template to your themes folder next you will create the page in wordpress and select contact form as the page template then just publish your page and you will have your contact form well the form will be usable but we are going to add in some css and jquery to finish it off styling the form i recently wrote an article about styling forms so we are just going to stick with some basic styles code screenreader left 9999px position absolute top 9999px thanks background f2f3f6 border 1px solid 7e8aa2 padding 10px forms ol forms float left list style none margin 0 width 100% ol forms li clear both float left margin bottom 18px position relative width 100% ol forms label cursor pointer display block float left font weight bold padding right 20px width 100px ol forms input ol forms textarea border 1px solid 7e8aa2 border radius 3px font inherit moz border radius 3px padding 2px webkit border radius 3px width 214px ol forms textarea height 300px width 334px ol forms input focus ol forms textarea focus background color f2f3f6 border color ff9800 error color f00 ol forms li error font size 12px margin left 20px ol forms li textarea error display block position absolute right 0 top 0 width 100px ol forms li screenreader margin bottom 0 ol forms li buttons button background ff9800 border none color 000 cursor pointer font 16px 16px avenir lt std helvetica arial sans serif overflow hidden padding 6px 3px 3px 3px text transform uppercase width auto ol forms li buttons button hover color 222 ol forms li buttons button active left 1px position relative top 1px ol forms li buttons ol forms li inline float right width 460px ol forms li inline input width auto ol forms li inline label display inline float none width auto so drop that css in your theme stylesheet and you will see the form start to look much better enhancing the form with some jquery i have also already written about creating ajax forms with jquery but i thought i would specifically talk about an ajax script for a contact form first we want to execute our jquery when the document is ready and the form was submitted code$ document ready function $ form contactform submit function return false next we want to hide any error messages if there are any and validate any required fields which are denoted with a class of requiredfield code$ form contactform error remove var haserror = false $ requiredfield each function after that we want to validate that the field is not empty and append an error message if it is codeif jquery trim $ this val == var labeltext = $ this prev label text $ this parent append span class= error you forgot to enter your labeltext span haserror = true if the field is not empty and also has a class of email we want to validate that the email address is valid code else if $ this hasclass email var emailreg = w w w 2 4 $ if emailreg test jquery trim $ this val var labeltext = $ this prev label text $ this parent append span class= error you entered an invalid labeltext span haserror = true if there are no errors then we want to replace the submit button with a loading image codeif haserror $ form contactform li buttons button fadeout normal function $ this parent append img src= wp content themes td v3 images template loading gif alt= loading height= 31 width= 31 note you will need to update the source of the image to wherever you upload it in your theme finally lets submit the form via an ajax request slide the form up and show a thank you message codevar forminput = $ this serialize $ post $ this attr action forminput function data $ form contactform slideup fast function $ this before p class= thanks strongthanks strong your email was successfully sent i check my email all the time so i should be in touch soon p take a look at the entire script code$ document ready function $ form contactform submit function $ form contactform error remove var haserror = false $ requiredfield each function if jquery trim $ this val == var labeltext = $ this prev label text $ this parent append span class= error you forgot to enter your labeltext span haserror = true else if $ this hasclass email var emailreg = w w w 2 4 $ if emailreg test jquery trim $ this val var labeltext = $ this prev label text $ this parent append span class= error you entered an invalid labeltext span haserror = true if haserror $ form contactform li buttons button fadeout normal function $ this parent append img src= wp content themes td v3 images template loading gif alt= loading height= 31 width= 31 var forminput = $ this serialize $ post $ this attr action forminput function data $ form contactform slideup fast function $ this before p class= thanks strongthanks strong your email was successfully sent i check my email all the time so i should be in touch soon p return false just include it in the head of your document after jquery and you are good to go codescript type= text javascript src= php bloginfo template directory scripts jquery js script script type= text javascript src= php bloginfo template directory scripts contact form js script note you may need to change the source depending upon where you upload the files in your theme conclusion view demo download source files thats it just upload the files and youve got your form since youve got the code right in front of you it should be very easy to tweak and add on to enjoy centurylink deals internet phone tv bundles ',1),(131,'field',14,' 1900 ',1),(132,'slug',0,' orange you sorry about tropicana ',1),(132,'title',0,' orange you sorry about tropicana ',1),(132,'field',2,' khoi vinh discusses the disastrous tropicana redesign and wonders if the branding agency behind it arnell did it just for the press i certainly agree that it was a disaster as i felt like i was trying to find my orange juice for 5 minutes ',1),(132,'field',14,' 1899 ',1),(2057,'field',5,' nflpa ',1),(133,'slug',0,' achieve your big goals with incremental persistence ',1),(133,'title',0,' achieve your big goals with incremental persistence ',1),(133,'field',2,' incremental success really helps in working toward your larger goals ive been trying to improve something on my site every day recent examples tooltips on my portfolio better pagination on my blog ',1),(133,'field',14,' 1898 ',1),(2057,'field',2,'',1),(2057,'field',4,' https www nflpa com ',1),(134,'slug',0,' 10 tips for efficient design ',1),(134,'title',0,' 10 tips for efficient design ',1),(134,'field',2,' paul boag says that being a good designer is not always enough to survive hard economic times you need to be efficient too with that he gives us 10 tips for efficient design i think 10 should be emphasized and then emphasized again its so important ',1),(134,'field',14,' 1877 ',1),(135,'slug',0,' 5 ways to instantly write better css ',1),(135,'title',0,' 5 ways to instantly write better css ',1),(135,'field',2,' in my most recent article at nettuts 5 ways to instantly write better css i share some tips that have helped me to write better css this is definitely not me trying to tell you to code in a certain way they are just some tips that i have found to become very useful for myself i hope you enjoy and feel free to share other tips ',1),(135,'field',14,' 1876 ',1),(136,'slug',0,' css3 feedback selector blocks ',1),(136,'title',0,' css3 feedback selector blocks ',1),(136,'field',2,' ohh please make the ability to do this happen it would make css so much more lightweight and easier to write ',1),(136,'field',14,' 1875 ',1),(2057,'slug',0,' nflpa ',1),(137,'slug',0,' fixing a twitter wordpress plugin with jquery ',1),(137,'title',0,' fixing a twitter wordpress plugin with jquery ',1),(137,'field',2,' i use the fantastic twitter for wordpress plugin on my website sometimes though twitter decides that it doesnt want to make my tweets available the plugin has accounted for this and it displays no public twitter messages when this happens that kinda sucks though its definitely nice that the plugin doesnt throw an error but i really dont want that message displayed on my site so whats the solution jquery of course when the tweet comes through here is the markup that is displayed on my site when a tweet comes through successfully div id= twittercontainer a class= twitter link href= http twitter com davist11 status 1200405534 i feel like im in an episode of seinfeld right now a div when the tweet doesnt come through this is what you end up with div id= twittercontainer no public twitter messages div the jquery my thinking is that i will check the contents of div twittercontainer to see if it is no public twitter messages if it is i think it would be useful to replace that text with a link to my twitter account with a message telling people to follow me so first lets execute the jquery code when the document is loaded $ document ready function next we are going to check and see if the contents of div twittercontainer is no public twitter messages $ document ready function strongif jquery trim $ div twittercontainer text == no public twitter messages strong finally lets just replace this text with a link to my twitter feed $ document ready function if jquery trim $ div twittercontainer text == no public twitter messages strong$ div twittercontainer html a href= http twitter com davist11 class= twitter link follow me on twitter a strong thats it this is just another example of how i have used jquery to improve a wordpress plugin on my site you can see this in action on my site or take a look at the demo see demo ',1),(137,'field',14,' 1874 ',1),(138,'slug',0,' no more pixel perfectionism in ie 6 ',1),(138,'title',0,' no more pixel perfectionism in ie 6 ',1),(138,'field',2,' i do just like roger johansson says i make sites perfectly usable in ie but not necessarily exactly the same as long as everything is accessible its good enough for me ',1),(138,'field',14,' 1873 ',1),(2056,'title',0,' php ',1),(2057,'title',0,' nfl players association ',1),(139,'slug',0,' 10 harsh truths about corporate websites ',1),(139,'title',0,' 10 harsh truths about corporate websites ',1),(139,'field',2,' the legendary paul boag gives us a reality check while its hard to believe i think i agree with all of them ',1),(139,'field',14,' 1872 ',1),(2055,'filename',0,' nflpa jpg ',1),(2056,'slug',0,' php ',1),(140,'slug',0,' 42 web design companies designs that move me ',1),(140,'title',0,' 42 web design companies designs that move me ',1),(140,'field',2,' there are so many web design companies that have amazing websites i felt inspired after looking through these now its just a matter of execution ',1),(140,'field',14,' 1871 ',1),(141,'slug',0,' setting body ids in expression engine ',1),(141,'title',0,' setting body ids in expression engine ',1),(141,'field',2,' expression engine has become a popular choice to power many sites i have just begun experimenting with it and i have been very impressed one thing that i have been interested in determining was to figure out if i could set an id on the body like i do when building other sites i have already written one article showing how to do this in php and wordpress but this will show how to do it dynamically in expression engine why are body ids useful body ids can be useful for styling sections differently displaying certain parts of a dynamic template displaying current navigation states and many other things a simple example lets say that i want to have my font size be 14 pixels except on the homepage it would be as easy as this body font size 14px body home font size 12px pretty useful by using body ids we now have a unique hook for each section of the website why not body classes i do utilize body classes as well i typically use the body id to indicate the section then other various items for the body classes for example for my own blog i have some pages that i want to have a left gutter on it so that i can push images quotes etc into the column i also have another class that indicates when it is a blog article page so i can just continue to use multiple classes on the body to help me control the width and layout of the page here is what the body element looks like on a blog article on my site body id= blog class= subpage leftgutter article the subpage class just indicates that it is not the homepage not completely necessary since i already have a specific id on the homepage but it can sometimes become useful the leftgutter class is used to push the content area to the right and make it narrower then i can pull elements into the left hand gutter as well the article class is useful because some of the markup for the blog entry information is the same as the homepage and archive pages using this class i can be more specific with my styles to change the way that these elements are displayed on the blog article page i always try and add classes and id attributes as high up in the tree as possible this lets me utilize descendant selectors in the css without having to add additional classes and ids lower down setting the body id in expression engine i want to have complete control over the body id so i want to be able to have it set dynamically and also be able to set it statically so my thought behind this is that first i want to check to see if the body id was set statically when i say statically i mean passing the variable in as an attribute on my embed statement next i will then set the body id dynamically setting the id statically in order to make changes to the overall website structure simpler i have a header template the sits in the includes template group so in all of the other template groups i embed the header on the page embed= includes header then if for some reason i want to specifically pass in a body id i can just change it to this embed= includes header body id= contact us so the first step in the header is to check to see if the embed body id variable is set body if embed body id id= embed body id if note line wrapping added for readability dynamically setting the id if we are not statically setting the body id we want to then do it dynamically my thinking is that i will take advantage of expression engines url segments to determine which section we are in here is an example of url segments using the following url http ee trevor davis com index php about me education segment 1 = about segment 2 = me segment 3 = education then we can reference each segment like so segment 1 = segment 1 segment 2 = segment 2 segment 3 = segment 3 so basically what we want to do is assign the body id the value of segment 1 if it is not empty so continuing on our example body if embed body id id= embed body id if elseif segment 1 id= segment 1 if note line wrapping added for readability but wait what about the homepage the homepage will have nothing for the value of segment 1 so we can just put in an else statement body if embed body id id= embed body id if elseif segment 1 id= segment 1 if else id= home if note line wrapping added for readability here is the line of code without any line wrapping body if embed body id id= embed body id if elseif segment 1 id= segment 1 if else id= home if i created a demo expression engine site to test this functionality view demo site walking through the demo site since we have body ids for each section and an id on each list item in the navigation i have created the current state for the navigation with a few simple line of css body home ul primarynav li homenav a body about ul primarynav li aboutnav a body services ul primarynav li servicesnav a body contact us ul primarynav li contactnav a background b3602d border top color b3602d color fff note line wrapping added for readability i also want to show the sidebar on all of the subpages so i just need 1 more conditional if embed body id segment 1 div id= sidebar div if this is checking to see if embed body id or segment 1 are not empty and displaying the sidebar if one or both are set these are just a few examples of using a body id in expression engine but the possibilities are endless one more thing another thing that i was trying to figure out was how to create a variable that i could reuse in multiple embed files so what i want to do is in my conditional statement determine that the body id should be and assign it to a variable then i want to be able to access that variable in the footer without have to use the same conditional statement is this possible i was messing around with the assign variable tag but that didnt seem to do the job because it can only be used in the same template anyone know how to do this im relatively new to expression engine so i am still learning ',1),(141,'field',14,' 1870 ',1),(142,'slug',0,' im a weekly nettuts writer ',1),(142,'title',0,' im a weekly nettuts writer ',1),(142,'field',2,' as i noted in my last post i submitted a tutorial to nettuts to be considered as a weekly writer i am very happy to announce that they chose me in my second article creating a filterable portfolio with jquery i take a look at creating a portfolio that can be filtered by category this tutorial was kind of inspired by the effect that i created on my companys portfolio how will this effect my web site yes i am not going to be able to write articles as frequently on my blog but i am still going to be posting some articles i will also post a note each week discussing my weekly nettuts article i hope you all enjoy the articles ',1),(142,'field',14,' 1869 ',1),(143,'slug',0,' twitter chatter during the super bowl ',1),(143,'title',0,' twitter chatter during the super bowl ',1),(143,'field',2,' the new york times created an interactive information graph of tweets during the super bowl i love how at halftime there was an explosion of springsteen tweets ',1),(143,'field',14,' 1868 ',1),(144,'slug',0,' webaim screenreader surveythe results are in ',1),(144,'title',0,' webaim screenreader survey the results are in ',1),(144,'field',2,' the webaim screenreader survey results are in not surprisingly 76% of users always or often navigating by headings 72% of screen reader users reported that flash is very or somewhat difficult ',1),(144,'field',14,' 1867 ',1),(2055,'extension',0,' jpg ',1),(145,'slug',0,' how we reduced chargebacks by 30 ',1),(145,'title',0,' how we reduced chargebacks by 30% ',1),(145,'field',2,' jason fried discusses how they reduced chargebacks by 30% my favorite part of this is how 37signals determines the problem and quickly finds the simple solution to it ',1),(145,'field',14,' 1866 ',1),(2055,'kind',0,' image ',1),(146,'field',3,' asides ',1),(146,'slug',0,' sprite optimization ',1),(146,'title',0,' sprite optimization ',1),(146,'field',2,' dave shea is starting to notice the use of huge css sprites i think i am in his state of mind optimize when possible but im not too interested in making one of those huge sprites ',1),(856,'field',16,'',1),(856,'field',15,' craft html css js ',1),(147,'slug',0,' my first wordpress plugin ',1),(147,'title',0,' my first wordpress plugin ',1),(147,'field',2,' in a recent project at work i had to integrate wordpress and bbpress it proved to be a little more difficult than i anticipated and i had to write my first wordpress plugin add bbpress default role ',1),(147,'field',14,' 1864 ',1),(148,'slug',0,' exactly how to create a custom jquery accordion ',1),(148,'title',0,' exactly how to create a custom jquery accordion ',1),(148,'field',2,' yesterday i saw that nettuts was looking for another staff writer i figured that i would give it a shot and write a tutorial about creating a custom jquery accordion just like the one on the sidebar of my website well what do you know they published it ',1),(148,'field',4,' http net tutsplus com tutorials javascript ajax exactly how to create a custom jquery accordion ',1),(149,'slug',0,' a list apart issue 276 ',1),(149,'title',0,' a list apart issue 276 ',1),(149,'field',2,' this issue focuses around one of the biggest problems in web development education or lack thereof i know i would have loved to actually go to school for web development ',1),(149,'field',14,' 1862 ',1),(150,'slug',0,' design share an event series ',1),(150,'title',0,' design share an event series ',1),(150,'field',2,' vigets write up about the design share event that i attended and summarized this one with video ',1),(150,'field',14,' 1861 ',1),(781,'field',15,' craft html css javascript ',1),(151,'slug',0,' web development project estimator ',1),(151,'title',0,' web development project estimator ',1),(151,'field',2,' a simple tool that allows web designers and site developers to quickly and thoroughly estimate the time and materials required for a proposed web project yes all of this could be accomplished through other programs but this is a pretty nice interface ',1),(151,'field',14,' 1860 ',1),(781,'field',16,'',1),(152,'slug',0,' use jquery to enhance your wordpress comment form ',1),(152,'title',0,' use jquery to enhance your wordpress comment form ',1),(152,'field',2,' i have already completed a couple of tutorials on forms and jquery ajax forms with jquery and flexible and semantic forms with a little jquery but i wanted to show another example of using a simple jquery script to enhance functionality this example will be about the comment form on a wordpress powered site depending upon your configuration wordpress will validate the comment form for required fields in my configuration i want to make sure that users fill in their name and email address if you submit my comment form without those wordpress will perform server side validation but do you really want users to see this error page wouldnt it be so much better if we used to javascript to validate on the client side so that they never have to leave the form i think so before we get started i created a sample of the wordpress comment form see example page creating the markup i have tweaked my markup somewhat from the default wordpress comment form so you will need to make changes to account for your markup here is the markup for my form form action= method= post id= commentform p class= required denotes required field p ol class= forms li label for= author name span class= required span label input type= text class= requiredfield name= author id= author size= 22 li li label for= email e mail span class= required span label input type= text class= requiredfield name= email id= email size= 22 li li label for= url website label input type= text name= url id= url size= 22 li li class= textarea label for= comment comments span class= required span label textarea class= requiredfield name= comment id= comment cols= 100% rows= 10 textarea li li class= subscribe to comments input type= checkbox name= subscribe id= subscribe value= subscribe label for= subscribe notify me of followup comments via e mail label li li class= buttons button type= submit name= submit id= submit add comment raquo button li ol form i dont think there is much that i need to discuss about that markup it is pretty standard the only thing to mention is the class name of requiredfield on the form fields that i want to be required note i also removed the action on the form so that the sample form cannot really be submitted to the database the jquery i of course am going to show this example using jquery but you could create something comparable with any other javascript library or just with some plain old javascript once the document is loaded lets start by adding a function for when the comment form is submitted $ document ready function $ form commentform submit function hellip next we want to remove any errors if they are showing and create a flag that will let us know if an error has occured $ document ready function $ form commentform submit function strong$ form commentform error remove var haserror = false strong hellip ok here is where we really start to do some coding i want to take each form field that has a class of requiredfield check to see if it is empty copy the name of the label and remove the required asterisk traverse to the parent list item and append the error message here is where we will also set the haserror flag so that we know an error has occurred $ document ready function $ form commentform submit function $ form commentform error remove var haserror = false strong$ requiredfield each function if jquery trim $ this val == var labeltext = $ this prev label text replace $ this parent append span class= error labeltext is a required field span haserror = true strong hellip finally you want to check the haserror variable to determine whether or not you should submit the form to the server $ document ready function $ form commentform submit function $ form commentform error remove var haserror = false $ requiredfield each function if jquery trim $ this val == var labeltext = $ this prev label text replace $ this parent append span class= error labeltext is a required field span haserror = true strongif haserror return false strong note the end of the script is slightly different on the example form because i did not want to actually submit the form conclusion just another simple example of how we can improve the user experience by using jquery like usual there are jquery plugins out there that can do the same thing but i think it is important to understand how to do things yourself plus that is only 17 lines of javascript compared to much much more for a plugin anyone have any ideas on how to improve the script ',1),(152,'field',14,' 1859 ',1),(153,'slug',0,' css testing of selectors and pseudo selectors ',1),(153,'title',0,' css testing of selectors and pseudo selectors ',1),(153,'field',2,' a list of selectors and their supported browsers there seems to be a trend of the non supported ones ',1),(153,'field',14,' 1858 ',1),(781,'field',6,'',1),(154,'slug',0,' the state of the web 2008 ',1),(154,'title',0,' the state of the web 2008 ',1),(154,'field',2,' the detailed report from the state of the web survey has been compiled wow 62% of the people using javascript libraries are using jquery i love it ',1),(154,'field',14,' 1857 ',1),(155,'field',3,' news ',1),(155,'slug',0,' design share ',1),(155,'title',0,' design share ',1),(155,'field',2,' i had the pleasure of being invited to design share at viget labs wednesday night the idea of the event was that 6 presenters would each give a 5 minute presentation on design and then there was a question and answer period it was especially great since i am not really a designer always great to learn new things brian talbot national geographic brian started the night off by discussing the process of bringing the national geographic green guide online it was quite an undertaking since they were taking a print publication and creating a supporting website usually something gets lost in translation going from print to the web so they wanted to still have these interesting layouts and help tie in the site to the printed collateral they also wanted to get the community involved in providing information and commentary i think a lot of the screenshots that he showed us are not in production yet but they looked great there were charts information organization in a sensible manor and nice simple layouts jay moore thirsty interactive next jay discussed his papa bear mama bear baby bear approach to mood boards the example he used was from his experience in building the mood boards for the aol red redesign papa bear mood board this is the safety board its comfortable because it was similar to the previous design they wanted to show that they incorporated elements to meet the goals of the project mama bear mood board with this board they do not expect it to be chosen its edgier and purposely a little bit too far over the top the idea of this board is that it will help to generate thought and ideas baby bear mood board this board is kind of the best of the mama papa bear boards it is that happy medium it has the familiar feel of the papa bear board but that edginess that will help to cater to the teen audience of course the final decision was to use elements from each board the most interesting part of this talk was that real design elements were actually worked into the mood boards i havent seen too many mood boards but all of the ones i had seen were very abstract this was a nice change eric lohman akqa eric had the opportunity to help re brand and redesign the nhl website before his company was involved the nhl had no real brand they had all of these different banners with different treatments of their logo they helped to standardize the logo and provide a simple system for expanding it so akqa developed mood boards and the entire design concept was inspired by one image black ice this is where the dark concept came from it really gives the site a sleek look and it makes the large action shots really pop another difficult task that they encountered was dealing with the teams logos they were all odd shaped and nothing tied them all together they decided to do some intense cropping to gain consistency between the logos finally eric talked about adding more interactivity to the site you can see game highlights watch games live and even look through an enormous photo gallery the new nhl site is a tremendous design success ari kushimoto caviarfrenchfries ari was tasked with developing 3 mood boards for an intranet that had a web 2 0 feel yuck i hate saying that of course she had a tight deadline this is where she found that her bookmarking service really paid off all of that time she spent bookmarking cool sites and ideas really paid off and saved time she took screenshots organized into different folders and then got started on the mood boards she setup a consistent grid for the boards and this made it easier to swap things in and out there was some good discussion afterward about good tools that help to organize screenshots littlesnapper and paparazzi rob soule viget labs rob talked about the viget design process the project begins by sending a couple of surveys to the client the surveys ask some abstract questions like what kind of car would your company be and what magazine s describe your company these surveys help the client to focus on their thoughts of their brand and help to give the designers a better idea of what the client is looking for once a project is ready to be designed a lead designer is assigned the project and they sit down with 2 other designers they discuss 3 directions that they want to go in and discuss elements that they want to include in the mood boards while this is going on the user experience designer is working on the wireframes one thing that i thought was really interesting was that they discuss specific elements to add to the mood boards so for example a submit button for a form a headline and the navigation while sometimes they also do abstract mood boards i think it seems more useful to real elements that you would see on a site jason garber mixx when jason used to work at aol he was involved in creating ficlets which is basically an online community for short story writers it became popular relatively quickly and they had a solid community a few years later jason and the others who helped to create ficlets no longer work at aol and suddenly aol decided they are going to shut down ficlets it is not really clear what the reasoning is basically aol just sucks well jason and the others who created it didnt want the site to go away it was successful and had a solid community so jason and friends decided to basically recreate it this is quite an opportunity for anyone creating a website they were able to examine the way that users were using ficlets and found some ways to improve it they are facing some tough decisions trying to determine what to do with past ficlets stories and the community somehow they need to transport the community from ficlets to ficly which will be the new home starting on january 15th conclusion it was very interesting to hear about the process and experience of so many talented people i think the format of the 5 minute presentation also helped to focus the discussion all in all it was a good time ',1),(784,'title',0,' bethesda creation club ',1),(156,'slug',0,' jason santa maria is leaving happy cog ',1),(156,'title',0,' jason santa maria is leaving happy cog ',1),(156,'field',2,' probably my favorite designer out there right now is going freelance hey jason want to come work at my company instead ',1),(156,'field',14,' 1855 ',1),(157,'field',3,' web ',1),(157,'slug',0,' a plea for wordpress help ',1),(157,'title',0,' a plea for wordpress help ',1),(157,'field',2,' i love using wordpress to power websites while it began strictly as a blogging platform it has evolved into a pretty solid cms but there is one little thing that has been bugging me for a while now with the launch of my redesigned site i was interested in using the wp pagenavi plugin because i think it provides much better paging than the default wordpress previous next the problem is that wordpress includes category in the url and i hate it for example on my blog page you can click the older entries link at the bottom of the content area and you can see that the link points to here trevor davis com blog page 2 but you will notice that you actually get redirected to trevor davis com category blog page 2 i had to do this because blog page 2 returned a 404 error you can see this by going directly to the third page some suggested fixes i read through a couple of forum posts discussing the problem but none of the fixes mentioned seemed to work the most discussed suggestion was to change the category base permalink to but that did not work for me surprisingly some people said it worked for them that was pretty bizarre to me so i kept looking another suggestion was to edit a core wordpress file which i do not want to do plugins to fix the problem i came across 3 plugins that were supposed to fix the problem but none of them worked for me either top level categories decategorizer category base killer my idea so i am not the greatest with regular expressions and htaccess and all that jazz but my thinking is that i can use the redirection plugin to use a pass through to rewrite any link like this blog page to this blog page $1 is that not possible i could not get it to work does anyone know how to get something like this to work wordpress team why has this been a problem for so long ',1),(778,'field',15,' shopify html css javascript ',1),(779,'field',15,' craft html css javascript ',1),(158,'field',3,' asides ',1),(158,'slug',0,' tabinta ',1),(158,'title',0,' tabinta ',1),(158,'field',2,' when editing stuff in wordpress i was always so annoyed that i could not tab in the textareas tabinta firefox plugin to the rescue ',1),(158,'field',14,' 1853 ',1),(778,'field',6,'',1),(778,'field',16,'',1),(159,'slug',0,' design decisions the new highrise signup chart ',1),(159,'title',0,' design decisions the new highrise signup chart ',1),(159,'field',2,' jason fried discusses the many design iterations for the highrise signup chart what they ended up with is very appealing and accomplishes they goals they seemed to set out ',1),(159,'field',14,' 1852 ',1),(777,'field',15,' craft html css javascript ',1),(160,'field',3,' asides ',1),(160,'slug',0,' wordpress cheat sheet ',1),(160,'title',0,' wordpress cheat sheet ',1),(160,'field',2,' this wordpress cheat sheet seems like it could be pretty useful i think there are some important functions that are left off though and its definitely geared more towards beginners ',1),(834,'field',5,' yesifoods ',1),(777,'field',16,'',1),(161,'slug',0,' wordpress art direction plugin ',1),(161,'title',0,' wordpress art direction plugin ',1),(161,'field',2,' inspired by jason santa marias art directed site noel jackson decided to create an art direction plugin for wordpress which allows you to add per post styling interesting ',1),(161,'field',14,' 1850 ',1),(162,'slug',0,' jeffrey zeldman understanding web design ',1),(162,'title',0,' jeffrey zeldman understanding web design ',1),(162,'field',2,' a video of jeffrey zeldman presenting his talk on understanding web design i saw this presentation at an event apart and i am still amazed at how great of a speaker he is ',1),(162,'field',14,' 1849 ',1),(776,'field',5,' pps plus ',1),(163,'slug',0,' google pushing users away from ie ',1),(163,'title',0,' google pushing users away from ie ',1),(163,'field',2,' when users use gmail in internet explorer a red link appears at the top right of the page that says get faster google mail the link takes you to a page suggesting faster browsers love it ',1),(163,'field',14,' 1848 ',1),(775,'field',6,'',1),(775,'field',16,'',1),(775,'field',15,' craft html css javascript ',1),(164,'slug',0,' the death throes of print ',1),(164,'title',0,' the death throes of print ',1),(164,'field',2,' jason santa maria wonders if print really is nearing its death i still cant imagine reading a book online though ',1),(164,'field',14,' 1847 ',1),(165,'field',3,' javascript tutorial ',1),(165,'slug',0,' using jquery clone ',1),(165,'title',0,' using jquery clone ',1),(165,'field',2,' i love how i can use jquery to solve all of my problems when i was working on a website for the lighting of the national christmas tree i had to create a page that displayed all of the ornaments thank god for the jquery clone method which saved me loads of time and effort the situation i was on a tight deadline and had to figure out some way to layout all of the state ornaments not to mention the fact that i had to crop and resize 56 images to 2 different sizes yes i know there are only 50 states but the us territories were included as well so the layout had to be easy enough for everyone to see all the ornaments and be able to click to get a more detailed photo and some information about the ornament i really was not interested in creating 56 separate pages with information about each ornament so i went scouring through the jquery documentation to see how i could copy elements before i get started describing what i had to do here is a demo page that i created my solution so basically this is what i wanted to happen when an ornament was clicked get the source of the larger image to be shown copy the description text about the ornament append the image and text and open it in a modal window the styling of the example is nothing special so i will stick to explaining the script the script first we want all of this to happen after the document is loaded and when the ornament links are clicked $ document ready function $ ul ornaments a click function return false next we want to setup the modal window with a couple of empty divs note line breaks added for readability $ body append div id= overlay div div id= modal div id= modalinner a href= id= close title= close close a div id= modalimagecolumn div div id= modaltextcolumn div div class= clearing div div div since ie6 doesnt support fixed positioning we need to get the actual height of the page so we can apply that height to the overlay if $ browser msie $ browser version = 6 0 var windowheight = $ document height $ overlay height windowheight next we set the opacity of the overlay start to fade it in position the modal window and start to fade it in $ overlay css opacity 0 5 fadein fast $ modal fadein slow var scrollpos = $ window scrolltop 50 $ div modal css top scrollpos px the order of these things can be moved around some but this is what i ended up doing and everything looked good next we want to close and remove the modal window when the close button is clicked or the background overlay is clicked $ div modal a close div overlay bind click function $ div modal fadeout fast function $ div overlay fadeout fast function $ this remove $ this remove return false next we grab the url of the link that was clicked which goes to the full size image and append the image to the modal window once the image has been loaded we fade it in var imgurl = $ this attr href $ div modalimagecolumn append img src= imgurl alt= class= frame height= 400 id= ornament width= 400 $ img ornament load function $ this fadein finally we get to use the clone method we target the div with the class of statedescription that is a sibling of the link we clicked clone it and append it to the modal window $ this siblings statedescription clone appendto div modaltextcolumn conclusion pretty cool stuff if i say so myself i dont think there are any jquery plugins out there that would have helped me achieve this which is why it is important to actually understand jquery see demo here is the full script to download you can also take a look at the final product on the national christmas tree site but i would encourage you to actually understand jquery instead of just grabbing code and using it ',1),(165,'field',14,' 1846 ',1),(166,'field',3,' news ',1),(166,'slug',0,' version 3 launched ',1),(166,'title',0,' version 3 launched ',1),(166,'field',2,' well i finally think my redesign is good enough for the public eye there are definitely some tweaks that i need to make but its good enough for now i plan on tweaking stuff for the rest of the week and doing some clean up on some of the older articles this goal of this design was to adhere to a very strict grid and i used the 16 column 960 grid view grid click on the grid to remove it i also wanted to have a stronger focus on some of the things that i can do with jquery check out the accordion and recent work in the sidebar and the comments on the blog articles well that is enough for now im sure i will have more to talk about later but i have to run please give me your feedback i by no means call myself a designer which is why i tried to go simplistic ',1),(529,'field',8,' blogs ',1),(309,'field',15,' craft html css javascript ',1),(167,'slug',0,' a list apart issue 274 ',1),(167,'title',0,' a list apart issue 274 ',1),(167,'field',2,' this issue has 2 excellent articles focused on content strategy a website without a content strategy is like a speeding vehicle without a driver ',1),(167,'field',14,' 1844 ',1),(168,'field',3,' news ',1),(168,'slug',0,' redesign ',1),(168,'title',0,' redesign ',1),(168,'field',2,' just a quick note to everyone that i am planning on launching my redesign tomorrow at some point some things are defintely going to need some clean up after launch but i just feel like it is at a point where small things shouldnt hold it up so if something looks broken i will be fixing it soon ',1),(527,'field',8,' profile ',1),(169,'field',3,' web ',1),(169,'slug',0,' weekly link round up 59 ',1),(169,'title',0,' weekly link round up 59 ',1),(169,'field',2,' nice 2 days off this week so hopefully i will be able to get my redesign finished up here are a few interesting links from this past week four resources to consider when starting a project cameron gives a nice list of resources to use before starting a project precedent whos done it already and how external data internal data knowledge educated guesses sign in register join this is a really interesting collection of data what terms are used for new and existing users another interesting thing that i found was people using login vs log in web standards where the roi is sometimes its hard to sell web standards to people but molly gives some excellent points to help back us up ',1),(836,'field',5,' elginracing ',1),(170,'slug',0,' unobtrusive javascript print link with jquery ',1),(170,'title',0,' unobtrusive javascript print link with jquery ',1),(170,'field',2,' there are times when i have to implement designs that have print links on them while i may think they are useless i still have to make them work as they are a part of an approved comp sure it is easy to have a link and then add an onclick event to launch the print window but is that the right thing to do clicking a javascript print link does nothing more than launch the browsers print window if a person has javascript disabled nothing will happen when they click a link like this a href= onclick= window print return false print a ideally we do not want to have things on a page that do not work without javascript enabled so the solution is to write the print link into the dom using javascript then attach a click event to the link luckily i use jquery on every project so it makes the process much easier the solution in this example we are going to prepend a list item with a link to an unordered list with the id of tools then we attach a click event to the link we have just added to the dom finally we return false to override the action of the link here is the script $ document ready function $ ul tools prepend li class= print a href= print click me to print a li $ ul tools li print a click function window print return false take a look at the demo page to see it in action the script is nothing complex it is just another example of using jquery to improve a users experience ',1),(170,'field',14,' 1841 ',1),(171,'field',3,' web ',1),(171,'slug',0,' weekly link round up 58 ',1),(171,'title',0,' weekly link round up 58 ',1),(171,'field',2,' man its tough to get work done on my own site when i am so busy with freelance work slowly but surely i am making progress and i am hoping that by having some days off this month i will be able to get it done soon here are the links that i found interesting this week cholesterol i think having debate in the workplace is so important to reaching the best decision this is why i think obama will be successful in office he is not just surrounding himself with yes men 9 information design tips to make you a better web designer some nice tips that are focused more on the organization side than the design side cultivating conversations jason brings up the point that sometimes comments become overwhelming on blog posts he suggests that the author should use milemarker comments so that readers can get a quick snapshot of the comments so far the state of the web 2008 do you make websites take the survey six valuable things web design clients wont tell you i wish clients would admit things like this i guess the solution to that is to educate the client 20 signs you dont want that web design project wow i cant believe some of these things actually happened chris pullman what ive learned chris shares ten important lessons that he learned while working for wgbh for 35 years ten things i have learned milton glasers talk from 2001 was also linked around this week its great to see so many tips from these guys with so much experience a list apart issue 273 i know some about ia but i definitely learned some new ideas while reading flexible fuel educating the client on ia i really hadnt heard much about agile design but getting real about agile design was helpful in learning more about it ',1),(774,'field',2,'',1),(774,'title',0,' volunteers of america ',1),(172,'field',3,' web ',1),(172,'slug',0,' weekly link round up 57 ',1),(172,'title',0,' weekly link round up 57 ',1),(172,'field',2,' we need to have 4 day weekends more often i got so much work done on my redesign im currently in the process of dealing with ie6 then i am going to start creating the theme so there is a possibility that i will have something launched sometime this week just a few interesting items from this past week questionable characters i found this site so amusing the premise is that you ask a question and you get two witty responses from the two designers running the site nyu researchers discover defining factor for legibility there are plenty of tweaks you can make to refine your typography but nyu researchers claim that spacing is the most important factor for legibility so lets all think about increasing our margins and line height mixed content warning how i loathe thee ugh i hate those stupid warnings david brings up a good point this is why it would be ever so wonderful if you could refer to a non ssl asset from an ssl page that way you could say a oethis stuff is private dona t share ita when serving over ssl and at the same time take advantage of http caching for things that pose no security risk like drag handle gif 24 ways i still cant believe is december already but at least we have 24 ways to impress your friends to get us through the month we already have 2 great articles web content migration disastrous strategy is there anything worse than content migrations well maybe content audits regardless gerry brings up some good points and i love the milk analogy i think that the whole process of content migrations should be re evaluated ',1),(760,'field',15,' html css javascript craft ',1),(173,'slug',0,' my 2008 web thanksgiving list ',1),(173,'title',0,' my 2008 web thanksgiving list ',1),(173,'field',2,' happy thanksgiving to all i thought i would take this opportunity to say what i am thankful for on the web i am thankful for jeffrey zeldman and eric meyer and others they really helped to spearhead the web standards movement and without them i probably wouldnt be in the field today bulletproof web design this is one of the first web development books i had ever read and it definitely helped to provide a strong foundation to build on thank god for dan cederholms brilliance twitter what i first saw as a silly little web app really has become a great networking tool i can post a question and someone is always around to answer css mastery i really took a big step forward in my ability after reading this book instead of just being a novice at css i feel like i can tackle anything now dean edwards ie7 script i cant tell you how many times i have used it while i have begun to use it less and less it saved my life when slicing early in my career wordpress it really is a flexible cms i honestly try and suggest it for every single site i am creating jquery i am in love with it i knew some javascript before but after easily learning jquery i feel much more comfortable writing javascript now so what are you thankful for ',1),(173,'field',14,' 1838 ',1),(760,'field',16,'',1),(174,'field',3,' web ',1),(174,'slug',0,' weekly link round up 56 ',1),(174,'title',0,' weekly link round up 56 ',1),(174,'field',2,' im really looking forward to this thanksgiving break ive been working on some blog articles and the redesign of my site so stay tuned changes are coming soon hopefully here is what i found interesting this week a list apart issue 272 two solid articles from a list apart again but i thought this is how the web gets regulated was especially interesting there are definitely holes in web accessibility and people like joe clark are helping to fill those holes a more useful 404 was an interesting concept but im not sure how i feel about it being done with perl and ssi demo of some thoughtful ui on ffffound com wow i had heard of ffffound but didnt know that it had so much thought put into the ui definitely some great minds behind it college stops giving students new email accounts start of new trend definitely a smart move at boston college it definitely seems unnecessary to give students another email account when they probably already have at least one 10 steps to a client friendly wordpress cms wordpress is a great choice as a cms for powering small sites but for the non techie user it can be a little challenging here are a few tips to help make it easier for them now boarding dave shea decided that he was going to try and fly without using a paper boarding pass and he was only going to use the digital version of the boarding pass on his iphone this definitely seems like it is going to be the way boarding passes are handled in the future but we still may be a little ways away from that ',1),(175,'field',3,' web ',1),(175,'slug',0,' weekly link round up 55 ',1),(175,'title',0,' weekly link round up 55 ',1),(175,'field',2,' just another busy week and some interesting links from the week writing good alt text roger johansson provides some instructions for writing good alt text 100% css compatibility or degrade correctly in my opinion the correct answer is to degrade correctly the only problem is trying to sell the client on that idea why thinking in the shower may be an ideal model for creative pause i definitely get a lot of good thinking done in the shower someone just needs to invent some way of writing stuff in the shower google search engine optimization starter guide this is a good beginners guide to seo even though there is nothing new or profound here it is always interested to see what google recommends as good practice protonotes this application provides the ability to add notes to prototypes and comps i thought this would be useful for our company when we send them to clients js 909 cameron adams created a drum machine using straight up javascript thats pretty hot ',1),(176,'field',3,' tutorial ',1),(176,'slug',0,' how to preload images when you cant use css sprites ',1),(176,'title',0,' how to preload images when you cant use css sprites ',1),(176,'field',2,' i have already shown how to use css sprites but there are times when you just cannot use them sometimes you still want the benefit of preloading the image so you have to get creative an example i have created a demo of a css sprite in action the sprite has the two images sitting on top of each other and each link is using the image as a background image and then shifting the position of it when hovering a spritevert br background url trevor davis com images content 2008 11 sprite vert gif no repeat top left br padding left 30px br br a spritevert hover background position bottom left it works great in the first example but what happens if the user resizes their text the sprite starts to break when i am building a site i am always thinking with the bulletproof mentality of dan cederholm so this is just not an acceptable solution now we obviously couldnt position the images next to each other because we would still have a problem when shifting the image around the solution typically when you are using css sprites there is another element containing the anchor whether its a list item paragraph div etc this solution will work unless you have a background image on that element as well example i have created a second demo that fixes the first example the idea behind it is that instead of combining the images into 1 image you split it into 2 then you place the image that is being shown on hover as the background image on another element preferably a containing element just positioned off the screen then when you hover you switch the background image which has already been preloaded so you dont get that white flicker that may be a little hard to understand so ill give an example the markup p class= spritecontainer a href= class= spritevert hover over me a pbr p class= spritecontainer a href= class= spritevert spritevert2 hover over me a pbr p class= spritecontainer a href= class= spritevert spritevert3 hover over me a p note the extra classes of spritevert2 and spritevert3 are just used to change the font size the css p spritecontainer br background url trevor davis com images content 2008 11 sprite hover gif no repeat 9999px 9999px br br a spritevert br background url trevor davis com images content 2008 11 sprite off gif no repeat top left br padding left 30px br br a spritevert hover br background image url trevor davis com images content 2008 11 sprite hover gif br more explanation so looking at the previous example i am adding the background image that i want to appear on hover as the background image on the paragraph with a class of spritecontainer and i am positioning it way off the screen then when i hover over an anchor with a class of spritevert i change the background image to be the one from the paragraph with a class of spritecontainer conclusion while this is not as ideal as using css sprites because you increase the number of hits to your server it can help to eliminate the white flicker that you get if the image is not preloaded ',1),(176,'field',14,' 1835 ',1),(177,'field',3,' web ',1),(177,'slug',0,' weekly link round up 54 ',1),(177,'title',0,' weekly link round up 54 ',1),(177,'field',2,' well unfortunately im still doing weekly link round ups that means that my redesign still isnt finished hopefully i will have more time to finish it up soon here are the links that i found interesting this past week question in the past historic front page moments this is a great question considering the historic moment we had last week we had people lining up for hours to buy newspapers but were people taking screenshots of websites extract know your site we get to read an excerpt from paul boags book website owners manual about analyzing your website a list apart issue 271 this was an excellent article this week with writing content that works for a living and progressive enhancement with javascript well written content and unobtrusive javascript is there anything better obtrusive javascript checker this plugin will traverse a webpage and highlight obtrusive javascript web 0 2 andy rutledge describes how he thinks the economy will affect web development firms and freelancers ',1),(768,'field',8,' homepage ',1),(178,'slug',0,' an event apart chicago ',1),(178,'title',0,' an event apart chicago ',1),(178,'field',2,' i was lucky enough to have my company pay for myself and my two colleagues brad and adrian to go to an event apart chicago like my an event apart boston summary i thought i would create a similar post this is going to end up being a really long post so i would recommend reading it in pieces or skimming i am going to split it up into two pages so that the page does not get even more ridiculously long so be sure to go on to the next page after reading the first one understanding web design jeffrey zeldman zeldman is such an amazing speaker and web evangelist he first begins by asking the question what does a web designer need most css php ruby on rails nope empathy ok he joked that we need advil too he described this more by showing a screenshot of the old realplayer site and labeling everything that looked like a link the truth was not that many of them were actually links the web designer for realplayer has to respond to two different internal strategies help a user find the free player and sell the free player those two strategies are basically competing and fight against each other as zeldman says its rough out there for a web designer the key to good design is that the user needs to be able to use the website with a short learning curve like steve krug says dont make me think he uses another site consumer search as an example take a look at the site doesnt it look like a phishing website we have no clue what this site actually does college what for another hard part of being a web designer is the lack of good education programs for the field just because someone can learn how to use photoshop it does not mean they are a designer teaching excel is not the same as teaching business after reviewing all of the data from the 2007 web design survey zeldman wonders if education is even relevant 47% of people surveyed said that what they studied in college was unrelated to what they do today i cant remember how i responded but very little of what i learned in college do i use today they also determined that as income increases relevance decreases this actually makes sense since the more money you make the longer you have been out of college technology changes fast no respect think about when you meet someone who says they are an architect or surgeon you are usually pretty impressed with the person but think about when people meet web designers they think that they just play on the internet no respect but did we bring this onto ourselves there is no standardization of titles no standardization of departmental organization and not that much money in the web field in search of excellence another problem with the perception of the web i that non web people dont understand it all they here in the news is how important facebooks redesign is how myspace is adding music to profiles how much money some startup got and other crap like that is that really whats important so fine maybe they so all these sites that claim they have won awards take the coca cola site really award winning some kind of rainbow exploding from a bottle go ahead and disable javascript and try to visit the site yeah you cant get past the first page award winning note the sarcasm web design is different the web is different than print design comparing illustration to web sites it just wrong people spend time on normal web sites usually their bank insurance news etc sites nobody spends time on the coca cola website good design is invisible good web design is about the character of the content not the character of the designer nobody comes to your site to see your awesome stock photo they come for the words 12 tips to empathetic web design start with the user your passion know yourself know what your limitations are find the right clients job during initial client meetings shows your true personality if the clients dont like it tell them to take a hike sell ideas not pixels saying i dont know is okay just tell them youll find out later build trust show that you really care about the project ask questions bring out the big guns reference articles by experts when necessary it gives clients reassurance create a paper trail always be able to refer back to something never underprice your work say no to spec say no to rush jobs lack of planning on your part does not constitute an emergency on my part end with the user your passion man zeldman is awesome im glad that hes on our side debug reboot eric meyer this was one of the more technical talks of the conference and it was a good one eric first started by showing a code snippet pa href= a p pimg src= alt= title= p yep perfectly valid according to a validator validators cant tell you everything this is why good web development will never be able to be completely done by machines but validators really are just tools for us to use to make sure we are doing things correcty debug css i had previously read erics article about diagnostic styling but i guess i didnt really think too much about using it this could definitely be useful when creating pages but it is definitely not for production use it can easily be added as a user stylesheet using the web developer toolbar a couple of new css things that i learned were the empty and not pseudo selectors the empty pseudo selector will select elements that do not have any nodes as children text included so it could be useful to use on some content management systems that generate a lot of extra empty elements here is an example of hiding all empty paragraphs p empty display none the not pseudo selector will select elements that are not something to better explain that here is an example of giving a border to all images that do not have an alt attribute defined img not alt border 2px solid red with debug css there are some times when you style all of a type of element then override the style for the elements that have what you are looking for this example should explain it a little better th border 1px solid red th scope= col th scope= row border none so what is happening here is that you are styling all table header cells with a red border then table header cells that have a scope attribute will have no border which accomplishes the goal of giving all table header cells without a scope attribute of col or row a red border the important thing about erics debug css is that you should modify it to fit your situation eric is just creating this to show an example of what is possible not to be the only solution so get creative another point that eric made when debugging css was to use the outline property instead of a border since borders affect the layout of elements they can sometimes change the layout of the page but outlines do not affect the layout which i didnt realize until now reboot css not reset eric then went on to talk about his infamous reset stylesheet the main point of this part of erics discussion was that you should not just drop in his reset stylesheet if there is an more effective way to accomplish the same thing for example dont set the ol and ul list style equal to none if you are just going to redefine it later to have a list style instead turn the reset into a baseline modify the reset stylesheet to suit your project dont use his reset stylesheet without modifying anything dont reset then re style reboot instead eric reinforced this point by saying he did not like the use of css frameworks he thinks everyone should create their own framework he said that once you get into someone elses framework and try to modify their code you have to change the way that you think about coding and try to think like the person who created the framework he also thinks that they end up being bloated his reset css has evolved over time after just thinking about the concept more for example he changed it so that it does not use font inherit because of lack of support in ie he also stopped using generated content to add quotes to the quote and blockquote elements he compared relying on a browser to generate content to relying on a browser to have javascript enabled there are still some browsers that do not support generated content and if the quotes are important enough they should be in the actual content storytelling by design jason santa maria jason has been one of my favorite designers for a while now with his recently redesigned site he has reaffirmed how great of a designer he is as a child we are taught to look for the meaning from images in stories this is called graphic resonance images are used to reinforce the story remember the saying a picture can tell a thousands words yeah thats what he was talking about designers need to consider themselves as the narrator the first example that jason gave was of charles joseph minards map of napoleons march this information could have easily been represented as a bar graph but charles map has much more impact seeing how napoleons troops dwindle in size really help us to visualize the magnitude of what happened the second example jason gave was the article in wired magazine the sleazy life and nasty death of russias spam king he showed the spread from the actual printed magazine and they really captured the feeling of the article but then he showed how the article was translated onto the web and it was quite boring basically weve distilled the stories down to just content we all know that content is king but that doesnt mean we cant enhance the content and tell a story with images as david carson said design cant not communicate jasons own site is an incredible example of telling a story with each blog entry jason is basically art directing each article on its own why are we plagued by sameness there is so much of the web today that is so similar logos look the same sites all have similar layouts web designers complain that they are restricted by the browser but is that really the reason why everything is similar there are plenty of sites that really break from the mold no one belongs here more than you a brief message fray and jasons site just to name a few armin vit recently inquired landmark web sites where art thou well a simple reason is because the web really is young now is when we are going to start seeing landmark websites there are still advancements to be made and still new stuff to figure out there isnt only one way to present information jason realized that when designing you always start from a blank slate whether its a piece of paper or a blank photoshop canvas the nature of the medium jason then went on to describe four common principles of the web the metaphorical page ubiquity wysiwyg collections of pages layout the metaphorical page if we take a look back in history the canvas that designers has changed drastically from stone to paper to digital canvases but still it is all starting from a blank slate the web is the one place that is basically infinite its fluid most of the web runs on a single fixed dimension width its not like we are given a 8 x10 book cover to design the web really has no finite value jason gave the example of ladislav sutnar who created the two page spread ladislav probably could not fit everything on one page so he decided to break the convention and spread it across two pages if you have new problems look for new solutions ubiquity wysiwyg another reason why the web is so different is because we have no idea what kind of device people will be looking at websites on with a printed newspaper there is only one way to look at it with advancing technology people can visit websites online on an iphone screen reader and more when people click something on a website things can happen the web is an experience collections of pages with a book you can flip to the last page and see what you have ahead of you with websites there is no real way to grasp the depth take a look at harpers magazines archive sure you can grasp that there are 158 years and 12 months per year but there are tons of articles per month you cannot ever grasp how large the site is without clicking into every article by the time you finished with that there would probably be new articles layout most people have probably heard of the golden ratio and the rule of thirds but again since the web can be viewed on so many different devices they do not always apply design ideals rely on predictable dimensions but on the web we cant predict what dimension that will be conclusion as jason summed it up he said that design for the web has been chiefly driven forward by the technology rather than the message the form of design should be driven by the story so the question is how do you stand out from all the other crap online design criteria actionable ideas sarah nelson i had never heard of sarah nelson before and i was a little worried because she was presenting right before lunch it ended up being a great presentation and she had me captivated the entire time what are design criteria design criteria are a set of 5 7 short memorable strategic directives your team can use to focus design activities and unlike project goals success metrics brand statements universal design principles or mission statements design criteria emphasize specific rules your team will follow when tackling the problem at hand instead of looking at design criteria as a constraint we should look at them as freedom they help us generate ideas evaluate ideas make decisions and move forward here are a few examples of familiar constraints that sarah gave budget time people information media resources sarah also gave an example of some constraining tools mission statements brand guidelines personas demographics design principles best practices these tools are used to help designers to focus their designs if design constraints are defined well at the beginning of a project it makes creating the actual design much easier im sure everyone has heard of the term think outside the box well sarah said that before you can think outside the box you have to know and define the box the problem is we dont work alone so we cannot define the box ourselves once we all understand the box we can use that as a platform to generate ideas and figure out which ideas are the most actionable the creative process the creative process is comprised of divergence and convergence approaches which each have a very distinct way of thinking divergence you use a divergent approach when you are trying to discover new things this is the process where there is no wrong answer and you are really just in discovery mode this is comprised of research activities the next step is to determine what is actionable and find the solution convergence this is when you are seeking a conclusion you are examining the actionable ideas and solving the problem the point of design is to solve a problem i found sarahs talk to be very interesting as i have never been formally trained in graphic design it is important for me to understand the process on the spot usability reviews robert hoekman jr instead of having a formal presentation robert took websites suggested from the crowd and did a usability review the 3 most important things when determining the usability of a site is the purpose benefit and usage before creating a site we must determine what a person would want to find when using large branding images on a site they should be considered billboards on a highway do they convey the message when driven by at 60 mph to help this less and more concise text is preferable do the images help to tell the story of the content when you have a form with many steps there should be some sort of progress meter to let the user know what they are up against if you can avoid them select menus on forms are generally bad for usability out of sight out of mind when creating calls to actions people generally do better when they think about doing instead of structure so when things are organized by task instead of object users succeed more 5 second usability test this is a similar idea to the billboard example it is a quick and easy way to determine the usability of a page robert suggests the following steps take a page and show it to someone for 5 seconds take it away and ask them to write down everything they remember about the page one of the things they write down should be the most important thing that you want them to do if the user does not list the most important thing you are trying to convey on the page then you are in trouble and should re evaluate the page an easy way to do this is to use the website five second test robert created a test and had everyone take the test one interesting thing about it was that he twittered the link twitter is such a simple tool and it was perfect for this situation designing the details web app ui design beyond the basics jason fried the basis of jasons talk was the idea of craftsmanship he started with the comparison of an ikea desk to a desk made by a craftsman sure the ikea desk is perfectly usable but it feels a little cheap the desk made by the craftsman is sturdy and solid so if we just add a little bit of craftsmanship to our design we can vastly improve them weak normal strong on the web there is normal text and emphasized strong text but there is no de emphasized element so how do we de emphasize using design of course for example instead of making everything emphasized de emphasize something by giving it a lighter color most people focus on the normal and emphasized text but not enough focus on the weak jason then went through some of the 37 signals applications to show us examples think about the flow anticipate the next action jason discussed how the functionality of iprioritize and ta da list were very similar but ta da list thinks about what the user wants to do next ta da list takes less clicks and streamlines the process of using the application you should consider the before during and next actions of the application flow if a user goes to a page with a form on it focus the first form field so they dont have to click anywhere you should always focus the users attention on the next thing you think they want to do the details its amazing how much little details can make a difference designers should consider words as important as pixels copywriting is an integral part of interface design for example if you are doing a search for contacts and only 1 contact is returned say that 1 contact was found if 10 were found say that 10 contact were found just one simple letter all it takes is a little bit of extra coding write in your applications like you talk for example use the phrase who can see this person instead of permissions always be clear over clever instead of advanced search use search by city state country zip phone or email think about how you would say something in real conversation make it more human like label the button save this item instead of save item when developing an application you definitely do not want to spent too much time at the beginning on these small details the flow and functionality should be established then work on the fine details jason said at 37 signals they use sharpies instead of pencils when sketching at the beginning of the process when you have to explain something like instructions for a form use 3 sentences the sentences should be structured as follows explain what is going to happen give an example provide a suggestion recommendation timing is everything if you have a drop down menu allow for a mistake when hovering if the hover off of it for a second then hover back over it dont make the menu disappear have a photographic memory if someone is entering a lot of items in a row remember the settings from the last time they entered it it is most likely that they will want to have the same preferences checked give the user feedback on that just happened gracefully fade something out instead of quickly hiding it give a slight flash of yellow before fading back to white give the user an update in words so that they know what happened not everything needs to be equally obvious there are two different users regular users and power users you do not need to make advanced tasks obvious for everyone as long as regular users can accomplish the same task through a different path its not a problem for example not many people know that in backpack you can drag items to the sidebar to create a new page there is a lot of planning you can do for an application but you never know if a product is going to be any good until you actually use it so like the popular saying eat your own dogfood underpants over my trousers andy clarke i had never heard andy talk but i loved his book transcending css his talk was a little contradictory to what most of the experts say but i thought it was great his talk was centered around the thought that we can gain inspiration for designing from comic books every time you pick up a new comic book you have to learn how to read it taking the inverse of steve krugs dont make me think mentality andy suggests that we should engage the user and make them think obviously he is not suggesting that we make things hard to understand he just thinks that we can create much more interesting and compelling layouts andy recommends that you stick to a grid and be uniform but then break out to enforce a specific dramatic message what goes on between the panels is just as important as what happens in them comics make the user be creative and fill in the story between the panels he recommended reading scot mcclouds understanding comic books to understand a lot of techniques that are used in comic books not everyone visits your website be going to the homepage first just as not everyone starts reading a comic from the beginning of the series make all of your pages unique dont get stuck in a template andys talk was definitely more inspirational than anything it was quite interesting to see the examples of comics and examining the way that they flow from panel to panel special adobe session web workflow with the adobe creative suite adam pratt this was a different kind of session more like a sponsor session but it was interesting to see some of the new stuff in creative suite 4 adam popped open the different applications and gave us a quick overview of the new stuff first off adam said that flash is on 98% of devices not just computers phones as well probably on of the most anticipated features in photoshop is the content aware scaling basically you can cram more parts of the photo into a smaller area without squishing or stretching it i also noticed that photoshop added the tabbed interface that a lot of the other adobe applications already had flash can run natively in all cs4 application so that means you can run things like adobe kuler in photoshop to get color scheme ideas you can also get real time screen sharing with up to 2 people as long as one person has cs4 the others just need flash and an internet connection you can give control to the others that do not have cs4 you can see everything on the computer not just cs4 applications you can drop a psd in dreamweaver and when the psd changes you can update the image in dreamweaver with just the click of a button when you open a file in dreamweaver it also pulls in all css and js that are being called on the page in its live code mode it is now running webkit you can freeze javascript and use the code navigation to see where the styles come from now if cs4 werent so damn expensive thatd be great continue to page 2 eric meyer live code workshop eric gave attendees the opportunity to submit css problems they were having and he would go through and help them fix it i didnt have any unresolved issues so i just enjoyed listening to what eric had to say nothing groundbreaking but there are a few points that i took away one thing that i guess i dont really think about is setting a background color on the body element if the design calls for white if a browser changed their default background color then the design could drastically change there has been some talk recently about using absolute font sizes since a lot of the newer browsers have full page zoom functionality i have actually decided the switch to use absolute font sizes and to soft serve relative sizes to ie6 eric suggested to use an absolute font size as the base size and then relative sizes from there on out im not sure if i agree with that though because you may not want all font sizes to be affected by changing the base size there are a couple of ways to contain floats float the container or assign the container a property of overflow with a value of hidden or auto using the overflow property feels a little bit like a hack but it gets the job done im not really clear on why this actually contains the float and i wonder if browsers will break this functionality at any point surprising as it may be eric even advocated using a table for laying out a form although i really do prefer using an ordered list for laying out forms someone even asked if eric knew a way to remove the yellow background on form fields that the google toolbar automatically adds to fields it knows how to fill in he came to the conclusion that you could probably remove it with javascript but it could destroy any focus background color that a user could have setup also if the user has the google toolbar installed then that probably means they may use the ability to automatically fill in the forms design lessons in chess rob weychert who would have thought that you could learn design lessons from learning chess well rob weychert did of course and he shared his lessons with us first he started with a couple of basic correlations between chess and web design chronology chess involves playing the beginning middle and end game web design has a similar chronology information architecture visual design and the site build out just as you need to research your opponent before playing them you need to do research to begin any project opponents in chess you are only playing one opponent but when working on a website you are typically facing three opponents the users the client and your colleagues you want to limit the userss options on the web site and help them focus on the task at hand with the client you want to work together with them to reach the goal of the web site it is important to surround yourself with colleagues that will challenge you collaborating and challenging each other is the best way to grow in this industry the lessons rob then went on to describe the 8 lessons that he learned from playing chess 1 content is king we have all heard it before but sometimes it is easy to lose sight of this in chess the game is decided on the king it is easy to get so focused on the king that you forget about the rest of the pieces sometimes we are so wrapped up in ajax jquery photoshop etc that we forget that the foundation of a website is its content yes the other stuff is important but the content is what needs to be served so use your design to enhance the content 2 know your story rob gave us the example of project that needed to be like a newspaper from a specific time period so what did rob do he researched the project by looking at old newspaper ads then to top it off he used a typeface that really existed in the era 3 think ahead the web is constantly changing and there are many ways for users to receive the content it is not like a static medium like newspapers or books you must plan for content to change and grow 4 dont get too attached while you think you may have come up with a great idea keep looking the changes are that you will probably come up with a better idea 5 act with purpose famous chess player siegbert tarrasch said one badly placed piece makes your whole position bad what rob took from this was that we should be able to justify every one of the decisions we make he broke down his slide design and gave reasoning behind every single one of his decisions 6 obey circumstance dont put the solution before the problem and rely on your old bag of tricks each problem should come with its own solution 7 principles are your friends except when theyre not principles are great to provide a foundation for a project the best place to be is in the middle ground you want to understand the principles but understand with experience how to break them ralph waldo emerson said the man who knows how will always have a job the man who also knows why will always be his boss 8 the journey is as important as the goal in order to succeed you need to have failures you should learn something from every project whether you fail or succeed with this knowledge you should be able to use a process of elimination to become successful implementing design bulletproof a z dan cederholm derek powazek was actually scheduled to talk but he was unable to attend so dan cederholm stepped in i enjoyed dans talk last year at an event apart and he definitely did not disappoint this year dans entire talk focused around the idea of craftsmanship in implementation he wanted to take a look at ideas for bulletproofness progressive enrichment basically really cool stuff that doesnt work in ie and reexamining past methods to show these ideas dan created a website called iced or hot and decided to come up with something for every letter of the alphabet a anchor links with meta information on the right hand side of iced or hot there is a list of popular drinks dan decided to include the number of drinks within the anchor tag instead of absolutely positioning the number of drinks within the anchor and risk overlap with a really long drink name dan just floated the number of drinks to avoid collision b border radius while css3 is still not officially implemented in all browsers there are some browsers that are offering vendor specific properties webkit border radius moz border radius to achieve css3 properties so if you want to add rounded corners to something and do not want to deal with slicing all those images then just use border radius it degrades fine and most of the time rounded corners are kind of like an added bonus this could also be useful when prototyping before slicing the real images if the corners are necessary in all browsers dan used these properties in a few places on iced or hot c color transparency with rgba browsers are starting to implement the opacity property or a vendor specific version but the problem with opacity is that it is applied to all of the elements children when you apply rgba to an element it will not affect its children the one downside to rgba is that it does not look like you can use hex values anymore which are probably the more commonly used and easier to remember values you would apply a 7 transparent black background like so background color rgba 0 0 0 7 again this might be something that is great for prototyping but then in implementation you would use pngs d do websites need to look exactly the same in every browser no its great to work with decision makers who get it these tiny visual enhancements that do not affect layout should not be necessary in every browser e easy clearing floats dan has been using the clearfix method of clearing but has decided that naming the class clearfix might not be the best idea instead he names the class group while the clearfix method is just one of many methods for clearing floats it looks like it will work in ie8 because it will support generated content f frameworks dan writes his own instead of using some bloated framework that someone else has written dan has created his own framework that he uses from project to project g gridlasticnus grid layout using ems we all know that grids should be used to help structure your designs but you can use an em based layout to ensure ultimate flexibility dan then gave a couple of tips when creating an em based layout set a max width on the outermost container max width 100% try to avoid setting font size and width on same element think from the outside in h horizontal grid sure vertical grid sort of when designers design comps they typically design columns to be equal and blocks of text to be the same height as an image in reality the actual content will not be the same so in order to have the appearance of a vertical grid use classed groups for the columns so that the tops of the columns can align i ie8 still refuses to resize text set in pixels wtf yes ie does have the page zoom functionality but if someone goes in and changes the text size it will not scale absolute units so do we stick with relative units i am going to use absolute units and soft serve relative units to ie j jquery it has a familiar css like syntax and is really powerful jquery is my language of choice as well k kitty dan realized that trying to come up with 26 items was really hard so he decided to show a picture of his cat l last on the iced or hot popular drinks list dan has a bottom border margin and padding on each list item on the last list item he did not want any of them so he created a class of last which zeroed out all of those properties he then used jquery to add a class of last to the last child of the list this is such an elegant solution until we get full css3 support m must skip a few letters if were going to get through this in order to save time dan skipped m r s shifting backgrounds parallax backgrounds for the lazy silverback made the parallax background popular and its pretty simple to do basically all you need to do is to position the background with a negative percentage the header of iced or hot uses a subtle parallax background t a testimonial for reset css dan found out that on the mtv com redesign he used margin 0 and padding 0 a total of 155 times if he would have just used a reset at the beginning he would have saved himself a lot of those instances u your stats you may be asked when you can drop support for a certain browser the answer should be found by looking at your statistics global statistics might be very different from your own so you have to consider those with a grain of salt the in house designer cameron moll cameron moll decided to share the lessons that he has learned working as an in house designer lesson one lets take that offline irsquom sure youve heard the phrase lets take that offline well who knew that so much of a designers time should be spent not designing khoi vinh broke down how he thought he should successfully spend his time when he was doing design and he concluded that he should spend 20% of his time doing the actual work 40% working on the publicity of the design and 40% creating relationships lesson learned create relationships that will engender trust and confidence in your work as a designer remember its 40% of your job lesson two lets take a 5 minute bio break cameron gave an example of communicating with his it department and he was asking for an email alias to be created the it department emailed him and asked what he would like it to be called cameron then responded with is dl mobile available the it department then asked the person who created the aliases to create an alias for the following address dl mobile available cameron recommended reading the anatomy of peace to understand how to deal with conflicts lesson learned great communication skills create the shortest distance between an initial idea and a successful user experience besides ita s another 40% of your job lesson three who owns that action item cameron showed us this quote from paola antonelli ideas are a dollar a pound greatness is in picking which ones you want to make happen he decided to modify it a little ideas are a dollar a pound wisdom is in picking which ones you want to make happen greatness is in making them happen you should not fall into the trap of thinking that you cannot make a difference in your organization lesson learned smallify the organization develop foster relationships with change makers not just decision makers lesson four lets not try to boil the ocean you should always present things low fidelity people get too distracted by small things that only the designer should worry about like color typography etc lesson learned bring people along in your thinking paint the big picture and then avoid the illusion of agreement by prototyping early and often remove fidelity when it isnt necessary for agreement lesson five do we have the bandwidth you should always try and build on your knowledge and capabilities cameron recommends having an annual and weekly design review they hold in house workshops and have a budget for conferences you should always be looking to improve yourself you want to establish influential relationships with as many people as possible internal departments local colleges universities vendors etc at camerons company the designers have a blog lesson learned establish the culture and environment necessary for good design to flourish lesson six were determined to leverage our synergy with this new initiative create an inspirational culture and environment the surroundings in the office should help to inspire yourself and others work from home sometime change your surroundings lesson learned uninspiring workplaces are a detriment to creativity only if you allow them to be find inspiration everywhere lesson seven i just got dilberted again lesson learned know when to exit its as simple as that the arts crafts of web design or what would william do curt cloninger i didnt know curt by name but apparently i read one of his books curt did his presentation a little differently than everyone else he actually wrote his presentation in html and linked to images when necessary curt based his presentation on william morris who helped to spearhead the english arts and crafts movement 1 stay true to nature and materials remember people this is the web there is no need to simulate physical material wood metal etc on the screen typography should be seen as a material push css typography there are a lot of text properties that are rarely used behavior should be seen as a material it should look like it does what it does interstitial animation should help to tell the story of progressing through the site 2 unite art design and hand craft everything that you touch should be great if you have to slice someone elses design do it ingeniously push the limits of possibility 3 unite the microcosmic and macrocosmic if it doesnt need to be scalable dont automate it make each section of a website different and unique 4 value utility value beauty have nothing in your house that you do not know to be useful or believe to be beautiful anyone can build a cookie cutter site with templates the added value is beauty and customization add small ornamentation to the site and show your real craftsmanship 5 enjoy work outsource or mechanize the un pleasurable but try and do as much of the entire process yourself at least once this will help you when you are trying to find someone to do that job for you 6 redesign the whole world if current goods and tools are unsatisfactory make your own life doesnt simply happen to us we produce it bruce mau designing the next generation of web apps jeffrey veen the future of the web is very bright there are web applications released every day all of the web applications revolve around entering and digesting data the future of the web is going to be creating these tools that will enable users to participate and interact with the data as designers we need to design the data so that it will be easy to digest and interact with then you should use filters to clarify the data like many of the other presenters said its easy to lose track of the fact that design is just communication so where do we get our sources of inspiration history the current state of things who users are etc jeff gave the example of john snow who was a physician in britain researching a cholera outbreak john used a map to illustrate that the source was actually a water pump and not airborne like everyone else thought inspiration should come from everywhere jeff got the inspiration for the google analytics graph from watching raiders of the lost ark visuals are most impacful than numbers statistics can feel abstract and anesthetizing making it difficult to connect with and make meaning chris jordan the designers job is to find a story in the data and to remove everything that isnt telling the story the difference between print and interactive designers is that interactive designers have to give up some control to their users people can resize their text they can change their screen size they have much more control then someone reading the newspaper jeff made three specific points about design storytelling is enabling users to discover visual cues allow for interactivity instead of editing allow for filtering jeff also recommended some books the ghost map edward tuftes books visualizing data mental models a panel apart the last session was really just an opportunity for people to ask questions to jeffrey zeldman eric meyer cameron moll and jeffrey veen it was certainly interesting to hear what they had to say about the current state of web design conclusion i absolutely loved the conference i always feel inspired when i come back to work i would certainly recommend the event apart conferences to anyone ',1),(178,'field',3,' web ',1),(178,'field',14,' 1833 ',1),(758,'field',8,' products ',1),(179,'field',3,' news ',1),(179,'slug',0,' change we can believe in ',1),(179,'title',0,' change we can believe in ',1),(179,'field',2,' thank you america for doing the right thing ',1),(756,'field',8,' homepage ',1),(180,'field',3,' web ',1),(180,'slug',0,' weekly link round up 53 ',1),(180,'title',0,' weekly link round up 53 ',1),(180,'field',2,' another busy week for me ive finally finished my review of my experience at an event apart chicago and i will be publishing it later this week yes i know its weeks late but it is really long and was helpful in helping me remember what i learned so here are the links i found interesting last week attack ad generator a political attack ad generator full jquery goodness free site validator scan your entire website to search for validation errors although when i tried it it didnt seem to get further than the home page good idea in concept at least font face in ie making web fonts work jon tangerine discuses how the current state of font face embedding and how to implement it prototyping with xhtml really nice overview of the process of prototyping its not anything we dont already know but its nice to see the entire process described in words expression engine developers toolbox expression engine seems to be the hot new thing and for good reasons i have begun to play with a little bit but i am trying to learn as much as possible about it ',1),(785,'field',4,'',1),(181,'field',3,' web ',1),(181,'slug',0,' weekly link round up 52 ',1),(181,'title',0,' weekly link round up 52 ',1),(181,'field',2,' well hopefully this is going to be one of my last weekly round ups in my redesign i am going to have an area made especially for asides where i can just post a link and a little description the problem is just finding time to finish my design so here are the links i enjoyed in the past week be kind to the color blind chris campbell who has a color vision deficiency shares techniques to make sure that your designs are still effective to those who have vision issues with color javascript will save us all since browser development is so slow eric talks about utilizing javascript to extend the browser to support css3 everything you know about css is wrong rachel andrews discusses how we will be able to utilize the table value of the display property to make layout much easier a list apart issue 270 aaron gustafson discusses progressive enhancement with css and the a list apart readers provide some tips from working from home im not sure i agree with aarons technique of using multiple stylesheets i think using just one makes it easier to manage but to each his own creating custom listings with expression engine part ii i have been trying to learn as much about ee as possible and this tutorial definitely give some insight on how to customize it and utilize its power on the subject of design this is just a simple list of design books that jason recommends but i just love the way he lays things out upgrading our rss feeds the guardian becomes the first major newspaper to provide full rss feeds according to my poll from last week this makes sense relative readability wilson miner discusses why 16 pixels is the most readable font size to use on the web is css3 rgba ready to rock screencast andy clarke talks about dan cederholms talk at an event apart chicago on rgba i had never really heard of it until dan talked about it but it sounds really promising ',1),(785,'field',5,' lenovo ',1),(785,'field',2,'',1),(182,'field',3,' web ',1),(182,'slug',0,' weekly link round up 5051 ',1),(182,'title',0,' weekly link round up 50 51 ',1),(182,'field',2,' well again i am slow getting a blog post written i have 4 drafts saved right now i spent last weekend at an event apart chicago and i really enjoyed myself so here are some links from the past 2 weeks automatic numbering with css counters wow i never knew this existed although if a user does not have a css capable browser you better make sure the numbers are not essential to the content concept design tools i love the backup software example using jquery for background image animations jonathan snook shows how some simple jquery can add some interesting hover effects designing user centric web sites a discussion about creating a user centric site in the future this definitely seems like it is going to be the direction that a lot of websites are going to go in new in labs stop sending mail you later regret a new labs feature mail goggles will try to prevent you from sending those late night drunk emails it asks you to solve math problems when sending emails late at night on the weekends on wedding design while im not a big design nerd i found this recap of cabels wedding and all of the design he did for it really interesting i definitely want a photo booth at my wedding zoom dave shea starts a good discussion about whether browsers using page zoom will change the way that we slice websites i actually have begun sizing my text absolutely and soft serving relative units to ie6 foxworthy im definitely a perfectionist not a purist a list apart issue 269 i love that aaron gustafson compares the web to an mm in his article entitled understanding progressive enhancement zeldman gets sentimental and talks about a list apart after ten years ',1),(183,'slug',0,' still publishing summary rss feeds ',1),(183,'title',0,' still publishing summary rss feeds ',1),(183,'field',2,' while there is no correct choice in the full vs summary rss feed debate i came across a situation this weekend that reinforced my opinion for full feeds the past few days i was at an event apart chicago and i only had access internet access on monday and tuesday during the day now i wanted to read my rss feeds at other times so i took my google reader offline with gears and started to read through them this worked great until i got to feeds that only gave a summary how was i supposed to read the article stop begging for page views and give me the content i guess its just one more thing to consider when trying to decide whether to choose full vs summary have your own opinion vote below which do you prefer polldaddy poll=1001137 ',1),(183,'field',14,' 1828 ',1),(184,'field',3,' web ',1),(184,'slug',0,' weekly link round up 4849 ',1),(184,'title',0,' weekly link round up 48 49 ',1),(184,'field',2,' let me first apologize for being a terrible blogger two weeks without a word from me i have been very busy at work doing a bunch of freelance and working on the redesign for this site i also took a two day trip to new york for work to attend a gala for the national park foundation so basically this is two weeks worth of links in one blog article im hoping to launch the redesign before i head to an event apart on the 11th so here it is some interesting stuff from the past 2 weeks design by community i agree that design by committee doesnt work but mark discusses design by community and it looks like it has some promise hire airbag created an awesome rfp form to improve the communication at the beginning of projects anchor buttons dave shea plays with the button element while the buttons look basically the same in all browsers i know that there are some programmatic issues using the button element we have also found that some version of windows mobile dont support it a list apart is changing there are only so many ground breaking css tricks that can be come up with expanding the topics of a list aparts articles to cater to all people who build websites seems like a great move time to stop showing clients static design visuals while i think andy clarke has a good idea here i dont think it is very realistic it is just a very risky move to basically create the sliced template before the design has even been signed off on you would really need to have some trusting clients a list apart issue 268 so a list apart starts off with the new direction in fine fashion with web standards 2008 three circles of hell and test driven progressive enhancement mollys article gives a great insiders perspective on some of the groups that are working to continue the advancement of web standards five css design browser differences i can live with i agree totally with andy here i think as long as what you are doing with advanced css selectors is not essential to being able to read the content i say we go for it there is only one problem clients i guess we will just have to work hard trying to educate our clients jquery finds its way into microsoft and nokia stacks its great to see jquery getting usage from some big names it can only do good things for the library when can we stop talking about supporting certain browsers i think jeff makes a great point here if you know what you are doing with web development your sites should be supported in all browsers the future of web apps in an integrated world this is an awesome article discussing what our world could be like if our phones could control everything i want to live in that world ',1),(185,'field',3,' web ',1),(185,'slug',0,' web designer guide ',1),(185,'title',0,' web designer guide ',1),(185,'field',2,' about a week ago i was asked if i wanted to be included in web hosting searchs web designer guide the project seems like a great idea and below is a quote from the organizer eva about the project this guide will aide visitors in finding a web designer in their local area say you want to start a website and sell hats and you are based in tennessee but you have no idea how to make a website well you can look at our list of designers find one in tennessee and connect instead of searching on google everywhere this list already has great designers since whs has contact with every company listed we also geographically separated them since many people want to work with someone in their area you can read more about the project on their blog its pretty cool to even be asked to be included and im interested to see how the guide will grow ',1),(492,'field',8,' contact page ',1),(186,'field',3,' web ',1),(186,'slug',0,' weekly link round up 472 ',1),(186,'title',0,' weekly link round up 47 ',1),(186,'field',2,' ah football season is so great its hard to get any work done on my redesign when there is so much football on tv though oh well here is what i found interesting this week two thousand twenty two this post by jeff is kind of like a tragic comedy while it is laughable how ridiculous it is that it will take that long for the html 5 spec to become proposed recommendation it is also sad how long it takes for advances in browsers to actually happen dear aiga where are the web designers jeffrey zeldman points out that aiga is really not catering to web designers i think they need to reevaluate their thinking because the web is almost more important than any other form of media these days how to keep the freelancing spark without burning out some nice tips to keep in mind to prevent from burning out this is especially important to people like me who have a full time job and freelance on the side a modest proposal while zeldmans proposal will never happen this article really shows why he is such a prominent figure in the web community even though this is not a web related article he is such a great communicator wordpress developers toolbox wordpress is my tool of choice these days and this is a nice collection of resources ',1),(491,'field',8,' technologies page ',1),(187,'slug',0,' make your content smarter with jquery ',1),(187,'title',0,' make your content smarter with jquery ',1),(187,'field',2,' at work today we were asked by a client to add a link to download adobe acrobat onto every page that had a pdf linked on it since the site was mostly static with some content coming from the content management system we were not interested in adding it to all of the static pages and changing the programming of the cms output pages my co worker and i decided that the best way to do it would be with javascript since the site was already using jquery our companys library of choice it turned out to be quite a simple task if you just want to get to the code take a look at the demo the idea we add the link to download adobe acrobat to the sites template we hide the link using css we use jquery to see if there are any links on the page linking to a pdf if there are we use jquery to show the link the execution ok simple enough just add the link to the source of the document p id= acrobatdownload a href= http www adobe com products acrobat readstep2 html download adobe acrobat to view the pdfs on this page a p then hide it with css acrobatdownload display none the jquery first we want to check and see if any of the links on the page end with pdf then if there are any we fade in the link $ document ready function if $ a href$= pdf length 0 $ acrobatdownload fadein slow i have created a demo page with a pdf link on it to see this in action conclusion i cant even imagine how much time and hassle we saved ourselves by doing this with javascript plus it could provide useful to someone who doesnt have acrobat although i cant imagine that there are many the concept is actually quite simple and my mind is grinding away trying to think of other ways to use jquery to do things like this can you all think of anything ',1),(187,'field',14,' 1824 ',1),(188,'field',3,' web ',1),(188,'slug',0,' weekly link round up 47 ',1),(188,'title',0,' weekly link round up 47 ',1),(188,'field',2,' it is amazing how fast these weeks have been flying by i have a couple of real blog posts that i have been working on and i need to finish them up and get them published here are a few things that i found interesting in the last week introducing ubiquity after watching the aurora concept videos it is great to see something similar already be in development finding harmony between categories and tags on blogs using categories and tags effectively is an integral part to information organization on blogs obama is restful i love that we are comparing presidential candidates based on their websites obama wins the shelf life of a web site after just redesigning our company website jonathan snook brings up an interesting question on the shelf life of technology ',1),(490,'field',8,' modems chipsets page ',1),(189,'field',3,' web ',1),(189,'slug',0,' weekly link round up 46 ',1),(189,'title',0,' weekly link round up 46 ',1),(189,'field',2,' ah long weekends are the best i got a lot of freelance work done and im hoping to finish up the couple of projects i am working on so that i can redesign my site here is what i found interesting this week how simple web design helps your business this is a list showing how some nice design decisions have helped these e commerce sites web design by designers when award winning design firms design their website they should let their work be the focus of the site a list apart issue 266 aaron rester discusses a new way of thinking when developing a site in mapping memory web designer as information cartographer and dave shea shows us how to add a little flair to css sprites with jquery in css sprites2 its javascript time how captcha was foiled are you a man or a mouse spam is obviously one of the biggest issues on the web but are we attacking it incorrectly with captcha some think we are matt mullenwegs answer is to focus on the content rather than the user ',1),(489,'field',8,' networks page ',1),(190,'field',3,' web ',1),(190,'slug',0,' weekly link round up 45 ',1),(190,'title',0,' weekly link round up 45 ',1),(190,'field',2,' hopefully i am getting down to the last month of so of doing these weekly round ups on my new site i plan on having an aside section for posting a link and a short blurb here are a few links that i found interesting this week build your first facebook app while there is an abundance of facebook apps and a lot of annoying ones this is a nice tutorial about creating them sneakernet svn dave shea describes his technique of source control while using an usb key may not be the most elegant solution it works for him source control is a major issue and i think we will see more and more elegant solutions in the future 10 principles of the css masters this is kind of like my post about the 6 most important css techniques you need to know so much so that a part of the article was even included ',1),(488,'field',8,' homepage ',1),(191,'field',3,' javascript tutorial ',1),(191,'slug',0,' jquery tabbed navigation ',1),(191,'title',0,' jquery tabbed navigation ',1),(191,'field',2,' it seems like more and more these days javascript tabbed interfaces are being used there are plenty of scripts out there but i think it is important to be able to do things yourself a lot of javascript plugins that you will find online will give you way more than you really need and you may understand how to use it but you will not really understand what it is really doing first i thought i would walk through creating a tabbed navigation script with jquery and then modifying it so that it works without javascript if you want to skip ahead take a look at the sample jquery tabbed interface the markup im going to set this up using classes so that it is possible to use this multiple times on a page there are two different pieces to the markup the navigation and the actual content for the tabs the navigation ul class= tabnav li class= current a href= tab 1 a li lia href= tab 2 a li lia href= tab 3 a li lia href= tab 4 a li lia href= tab 5 a li ul pretty straightforward just an un ordered list the javascript will accommodate any number of tabs notice that the first tab has a class of current this will be the class to style to show the active tab the tab content div class= tabcontainer div class= tab current hellip content for tab 1hellip div div class= tab hellip content for tab 2hellip div div class= tab hellip content for tab 3hellip div div class= tab hellip content for tab 4hellip div div class= tab hellip content for tab 5hellip div div again pretty straightforward a container and a div for each of the tabs content a couple of things to note the first tab content also has a class of current and the tabs content divs need to appear in the same order as the navigation some basic css im not going to explain how i completely style my example but i will highlight the necessary styles for the tabs to work to highlight the active tab this is what you want to style ul tabnav li current a hellip in order to hide all of the tabs contents except for the active tab these are the styles that are necessary div tabcontainer div tab display none div tabcontainer div current display block the javascript ok this is definitely the meat of the post since i wanted this to be as generic and simple as possible i made heavy use of the parent and children selectors so to start we want to add onclick events to the tabs $ document ready function $ ul tabnav a click function hellip return false when each tab is clicked we want to see which tab was clicked on so that we can show the appropriate content so we count the previous number of siblings of the parent the list item and store it in the curchildindex variable $ document ready function $ ul tabnav a click function strongvar curchildindex = $ this parent prevall length 1 strong hellip return false next we want to remove the class of current from the currently selected tab and add the class of current to the tab we just clicked $ document ready function $ ul tabnav a click function var curchildindex = $ this parent prevall length 1 strong$ this parent parent children current removeclass current $ this parent addclass current strong hellip return false the final step is to hide the tab content that is currently showing and to show the tab content that matches the tab that was just clicked on this is where we will make use of the curchildindex variable and the nth child selector $ document ready function $ ul tabnav a click function var curchildindex = $ this parent prevall length 1 $ this parent parent children current removeclass current $ this parent addclass current strong$ this parent parent next tabcontainer children current slideup fast function $ this removeclass current $ this parent children div nth child curchildindex slidedown normal function $ this addclass current strong return false the previous snippet of the code is traversing from the clicked tab this to the current content that has a class of current sliding that up and removing the class of current once that is complete we are selecting the tab content that matches the tab clicked sliding it down and adding the class of current take a look at the sample jquery tabbed interface to see it in action making it work for non javascript users now that works great but what about people who dont have javascript enabled sure its a very small number but we still want to account for those people most other javascript tab scripts use javascript to hide the non active tab content sections or to write in the tabbed navigation but then you get that flash of changing content my idea is to use css to hide the non active tab content which i discussed earlier and pass a parameter into the url to select which tab to show the code below is the new code for the tab navigation ul class= tabnav li php if isset $ get tab echo class= current a href= tab 1 a li li php if isset $ get tab $ get tab == 2 echo class= current a href= tab=2 tab 2 a li li php if isset $ get tab $ get tab == 3 echo class= current a href= tab=3 tab 3 a li li php if isset $ get tab $ get tab == 4 echo class= current a href= tab=4 tab 4 a li li php if isset $ get tab $ get tab == 5 echo class= current a href= tab=5 tab 5 a li ul basically i am checking to see if the variable tab is set in the url and determining the value of it i also use the same logic for the tab content this is the example page with tab 3 displaying so basically if the user does not have javascript it would reload the entire page and display the correct tab conclusion this was just a simple example of jquery and the possibilities are endless instead of being so quick to use a plugin or someones code try to do it yourself you will become a much better programmer because of it even if you arent doing things as efficiently as possible you will learn something new every time ',1),(192,'field',3,' web ',1),(192,'slug',0,' weekly link round up 44 ',1),(192,'title',0,' weekly link round up 44 ',1),(192,'field',2,' another busy week with freelance but hopefully ill be able to finish them up shortly so i can work more on my redesign realign my hope is to finish it before i go to an event apart chicago in october just a few interesting things i found this week developing a better cms this is an interesting article describing the process of creating the cms firerift firerift looks interesting but the website unfortunately doesnt give enough details use the best available ampersand as dan has discussed before you should always use the best possible ampersand he gives a nice collection of great looking ampersands ',1),(193,'field',3,' web ',1),(193,'slug',0,' weekly link round up 43 ',1),(193,'title',0,' weekly link round up 43 ',1),(193,'field',2,' its hard to believe that its already the middle of august this week was a bit crazy managing two freelance projects and getting my company website launched my ceo agreed that if we got the site launched by friday she would send myself and my fellow front end developers to an event apart chicago so yeah thats going to be awesome now here is what i found interesting this week aurora concept video adaptive path created videos for the mozilla labs concept browser series this whole series was really cool but i think that the user interaction is a long time from showing up i also wonder how non technical users would respond to an interface like this why is there no float center i posed this very simple question last week and there was some great discussion that ended up happening create a citrus fruit design from scratch in photoshop and this is why i will never be a graphic designer how do you even do that so amazing the 5 hidden costs of running a cms i think these are definitely costs that are not really considered when deciding whether to power your site by a cms and which cms to use an evolving cultural curiosity we need a fake follow this is an excellent point that michael brings up on twitter if someone chooses to follow you but you do not follow them there is this sense of rejection from the person who decided to follow you but honestly they have no idea what your life is like maybe you are just so busy that you only care to follow your closest friends i think this is something that twitter and other social networking sites should seriously consider ',1),(498,'field',8,' cart ',1),(499,'field',8,' contact us ',1),(194,'slug',0,' why is there no float center ',1),(194,'title',0,' why is there no float center ',1),(194,'field',2,' when they were writing the specifications for css why didnt they allow things to be floated center i was looking through an old site at work this week that was developed long before me and i saw someone tried to do this float center so that got me thinking why would they include the specification to float left and right but not center imagine the posibilities the following are just a couple of simple examples of what could be possible they are not meant to be used in a production environment float an image between two columns in this example i just floated the image to the right and gave it a 100px right margin half the width of the image then i just added an empty div to the right hand column floated it left and gave it a height and width float an image in the middle of one column this one is really hacky i absolutely positioned the image chose a monospaced font and then added non breaking spaces so that the image was no longer covering the text i think being able to float something in the center could really make pages more interesting i would be curious to know if there was any specific explanation for why you cannot float to the center ',1),(194,'field',14,' 1817 ',1),(195,'slug',0,' hiring web designers and developers ',1),(195,'title',0,' hiring web designers and developers ',1),(195,'field',2,' my company matrix group international is currently looking to hire web designers web developers python software engineers a product manager and an executive assistant to the ceo we are located just outside of old town alexandria va we are having an open house on friday from 4 7pm so if you or anyone you know could fill those spots come join us on friday ',1),(195,'field',14,' 1816 ',1),(196,'field',3,' web ',1),(196,'slug',0,' weekly link round up 42 ',1),(196,'title',0,' weekly link round up 42 ',1),(196,'field',2,' i just found out today that if we get our company website launched by wednesday our company is going to send myself and the other front end developers to an event apart chicago so thats pretty awesome just a few links from this week a small study of big blogs further findings after an article last week discussing some of the findings from a survey of the 50 most popular blogs smashing magazine reveals more pattern tap great collection of web design patterns time for a web forward movement i definitely agree with what kenny has to say i feel like there was this huge push for standards a few years ago and it has really started to slow down we should not be satisfied there is still so much more to do ',1),(497,'field',8,' where to buy ',1),(197,'slug',0,' i took the 2008 survey for people who make websites ',1),(197,'title',0,' i took the 2008 survey for people who make websites ',1),(197,'field',2,' its that time of the year again the a list apart 2008 survey is out it only takes a few minutes to fill out and the data compiled at the end is awesome i look forward to seeing the results in the next few weeks ',1),(197,'field',14,' 1814 ',1),(198,'field',3,' web ',1),(198,'slug',0,' weekly link round up 41 ',1),(198,'title',0,' weekly link round up 41 ',1),(198,'field',2,' well another week and weekend flew by im finally starting to work on my redesign realign and i hope that i can get it launched in not too long here is what i found interesting this week any element linking demo eric meyer created a demo of his proposed any element linking this could be an awesome addition to html 5 although who knows how long it will take to actually be implemented modal overlays beyond the dialog box modal overlays definitely have become an integral part of the web these days this is a nice discussion about good and bad uses firebug lite instead of only being able to use firebug in firefox you can use the lite version a bit of javascript to utilize firebug functionality in other browsers it was definitely finicky but its a big upgrade from other debugging tools silverback the much anticipated silverback finally launched im going to have to find the right time to use that 30 day trial this looks so awesome a small design study of big blogs blogs are obviously a huge part of the web smashing magazine takes the time to examine the 50 most popular technorati blogs to investigate design trends and more definitely a good read ',1),(496,'field',8,' moms stories ',1),(199,'slug',0,' flexible and semantic forms with a little jquery ',1),(199,'title',0,' flexible and semantic forms with a little jquery ',1),(199,'field',2,' while they may not be that pretty forms are one of the most important parts of a web site i have already written an article on css forms that was over a year ago and i have developed much better techniques there are other great resources for information about form design and i will take this information into account when i am showing the flexibility of my method of marking up and styling forms the markup after previously using a definition list to mark up my forms i have switched to using an ordered list now i switched for two main reasons the list item of the ordered list provides a containing clearing element that the definition list does not provide semantically it just makes more sense a form is really just a list of form fields to fill out forms are typically meant to be filled out in order hence the ordered list instead of un ordered list i think this could be debated but in the long run either one is more semantic than anything else i have decided to create just a simple un styled form to use as an example here is what the markup of the page is ol class= forms lilabel for= name name labelinput type= text name= name id= name li lilabel for= email email labelinput type= text name= email id= email li lilabel for= city city labelinput type= text name= city id= city li lilabel for= state state labelinput type= text name= state id= state li lilabel for= zip zip labelinput type= text name= zip id= zip li li class= grouping labelsign up for the following label ul liinput type= checkbox name= info1 id= info1 label for= info1 information 1 label li liinput type= checkbox name= info2 id= info2 label for= info2 information 2 label li liinput type= checkbox name= info3 id= info3 label for= info3 information 3 label li ul li lilabel for= message message labeltextarea name= message id= message textarea li li class= buttons button type= submit name= submit id= submit submit button li ol even without any style applied the form is still completely usable styling the forms there are really 3 main styles of laying out forms labels above the form field labels to the side of the form field jagged right labels to the side of the form field jagged left again like i said i am not going to go through the pros and cons of each method i am going to show how easy it is to switch between the methods using my markup labels above the form field this is by far the easiest method here is the css used to style my example form ol forms float left list style none width 100% ol forms li clear both float left margin 0 0 10px width 100% ol forms label cursor pointer display block font weight bold ol forms input ol forms textarea font inherit padding 2px width 300px ol forms textarea height 250px ol forms li grouping margin bottom 0 ol forms li grouping ul list style none ol forms li grouping ul label display inline font weight normal margin 0 0 0 10px ol forms li grouping ul input width auto really nothing too complicated in my opinion i dont like stacking the label over the form field i think it just makes the form too long labels to the side of the form field jagged right i like this layout of forms the best i think it presents the form in a clear way so that you can just scan right through the form fields with just a few changes to the css you can float the labels to the left of the form fields the changes are marked in bold ol forms float left list style none width 100% ol forms li clear both float left margin 0 0 10px width 100% ol forms label cursor pointer display block strongfloat left strong font weight bold strongmargin 0 10px 0 0 width 90px strong ol forms input ol forms textarea font inherit padding 2px width 300px ol forms textarea height 250px strongol forms li grouping label margin 0 width auto strong ol forms li grouping margin bottom 0 ol forms li grouping ul list style none strongmargin left 100px strong ol forms li grouping ul label display inline strongfloat none strong font weight normal margin 0 0 0 10px strongwidth auto strong ol forms li grouping ul input width auto strongol forms li buttons float none margin left 100px width auto strong take a look at the example with the fields on the left depending upon your label length you may need to increase the width of the labels so that it does not span more than one line but that is an easy enough change labels to the side of the form field jagged left now with two changes to the css you can easily switch to having the labels jagged left which puts them closer to the form input the changes needed are highlighted in bold ol forms label cursor pointer display block float left font weight bold margin 0 10px 0 0 strongtext align right strong width 90px ol forms li grouping label margin 0 strongtext align left strong width auto here is the example of the form with the labels jagged left taking it a step further with more css and a little jquery since i like the form layout with labels to the side and jagged right i am going to use this one to customize the display a little and then add in some jquery functionality improving the display when looking at the form it may be confusing to have all form fields be the same width it is helpful to the user to modify the width to suit the data that will be entered for example there is no reason that the zip code city and state fields should be so long so lets add a class to each one to shorten it to the length of the data that will probably be entered here is the modified markup li label for= city city label input type= text name= city id= city class= medium li li label for= state state label input type= text name= state id= state class= small li li label for= zip zip label input type= text name= zip id= zip class= extrasmall li then we just have to add those 3 classes to the css ol forms extrasmall width 50px ol forms small width 100px ol forms medium width 150px here is what the form looks like with that little bit of extra style i also added in some help text a notation for required fields and the associated css so take a look at the code to see that adding a little jquery obviously you have read my article about ajax forms with jquery which discusses how to add ajax functionality to a form in a degradable way so the following code assumes that you are going to be doing server side validation of the form as well since there are required fields in this form i add a class of required to the form and to each parent list item of required input fields first we want our javascript to execute when the form with a class of required is submitted $ document ready function $ form required submit function hellip if there are any error messages still displaying from before we want to hide them also lets disable the submit button so just in case the form cannot be submitted twice i am also creating a variable that i will be using later to determine if there is an error or not $ document ready function $ form required submit function strong$ form required span error remove $ form required li buttons button attr disabled disabled var haserror = false strong now we want to check each form field that has a parent list item with a class of required $ document ready function $ form required submit function $ form required span error remove $ form required li buttons button attr disabled disabled var haserror = false strongjquery each $ form required ol forms li required function hellip strong there are a lot of other jquery plugins that validate forms but most of the time it will just alert the user that the field is required instead of doing that i am going to grab the text from the label element and display that in the error message $ document ready function $ form required submit function $ form required span error remove $ form required li buttons button attr disabled disabled var haserror = false jquery each $ form required ol forms li required function strongvar labeltext = $ this children label text labeltext = labeltext replace strong now we have two different structures of form fields for each list item a single form field and a grouping of checkboxes or radio buttons we have to do things a little bit different for each one $ document ready function $ form required submit function $ form required span error remove $ form required li buttons button attr disabled disabled var haserror = false jquery each $ form required ol forms li required function var labeltext = $ this children label text labeltext = labeltext replace strongif $ this hasclass grouping hellip else hellip strong first lets focus on the case when there is a grouping we want to loop through each input and see if it is checked if it is we just increment a counter then if the counter equals zero meaning we have no fields checked we display an error message $ document ready function $ form required submit function $ form required span error remove $ form required li buttons button attr disabled disabled var haserror = false jquery each $ form required ol forms li required function var labeltext = $ this children label text labeltext = labeltext replace if $ this hasclass grouping strongvar numselected = 0 jquery each $ this find input function if $ this attr checked == true numselected if numselected == 0 $ this append span class= error you must select from labeltext span haserror = true strong else hellip that seems easy enough and its even easier for the single input fields we just check to see if the value is empty and if it is display the error message $ document ready function $ form required submit function $ form required span error remove $ form required li buttons button attr disabled disabled var haserror = false jquery each $ form required ol forms li required function var labeltext = $ this children label text labeltext = labeltext replace if $ this hasclass grouping var numselected = 0 jquery each $ this find input function if $ this attr checked == true numselected if numselected == 0 $ this append span class= error you must select from labeltext span haserror = true else strongif jquery trim $ this children input textarea val == $ this append span class= error please enter your labeltext span haserror = true strong to finish up we just check to see if the haserror variable is true since this is just a demo form i just add an alert if the form would submit successfully $ document ready function $ form required submit function $ form required span error remove $ form required li buttons button attr disabled disabled var haserror = false jquery each $ form required ol forms li required function var labeltext = $ this children label text labeltext = labeltext replace if $ this hasclass grouping var numselected = 0 jquery each $ this find input function if $ this attr checked == true numselected if numselected == 0 $ this append span class= error you must select from labeltext span haserror = true else if jquery trim $ this children input textarea val == $ this append span class= error please enter your labeltext span haserror = true strongif haserror $ form required li buttons button removeattr disabled return false else alert the form would submit now $ form required li buttons button removeattr disabled remove this line if using for real return false change this to true when using it for real strong go ahead and take a look at the demo form to see it in action conclusion with a well structured form you can easily customize it to your liking with just a little bit of css then by using some custom jquery code you can easily customize how you would like to have the form validation appear with a little more work you could easily add in validation for things like form elements expecting an email address zip codes phone numbers etc i will have to save that for another post since this one is quite long what do you all think how do you structure your forms which layout of forms do you prefer and why ',1),(199,'field',14,' 1812 ',1),(200,'field',3,' web ',1),(200,'slug',0,' weekly link round up 40 ',1),(200,'title',0,' weekly link round up 40 ',1),(200,'field',2,' well i finally got a site launched that had been stressing me out now i only have my company website to stress me out for the next two weeks here is what i found interesting this week smart css aint always sexy css this was a pretty interesting read i think one interesting point that martin brought up was that most of the time editing html is quicker than editing css a lot of times it may just be easier to add a new class id and add some new css instead of editing existing code western spaghetti this video is just awesome how long did this take to make ie png fix interesting this ie png script gives support for background position and repeat firebuggin nice john resig is going to be spending half of his time at mozilla working on firebug after seeing how amazing jquery is i cant wait to see what he does for firebug ',1),(495,'field',8,' product ',1),(201,'field',3,' web ',1),(201,'slug',0,' weekly link round up 39 ',1),(201,'title',0,' weekly link round up 39 ',1),(201,'field',2,' wow i must say it is hard writing blog posts doing freelance work and being crazy busy at my day job ive got one post in the works and hopefully i will be able to finish it up next week here is what i found interesting last week and the beginning of this week adding form validation to wordpress comments using jquery i had actually been considering writing a post like this with a just a few short lines of javascript you give users a much better experience when trying to submit a comment note see my comment form as another example your us tax dollars at work so the computing community consortium launched their website the other day at it was a blatant rip off of a list apart they have since changed it but you can check out the screenshots here it wasnt even like they just designed it to look similar they straight up stole the mark up and css i will say that the ccc handled it correctly but how did they let it happen in the first place wordpress 2 6 the wordpress team was able to launch version 2 6 a month before it was supposed to not any huge differences but there are some nice small changes i would recommend taking a few minutes to watch the video i love the redesigned plugins page and the post revisions a list apart issue 263 only one real article in this issue walking the line when you work from home but it is a great article describing how to succeed while working at home ',1),(493,'field',8,' homepage ',1),(494,'field',8,' breastfeeding ',1),(202,'field',3,' web ',1),(202,'slug',0,' weekly link round up 38 ',1),(202,'title',0,' weekly link round up 38 ',1),(202,'field',2,' only found a couple of interesting things to read this past week must have been the fact that i am working on 2 sites that need to launch next week a list apart issue 262 i have been exposed to subversion a lot in the past few months so it was interesting to read collaborate and connect with subversion there are definitely pros as well as cons to using it i kind of skimmed getting out of binding situations in javascript but it seemed interesting should links open in new windows no way this article provides some good information from the experts about why links should not open in a new window ',1),(203,'slug',0,' when planning your site content become the user ',1),(203,'title',0,' when planning your site content become the user ',1),(203,'field',2,' on friday i needed to get a small coffee table for my living room so i decided to head to ikea i love ikea not only because their website is full of web standards goodness but also because they make some really nice and affordable furniture since friday was the 4th of july i wasnt sure what the hours would be i logged onto their website found the store closest to me and was getting ready to call and find out the hours to my delight i not only found the normal store hours but also found the holiday store hours wow that is quite a rarity it is rare to even find the normal store hours on their websites but holiday hours too quite impressive what the folks at ikea have done is the simplest and probably most important method to having a successful website put yourself in the users shoes im sure at some point during their web site strategy development they thought if we provide our store hours on the web site then we will get less phone calls at the store about the hours thus allowing the employees to focus more on the customers in the store so what is the lesson here with every decision you make about your website think about the goal of the website and make sure your decision will help to achieve that goal ',1),(203,'field',14,' 1808 ',1),(204,'field',3,' web ',1),(204,'slug',0,' weekly link round up 37 ',1),(204,'title',0,' weekly link round up 37 ',1),(204,'field',2,' so i think i am going to stop doing weekly link round ups once i launch my redesign realign i think i want to have more of like asides where i will just post an interesting link with a little blurb much more frequently but the redesign is still a little ways off so here is what i found interesting this past week get out of a creative slump even though i am not really a designer i feel like i am definitely in a creative slump when trying to create this new design some of these tips are definitely useful for stirring up that creativity learning when to say no probably the single most important part of freelancing the employable web designer andy discusses how web design students should rightly be worried about whether their education will prepare them for the real world sales guy vs web dude absolutely hilarious video with a guy working tech support hack together a user contributed link feed with wordpress comments nice tutorial showing the flexibility of wordpress while creating a user contributed feed ',1),(205,'slug',0,' wordpress tips and ideas learned from implementation ',1),(205,'title',0,' wordpress tips and ideas learned from implementation ',1),(205,'field',2,' recently i had to slice and implement a blog for the ceo of my company i decided to go with wordpress because that is what i have become enamored with recently when i created a job board using it i used some features of wordpress that i had never used before so i figured i would talk about them so that others could learn how to use them as well multiple loops the blog contained a main blog section along with a favorites section in the sidebar that would be used to list anything favorite websites books etc i didnt think that using just the basic wordpress blogroll or a third party bookmarking site would give the ceo enough flexibility to mark whatever she wanted as a favorite so i decided to just create a separate category for favorites in the footer of the site there is also information about the last 6 projects that we had worked on i definitely did not want those to be static since we complete projects almost daily i wanted non technical people to be able to update them so i decided to create a separate category for those so in total i had 3 categories blog favorites and projects i figured i would just end up having the main loop in the content area a loop in the sidebar and a loop in the footer i had never really done a site with multiple loops but after reading the documentation it didnt look too complicated so the key to having multiple loops is to use the query posts template tag the main blog loop the blog category has an id of 1 so all you have to do is call the query posts template tag before you loop through the entries php query posts cat=1 if have posts while have posts the post hellip php endwhile endif then the favorites and project categories are basically the same you just plug in the correct category id into the query posts template tag paging with multiple loops so since we are using the query posts template tag it messes up the paging of the main loop so in the main blog loop we need to use the ternary operator to add in the paging argument php $paged = get query var paged get query var paged 1 query posts cat=1paged=$paged so those two lines would replace the previous call to the query posts template tag that we used for the main loop read more links when i had first implemented the blog we were using the read more links whenever they were added into the post for all posts later in the implementation process i was told that the most recent article should always show the full post i wasnt sure how the heck i could do that but after some googling i figured it out basically what we need to do is just create a simple counter to see if we are on the first post if we are we set a global $more variable equal to 1 so i define the $count variable and set it equal to 1 then i have this at the beginning of the main loop php if is home global $more if $count == 1 $more = 1 else $more = 0 $count wait a minute so i was all ready to publish this article when i found out today that the first article on my ceos blog was still showing the read more link from what i discovered it looked like both the is home and is front page conditional tags were not registering as true when on the homepage for the life of me i could not figure out why this was happening so this was a little bit of a hacky solution but it was all that i could think of quickly i had this code before the loop php if $ server request uri == $ishomepage = true so essentially i was setting up my own flag to see if it was the homepage what that is doing is checking the url to see if it is the root of the site or not then i modifed the if statement in my other code to be php if isset $ishomepage $ishomepage = true global $more if $count == 1 $more = 1 else $more = 0 $count im not sure if there is a better solution but i think the reason the is home and is front page conditions dont work is because of calling the query posts template tag because they worked before the call custom fields i had used custom fields before and they are amazingly powerful in being able to extend wordpress functionality for my ceos blog i used 4 custom fields favoritethumbnail favoriteurl projectthumbnail projecturl favorites custom fields the favorites are supposed to be little blurbs about something that my ceo likes whether it is a book website etc so the idea is that it is not supposed to be a full blog post just a little blurb so instead of linking to the wordpress post we link to the favoriteurl custom field here is how the favoriteurl custom field is being used this is called within the loop php $favoriteurl = get post meta $post id favoriteurl true if $favoriteurl = a href= =$favoriteurl class= heading strong php the title strong a php else strong class= heading php the title a php so basically what i am doing there is first calling in the favoriteurl custom field and assigning it to the $favoriteurl variable then i check to make sure it is not empty meaning the custom field was not entered if it is entered i output the link to the url if not i still do not link to the wordpress post i just display the title in bold the favoritethumbnail is pretty self explanatory and is called in the same way as the favoriteurl the reason i wanted to use a custom field for the thumbnail instead of just adding the image to the post content is because the design called for the image to be floated next to the title and because i wanted to link the image to the favoriteurl this way when my ceo is adding a favorite she does not have to worry about floating the image and linking it to the favoriteurl projects custom fields both of the projects custom fields are used similarly to the favorities custom fields the projectthumbnail custom field is just used to show the most recent 6 projects in the footer nothing complicated just showing and linking the photo to the wordpress post until our new company website gets launched we are linking to the short wordpress post which gives a little description about the project the projecturl outputs the url to the project at the end of the post once our company website is finished i will just modify the custom field to link directly from the footer to its respective page in our portfolio conclusion i really enjoyed doing this implementation while it was just a simple blog it is always great to learn a couple of new tricks techniques any other wordpress tips that you have found useful ',1),(205,'field',14,' 1806 ',1),(206,'field',3,' web ',1),(206,'slug',0,' weekly link round up 36 ',1),(206,'title',0,' weekly link round up 36 ',1),(206,'field',2,' i actually got started on my redesign realign this weekend i think i want to have a larger focus on my portfolio and not just my blog but god is it hard to redesign when you arent a designer hopefully it will all turn out well in the end here is what i found interesting this week a new day as much as i love jason santa marias last design i think his new direction design is really interesting spacing is everything khoi vinh shows what gmail would look like with a little bit of spacing i actually think it might look better but he caught some backlash from the commentors saying that there would be less messages above the fold but i think that you rarely look below the fold when looking for a message and even if you did you would be more likely to use the search instead a list apart issue 261 i was pretty excited to finally see a css article in a list apart faux absolute positioning it had been quite a while i was actually really disappointed with it though it seems like extraneous markup and i dont really see the advantages the second article in the issue sketching in code the magic of prototyping brings up a much more important issue prototyping is probably the most important part of the process of developing web applications the education of geeks and freaks i think the current state of the education of web development is awful i know how hard it must be to stay on top of new technologies and be a teacher but still it needs to improve its great to hear that some schools are starting to take the right step and teaching new technologies from psd to html building a set of website designs step by step i kind of skimmed this article because it was really just a discussion about what i do when i slice a site from what i saw it seemed like a pretty decent description ',1),(207,'slug',0,' jquery table striping bug ',1),(207,'title',0,' jquery table striping bug ',1),(207,'field',2,' i have been using jquery to do table striping and up until today i have not had any problems with it i had just been using the even and odd selectors to add classes to each table row here is the code that i have been using $ document ready function $ table striped tbody tr odd addclass odd $ table striped tbody tr even addclass even seems easy enough then i just styled the odd table rows like so table striped tr odd td background color f0f0f4 one thing to note is that the even and odd selectors are zero indexed so the first table row will have a class of even and not odd here is an example showing this simple striping multiple striped instances the situation that i had today had two different tables that were being striped so based on the code you would think that there wouldnt be a problem here is the example with two striped tables on the same page weird so it looks like the first table row in the second striped table has a class of even instead of odd i thought that the client may not like that because the two tables were not consistent so i tried to think of another way to do the striping the nth child so based on the documentation it looks like the nth child selector would be the solution i just modified my javascript like so $ document ready function $ table striped tbody tr nth child odd addclass odd $ table striped tbody tr nth child even addclass even as a note the nth child selector is not zero indexed so the first table row will have a class of odd instead of even here is the fixed example conclusion from what i can tell this does not appear to be a browser problem but a bug in jquery i have checked this in firefox safari ie6 and ie7 ',1),(207,'field',14,' 1804 ',1),(208,'field',3,' web ',1),(208,'slug',0,' weekly link round up 35 ',1),(208,'title',0,' weekly link round up 35 ',1),(208,'field',2,' it is pretty sad how much my life depends on the internet i got to work early today and left early with plans on writing a couple of blog posts and working on my redesigned logo but of course my power went out so right now i am sitting borders and i caved and bought an hour of internet time oh well here are a few links i found interesting this week the accessibility checklist i vowed id never write this is an awesome checklist with some guidelines to keep in mind when considering the accessibility of a site investing strategies for iphone customers wow thats a pretty powerful graph really shows how much the value of technology drops the instant you walk out of the store as awesome as the iphone looks i would never buy it on the att network the only way i would buy it were if it were available on verizon design critiquing veerle talks about a very important part of the design process critiquing i sometimes find it hard to say why i dont like certain things i guess that is the downside of not having any professional design training you have to treat your employees like customers this is a great quote when employees are trusted and treated like adults they appreciate it just as much the result loyal employees who want to stick around forever i am hoping this week that i can finish up an article discussing some cool new things i found out about wordpress while implementing my ceos blog so be on the lookout for that ',1),(209,'field',3,' web ',1),(209,'slug',0,' weekly link round up 34 ',1),(209,'title',0,' weekly link round up 34 ',1),(209,'field',2,' it has been crazy times at work recently i am in the process of slicing three sites at the same time in all the madness this is what i found interesting last week the missing link i love that we have eric meyer fighting on our side eric discusses how the href attribute should be allowed on many elements instead of a few he even goes on to show examples and discuss the pros and cons a list apart issue 260 another couple of solid articles from a list apart writing an interface style guide and saving the spark developing creative ideas design isnt about tools this was kind of the end of a great discussion from 37 signals and jeff croft i think i agree with most of jeffs points i think it definitely depends upon the product that you are trying to make and i think 37 signals has nailed down their simplistic style so photoshop is not necessary ',1),(306,'field',15,' html css javascript ',1),(504,'field',8,' team ',1),(210,'slug',0,' improving a flickr plugin with jquery ',1),(210,'title',0,' improving a flickr plugin with jquery ',1),(210,'field',2,' for a while i have been using the flickrrss wordpress plugin to show my recent flickr photos in the footer of my site since i have become more comfortable using jquery i thought i would use it to make the plugin better i created a demo page to see what the markup generated from the plugin normally is the markup is just an unordered list and i have done some basic css so that it looks halfway decent each photo just links to the original flickr page with the photo on it i kind of didnt like that because if someone wanted to see the larger version they would have to leave my site just to see it digging into the flickr photos if we take a look at the square image of me hugging my new tv we can see that it is 75x75 now if we take a closer look at the filename 2543094667 2ddfec7c73 s jpg we see that there is a s at the end lets take a look at the other photo sizes there are thumbnail t jpg small m jpg medium jpg large o jpg the medium sized photo looks like a nice size to display what if instead of linking the small square photos to their respective flickr page we open the medium sized photo in a lightbox lightbox the lightbox that i use is a hacked up version of the facebox script i modified it a little to use table less markup and for the entire page to grey out the lightbox is launched by setting the rel attribute equal to lightbox another modification i would like to make is to enable the lightbox to work in sets kind of like the lightbox 2 script but that is for another day the reason i like the facebox script is because you can also have inline content and content loaded via an ajax call tweaking the flickr markup since i do not want to modify the flickrrss plugin to change the markup i will just use jquery to change the markup on body load so there are two things that i want to do add rel= lightbox to each link containing the flickr photo change the href to link to the medium image instead of linking to the flickr page the code first lets add the rel= lightbox attribute to each of the links that are descendants of ul flickr on body load $ document ready function $ ul flickr a each function $ this attr rel lightbox next lets change the link to be the medium photo we will do this by copying the source of the image and then replacing s jpg with jpg $ document ready function $ ul flickr a each function $ this attr rel lightbox var imgsrc = $ this children attr src $ this attr href imgsrc replace s jpg jpg next we just initiate the lightbox script by targeting links that have a rel attribute of lightbox $ document ready function $ ul flickr a each function $ this attr rel lightbox var imgsrc = $ this children attr src $ this attr href imgsrc replace s jpg jpg $ a rel =lightbox facebox i have modified the first demo page to show this new functionality although you can just look at my footer too its pretty cool how just a few lines of jquery can drastically improve the user experience ',1),(210,'field',14,' 1801 ',1),(211,'field',3,' web ',1),(211,'slug',0,' weekly link round up 33 ',1),(211,'title',0,' weekly link round up 33 ',1),(211,'field',2,' yeah so i had an awesome birthday weekend my girlfriend bought me a 46 inch hdtv for my birthday also sunday was my two year anniversary at matrix crazy how time flies here is the stuff that i found interesting this past week getting design approval the single mockup theory i think that by providing only one mockup for clients to react to it gives them the opportunity to get a feeling for the site and what goal it is trying to accomplish when you show them multiple mockups i think that the client really starts to compare the designs more without thinking about the goal of the mockup pre bid discussions i think knowing how and when to turn down projects is a great skill to have unraveling the secrets of wordpress comments php file nothing new or groundbreaking just a solid breakdown of the wordpress comments php file applying divine proportion to your web designs i love how thousands year old principles are still present in design today luke dean kamens wonderful prosthetic robot arm ok after just watching idiocracy it got my worried about how our world really could be getting dumber after watching this video it at least gives me hope that we arent this is truly amazing good products dona t make up for bad service but they help i love when normal everyday experiences can be learned from on how to improve your web product service ',1),(306,'field',16,'',1),(212,'slug',0,' i picked a macbook pro ',1),(212,'title',0,' i picked a macbook pro ',1),(212,'field',2,' i had been receiving a decent amount of traffic to the article macbook vs macbook pro help me decide so i thought i would give a quick update so people would know which i chose i did finally decide to go with the macbook pro i think the screen size was one of the biggest factors for me 15 inch vs 13 inch doesnt seem like that much but when looking at them next to each other it is a huge difference the macbook also felt much cheaper than the pro i also think the backlit keyboard while maybe not something i use all the time although i am right now is a really nice feature i also decided to go with the matte screen when looking at the glossy vs matte next to each other the colors on the glossy definitely pop more but from what i heard if you are going to be doing any kind of design work the matte gives truer colors i am absolutely 100% happy with my purchase and would recommend the macbook pro to anyone who is looking for an awesome laptop i love it i am also in love with the two finger scrolling sometimes when i am on another laptop i try and scroll with two fingers and i kind of want to cry when it does nothing ',1),(212,'field',14,' 1799 ',1),(213,'field',3,' web ',1),(213,'slug',0,' weekly link round up 32 ',1),(213,'title',0,' weekly link round up 32 ',1),(213,'field',2,' gotta love a nice long weekend and the short week that follows here are the interesting things that i read this week netflix roku free is such a beautiful word nice so netflix is going to offer a $100 box that will stream movies free for netflix subscribers handoff dave shea describes his process of handing off his designs a list apart issue 259 this issue featured two really good articles the cure for content delay syndrome and why did you hire me both articles are really well thought out and address some lingering issues in the web development world design decisions vs audience considerations good article discussing the process of making audience centered design decisions javascript super mario kart people are doing some really awesome javascript stuff recently the lightbox clones matrix informative table showing different lightbox scripts shows which lightboxes support which type of elements which library they use and other information about the script ',1),(515,'field',8,' how to help ',1),(214,'field',3,' tutorial ',1),(214,'title',0,' input vs button ',1),(214,'slug',0,' input vs button ',1),(214,'field',2,' my latest redesign project at work was for group logic another company did the design and created static html templates my role was to create a single header and footer to make maintaining the site easier and to wrap the store and other dynamic applications in the new design the company who designed it used images for the form buttons and i found some interesting things while implementing them a disclaimer i think before you design form buttons to be images you should seriously consider just styling the buttons with css just think about all of the images you will have to maintain is the value of the image button style really that great that you will deal with all of that hassle in my opinion its not but whatever to each his own you like that nate ok enough with the disclaimer now on to the good stuff some options ok so i decided that there were 3 options for implementing these buttons use input type= submit and use an image replacement technique that i didnt think would work in safari use input type= image and have the image source as an attribute use button type= submit button and insert the image within the button element my decision with ease of implementation in mind since the time line was short i decided to go with option 2 input type= image everything went fine until we decided to test in ie 6 and 7 apparently the value from the button does not get passed onto the server after some googling around i found out that this is a well known problem and the only way to get this to work is by using javascript whenever i code something with javascript i want to make sure that it works without javascript so that solution would not work the next option next i went with option 3 button type= submit button i really did not know much about the button element until i read rediscovering the button element a year ago again that option worked fine in everything except ie6 this time in ie7 it passed in the entire source of the image as the value but we could find a way to make that work apparently if you have multiple button elements with the same name attributes the value that comes out from the server in ie6 is the value from the last element on the form ok maybe that was confusing the example page might clarify some the first example is just input type= submit the second example is input type= image finally the third example is button type= submit button be sure to try that in ie6 and ie7 to see the problems i explained a third try ok this sucks obviously i went with option 1 this time input type= submit we know from the first example on the previous page that the value is at least passed through to the server properly in all browsers now the fun part is just trying to style the buttons in all browsers stying the input element lets assign a class to all of the buttons we are going to style and just add some basic styles to the button input buttons background none no repeat top left border none cursor pointer display block height 25px overflow hidden padding 0 margin 0 2px 0 0 text indent 9999px width auto most of that should be pretty self explanatory so lets now add in the background images for the 3 buttons and give them a width input updatecart background image url update cart gif width 107px input continueshopping background image url continue shopping gif width 146px input proceedcheckout background image url proceed to checkout gif width 156px the images are actually css sprites so lets add in the hover effect input buttons hover background position 0 25px sweet lets take a look at the page nice it even looks good in safari of course its broken in ie 6 and ie 7 check out the weird buttons in ie fixing for ie ok so i had no idea how to even attack this problem so i started playing around and finally came up with this input buttons font size 0 line height 25px so i just serve those properties to ie6 and ie7 beautiful it works now one last thing so we were able to get these buttons working in all browsers there is just one minor thing that bugged me the hover effect does not work on the buttons in ie6 how about we use jquery to fix that for ie6 $ document ready function $ input buttons hover function $ this css background position 0 25px function $ this css background position 0 0 nice it works in ie6 so yeah that was really long but form buttons are always a fun topic to get working across all browsers anyone have anything they would do differently ',1),(512,'field',8,' places index ',1),(514,'field',8,' travel index ',1),(215,'field',3,' web ',1),(215,'slug',0,' weekly link round up 31 ',1),(215,'title',0,' weekly link round up 31 ',1),(215,'field',2,' after a busy week at work its great to relax during the weekend even though i was getting my sisters website finished i always enjoy slicing a site here are a few things i found interesting this week initial impressions of silverback there has already been a lot written about the silverback website but no one has really been clear on what the application actually is this is a nice review from one of the beta testers and it looks amazing basically you can create a user testing environment with a mac and thats all you need cubescape ok this is some seriously awesome javascript you can create your own isometric pixel picture im sure this took quite a time investment to create this designing is not a profession but an attitude i love this way of thinking being a front end developer is not just a job for me its basically my life its funny how ill just be out somewhere and ill think about how something would be marked up if you have read transcending css you may know what i mean build a wordburner email newsletter manager using wordpress and feedburner interesting tutorial explaining how to use a normal wordpress category to create an email newsletter a letter to my son on starting out in life great letter with some life hints from leo to his son i have really enjoyed reading his site recently ',1),(216,'field',3,' web ',1),(216,'slug',0,' weekly link round up 30 ',1),(216,'title',0,' weekly link round up 30 ',1),(216,'field',2,' wow i was actually able to get some sleep this weekend too bad i didnt have any time to do freelance work or work on the redesign for my site oh well at least there was a lot of interesting things that i read this week image replacement google good to know google wont penalize you for using image replacement properly this is something we all assumed but were never really clear on the web developers seo cheat sheet nothing that we dont know already but a nice round up of basic seo information for beginners does flash irk me i agree with veerle in that it is important to evaluate the goals of a project while most flash on the web does nothing for me there are things like sifr that are awesome a list apart issue 258 another couple of interesting articles from a list apart community from little things big things grow and zebra striping does it really help i thought the zebra striping article was especially interesting web natives need to lead web operations i agree it is very important for web people to be making decisions about the web while one can easily become a web person it is not something that happens instantly the web is a complex place how little do users read while not surprising jakob nielsen says that users typically dont read very much on the web this is why its important to use frequent headings and to break up the text into smaller chunks conversely i also thought that an article by andy rutledge volume doesnt matter presented an interesting argument to the other side if a page is designed well and the topic is interesting to the user i think they will be very likely to do more than scan the text ',1),(217,'slug',0,' set a body id using php ',1),(217,'title',0,' set a body id using php ',1),(217,'field',2,' one of the first things i do when i am creating the markup for a new site is to set a body id you may wonder what i mean when i say set a body id what i mean is to dynamically check the url to figure out which section you are in this tutorial will show how to do this dynamically using php and also how to integrate it into wordpress why should i set a body id there are plenty of reasons why you should here are a few maybe your design has different colors depending upon which section you are in instead of having to touch the markup you can just modify the css depending upon the id on the body you can control the current states for your navigation maybe the markup on your homepage is a little different than subpages so instead of creating a different template just stick in an if statement setting up the code so typically you setup your navigation to match your directory structure ex top level navigation is about and there is a folder on the root called about so the easiest thing to do is just check the url and determine which section you are in this is the code that sets the body id on my site php function setbodyid $path = $ server request uri if isset $bodyid if eregi about $path == 1 $bodyid = about else if eregi blog $path == 1 $bodyid = blog else if eregi contact $path == 1 $bodyid = contact else if eregi work $path == 1 $bodyid = work else if eregi play $path == 1 $bodyid = play else if $path == $bodyid = home else $bodyid = general return $bodyid sure you could do this dynamically and pull in the top level folder from the url but i have found there are too many situations that arise where you want multiple sections to have the same body id or you want to set other variables section by section so i stick with this method and it has been successful my example my example is going to be a little different because it is in a subsection of my site so here is the code i am using to control setting the body id in the example php function examplesetbodyid $path = $ server request uri if isset $bodyid if eregi play set a body id about $path == 1 $bodyid = about else if eregi play set a body id blog $path == 1 $bodyid = blog else if eregi play set a body id contact $path == 1 $bodyid = contact else if eregi play set a body id work $path == 1 $bodyid = work else if eregi play set a body id play $path == 1 $bodyid = play else if $path == play set a body id $bodyid = home else $bodyid = general return $bodyid $bodyid = examplesetbodyid so in the $bodyid variable you have the value of the body id so just print the variable on the body tag body id= =$bodyid some practical uses as i discussed at the beginning of the post there are a lot of benefits to having a body id set on every page this is the demo section that i am discussing below different colors per section if you click through the navigation in the example you can see the colors are different for each section this can be easily accomplished without changing any markup through the power of descendant selectors here is the part of the css that is controlling the color of the borders div content border 1px solid 000 ul nav border top 1px solid 000 body home div content body home ul nav border color ff6600 body about div content body about ul nav border color 429c19 body blog div content body blog ul nav border color 54d0ed body work div content body work ul nav border color a81919 body play div content body play ul nav border color 400152 body contact div content body contact ul nav border color f8dc0c here is the part that is changing the color of the h1 body home h1 color ff6600 body about h1 color 429c19 body blog h1 color 54d0ed body work h1 color a81919 body play h1 color 400152 body contact h1 color f8dc0c pre code pobviously this is not the most beautiful example but hopefully the idea makes sense p h4current state on navigation h4 pthere are different ways to set the current state on the navigation but by assigning an id to each navigation element you can use descendant selectors again here is the markup p code ul id= nav li id= homenav a href= play set a body id home a li li id= aboutnav a href= play set a body id about about a li li id= blognav a href= play set a body id blog blog a li li id= worknav a href= play set a body id work work a li li id= playnav a href= play set a body id play play a li li id= contactnav a href= play set a body id contact contact a li ul then we use the following css to change the background color and text color when we are in that section body home ul nav li homenav a background ff6600 body about ul nav li aboutnav a background 429c19 body blog ul nav li blognav a background 54d0ed body work ul nav li worknav a background a81919 body play ul nav li playnav a background 400152 body contact ul nav li contactnav a background f8dc0c body home ul nav li homenav a body about ul nav li aboutnav a body blog ul nav li blognav a body contact ul nav li contactnav a color 000 body work ul nav li worknav a body play ul nav li playnav a color fff slightly different homepage markup typically the markup for homepages are slightly different but if you are using one header and footer template for the entire site you probably dont want to create another template just for the homepage so since we have the body id that tells us when we are on the homepage we can just write a simple if statement php if $bodyid == home hellip put your homepage specific elements herehellip php make it work with wordpress so just take the setbodyid function that we defined earlier and add it to your wordpress theme functions functions php after you have added the function we want to add actions to wp head and wp footer for some reason there isnt a wordpress hook reference for wp footer but it is essentially the same as wp head just in the footer here is how we add our function to those hooks add action wp head setbodyid add action wp footer setbodyid then in your header just call the wp head hook and call our function php wp head $bodyid = setbodyid there you have it you have the body id defined in the $bodyid variable and you can do with it what you want other thoughts i think by setting an id or class on such a high level element gives you a lot of control over its descendants another interesting idea that i heard was to use jquery to determine the browser and version that the user is using then add a class on the body that way you could differ your css depending on which class is on the body that idea would eliminate the need for conditional comments at least for users with javascript enabled so hopefully this tutorial shows you an easy way to make some site wide tasks simpler and i am interested to see if other people have ideas for what to do with body ids ',1),(217,'field',14,' 1794 ',1),(218,'field',3,' web ',1),(218,'slug',0,' weekly link round up 29 ',1),(218,'title',0,' weekly link round up 29 ',1),(218,'field',2,' got great news at work this week a redesigned site that was supposed to launch on the 6th is now getting pushed back to the 13th maybe i will have time in the coming week to take a few minutes to not feel stressed out and rushed so in my limited free time this week here are some things that i found interesting create a sleek high end web design from scratch this was a great article going step by step designing a website i am really finding these design articles interesting since i am in the process of working on the next redesign for my site there was also a partnering article build a sleek portfolio site from scratch that discussing the slicing of the site nothing ground breaking but a nice step by step guide for a beginner the vanishing personal site this is an interesting article discussing something that i have recently begun to see as well some peoples personal sites just have links to their accounts on the numerous social networking sites the article even spurred an article from six apart hell no personal sites arent dead i dont believe that personal sites are dead but i agree with zeldmans comment that they are vanishing starting with css and bug fixing tips this is a great resource for people just getting into web development veerle provides a bunch of links recommended books and strategies for fixing css bugs definitely will become a great starting point for a lot of people ',1),(510,'field',8,' species index ',1),(219,'field',3,' web ',1),(219,'slug',0,' weekly link round up 28 ',1),(219,'title',0,' weekly link round up 28 ',1),(219,'field',2,' man am i happy its the weekend have been working on a project at work that has a real short deadline so ive been busy im looking forward to sunday because im running a 10 mile race and going to the wizards playoff game there were a lot of interesting things that i found this week a list apart issue 257 ive heard a lot about ruby on rails but i never really looked too much into it after reading creating more using less effort with ruby on rails and getting started with ruby on rails it really makes me want to learn more about it obviously i dont think i will become a hardcore programmer but i would like be able to work with it in the future 5 principles and ideas of setting type on the web nice set of guidelines and resources for working with type on the web but who owns javascript this is definitely an issue at my company is it front end developers or back end developers who should be doing the javascript personally i think that front end developers should handle all presentational javascript and back end developers should handle any javascript that is interacting with any data although that line i think is somewhat flexible as i have shown how simple it is to create an ajax form criticism myths and childishness i love how andy doesnt hold back he just says it how it is this is definitely something im starting to understand more and more as i get more experience five more principles of effective web design some nice tips and resources here these articles are really interesting to me right now as i am working on the next design for my site css gradients transforms animations and masks the latest version of webkit has added some pretty cool css properties if only all browser makers would continue to advance their browser as fast as webkit does it would be a much better world on the web working within limitations to achieve great designs some nice minimalist strategies for achieving great designs ',1),(220,'field',3,' web ',1),(220,'slug',0,' weekly link round up 27 ',1),(220,'title',0,' weekly link round up 27 ',1),(220,'field',2,' busy week both freelance wise and work wise the good news is that the nba playoffs are starting so lets all cheer for the wizards this is what i found interesting this week securityfocus sql injection bogus so apparently security focus published a false report about a security hole in wordpress its good to know how much wordpress stays on top of these security issues as they become more and more prevalent as matt recommends one of the most important things to do is to stay up to date with the wordpress updates no css reset this sparked an interesting discussing over on eric meyers blog personally i do not use a css reset i do zero out the margin and padding on all block level elements but not by using the universal selector in the end i think eric makes a great point so its no surprise that we as a community keep building and sharing solutions to problems we encounter discussions about the merits of those solutions in various situations are also no surprise indeed theyre exactly the opposite the surest and to me most hopeful sign that web design development continues to mature as a profession a discipline and a craft its evidence that we continue to challenge ourselves and each other to advance our skills to keep learning better and better how better to do what we love so much i wouldnt have it any other way web form design modern solutions and creative ideas nice collection of interesting forms it is always nice to see people getting really creative with them i especially like the one on edward pistachios site although it is not very usable passionless pre professionals i think this is a huge issue with our society everyones mentality is to do what they can to get a job that will make them a lot of money instead of what will make them happy thank god that i absolutely love working with the web calculating hours the client factors a great article giving some guidelines on how to price a project i really think that one good point that andy makes is that sometimes there are clients that you should just not accept projects from the hard part is evaluating that early on ',1),(221,'field',3,' news ',1),(221,'slug',0,' creepy critters css off ',1),(221,'title',0,' creepy critters css off ',1),(221,'field',2,' i meant to post this a little while ago but i participated in a css off about 2 weeks ago the idea is you get a psd file and you have 24 hours to slice it this was my entry looking back on it i think there were some things i would have done differently but i am pretty happy with my submission im interested to see who wins i look forward to the next one and encourage others to participate even if you dont win its good practice ',1),(222,'slug',0,' handling wordpress trackbacks with jquery ',1),(222,'title',0,' handling wordpress trackbacks with jquery ',1),(222,'field',2,' so after having a ton of trackbacks in a recent article the 6 most important css techniques you need to know i thought that it was kind of breaking up the flow of the comments i didnt necessarily want to completely remove them because i thought that some people might be interested in them these are the steps that i want to take assign a class to all trackbacks hide them all with css add a jquery visibility toggle 1 assign a class to all trackbacks in your comments php theme file find a line that looks like this li id= comment php comment id and replace it with this li class= php if get comment type = comment echo trackback id= comment php comment id explanation the get comment type function returns either comment trackback or pingback since i want to hide everything except comments i filter out anything that does not equal comment so i assign a class of trackback to that list item 2 hide them all with css ok easy enough just add the following to your stylesheet ol commentlist li trackback display none that should be pretty self explanatory 3 add a jquery visibility toggle the logic of the javascript will be as follows check to see if there are any list items with a class of trackback add a link to show hide trackbacks add a click event to the show hide trackback link update the text of the link accordingly first lets execute the javascript once the document is ready $ document ready function next lets check to see if there are any elements with a class of trackback $ document ready function if $ trackback length 0 next if there are trackbacks on the page insert a link to show trackbacks $ document ready function if $ trackback length 0 $ comments after a href= id= toggletrackbacks show trackbacks a i am adding the show hide trackback link after the heading with an id of comments finally i want to add in the click event to the link and toggle the text depending upon if the trackbacks are visible or not $ document ready function if $ trackback length 0 $ comments after a href= id= toggletrackbacks show trackbacks a $ toggletrackbacks click function $ trackback slidetoggle slow if $ toggletrackbacks text == show trackbacks $ toggletrackbacks text hide trackbacks else $ toggletrackbacks text show trackbacks return false so basically i am adding the jquery slidetoggle effect when the show hide trackbacks link is clicked then if the text in the show hide trackbacks link is show trackbacks i change it to hide trackbacks and the opposite when the text is hide trackbacks i have grabbed some of the comments from the ultimate png guide so you can see a demo of this in action i love how simple jquery is ',1),(222,'field',14,' 1789 ',1),(223,'field',3,' web ',1),(223,'slug',0,' weekly link round up 26 ',1),(223,'title',0,' weekly link round up 26 ',1),(223,'field',2,' it was a pretty busy week with regular work and freelance work but here are a few things that i found interesting this week you didnt come here from google apparently joshua porters blog was flooded with spam links and his blog was dropped from the google index this was the result of a well known wordpress hack this example shows the importance of staying on top of upgrading when a new version is released on the other hand it is really sad the society we live in do these hackers really gain that much from this crap its really annoying the 2008 gmail appeal easily the best thing i saw this week i think outlook 2007 is more of a problem than gmail but really it is just html emails in general a list apart issue 256 interesting issue this week from a list apart two articles about adding some non textual visualizations to your sites first in accessible data visualization with web standards wilson miner demonstrates three techniques for incorporating data visualization into standards based navigation patterns next in take control of your maps paul smith shows that we do not have to only rely on the google maps ui to create awesome mapping solutions 24 checkpoint signs youre obsessed with web graphic design pretty funny list even thought i am really not a designer googlebot crawls through html forms it is going to be very interesting to see how this changes some of the stuff indexed although they do note that only forms submitted with the get method will be crawled which makes sense ',1),(524,'field',8,' serviced offices ',1),(224,'slug',0,' why ill be going naked tomorrow ',1),(224,'title',0,' why ill be going naked tomorrow ',1),(224,'field',2,' tomorrow is the third annual css naked day and i will be participating just as i did last year some people may wonder why would you strip the design from your site for a whole day wont you lose visitors well you may but you are helping to promote web standards i take the time and effort to write well structured xhtml so my site is perfectly usable without the design ill be striping my design with the css naked day wordpress plugin i encourage everyone else to strip down and show off your body ',1),(224,'field',14,' 1787 ',1),(523,'field',8,' center ',1),(225,'field',3,' web ',1),(225,'slug',0,' weekly link round up 25 ',1),(225,'title',0,' weekly link round up 25 ',1),(225,'field',2,' it was crazy to see the amount of traffic i got for the 6 most important css techniques you need to know because of it i stopped using sifr because of how much it was slowing down the page loading i think its great for a few instances on a page but if you use it for every heading then you begin to get into trouble only a few interesting things i found this week a sense of non commitment this article was very interesting considering i have a full time job and do some freelancing on the side i do have to get all of my freelance work cleared with my company though extensible css interface iv testing for extensibility the final part of the iv part series this was a great series combining numerous excellent techniques timthumb php script released very nice php on the fly image resizing on choosing type great article discussing a few guidelines to follow when choosing type ',1),(226,'slug',0,' the 6 most important css techniques you need to know ',1),(226,'title',0,' the 6 most important css techniques you need to know ',1),(226,'field',2,' i thought i would give a quick tutorial with examples of the 6 most important css techniques that i think you need to know get a consistent base font size get consistent margins set a float to clear a float image replacement faux columns css sprites 1 get a consistent base font size body font size 62 5% until ie finally supports the resizing of text in pixels this is the best technique to gain full control over your font sizes by setting the body font size to 62 5% that will set your font size to 10 pixels that way 1em is equal to 10 pixels although i typically then set my container font size to 1 2em which in turn sets the font size to 12 pixels but still then you know that 1em is equal to 12 pixels see the example 2 get consistent margins there are some great css resets out there but i usually dont need one that goes so far i like to just remove the margin and padding from every element html body div h1 h2 h3 h4 h5 h6 ul ol dl li dt dd p blockquote pre form fieldset table th td margin 0 padding 0 then you can set the margins that you want accordingly see the example 3 set a float to clear a float floating is probably one of the most important things to understand with css but knowing how to clear floats is necessary too all you need to remember is set a float to clear a float i have created a simple page with two floating columns next to each other you will notice in the example that the grey background does not contain the floating columns so the easiest thing to do is to set the containing element to float but now you will see that the container background doesnt contain the content area since the container has margin 0 auto we do not want to float it because it will move it to whichever side we float it so another way to clear the float is to insert a clearing element in this case i just use an empty div set to clear both now there are other ways to clear a float without markup but i have noticed some inconsistencies with that technique so i just sacrifice an empty div 4 image replacement sure there are a lot of different image replacement techniques but i think that you get to most benefits from this technique i also discussed this technique in a previous article improved navigation image replacement the markup h1 id= logo company namespan span h1 the css h1 logo height 110px overflow hidden position relative width 560px h1 logo span background url images content 2008 03 logo gif no repeat display block height 100% left 0 position absolute top 0 width 100% basically all we are doing is absolutely positioning an image over top of the html text the reason that i like this technique is because even when images are disabled the text is still visible of course this means that you cannot use a transparent image to lay over top of the text so it will not work in all situations see the example 5 faux columns it is very common in layouts to have 2 columns next to each other with one column having a background color and the other column just being white since the columns will almost never have the same amount of content in them the easiest way to fake this is to have a 1px tall background image being repeated vertically in the containing element of the 2 columns the markup div id= container div id= primarycontent h1primary column h1 phellip p div div id= secondarycontent h2secondary column h2 phellip p div div class= clearing div div the css div container background url images content 2008 03 content bg gif repeat y top right padding 10px 0 width 640px div primarycontent float left padding 0 10px width 400px div secondarycontent float right padding 0 10px width 200px pretty simple a containing element 2 floating columns and a clearing element so that the containing element will contain the floating columns as noted in the set a float to clear a float technique above see the example 6 css sprites css sprites is the technique of combing images to lessen the number of calls that need to be made to the server then you just shift the position of the background image to view the correct part of the image may sound complicated but it just takes a little math note in both of these examples i am using the image replacement technique discussed above example 1 for this example we are just going to have one download link that we want to replace with a nice graphic then on hover we want to change the image the markup a href= id= download download nowspan span a the css a download display block height 75px overflow hidden position relative width 150px a download span background url images content 2008 03 download gif no repeat display block height 100% left 0 position absolute top 0 width 100% a download hover span background position 0 75px as you can see from the code on hover we shift the position of the background image to view a different part of the image oh and also ie6 and 7 suck so here are the styles we are serving to them styles to ie6 and ie7 a download cursor pointer i realize that we could just put that in the regular stylesheet since it has no affect on other browsers but i prefer to move stuff like that to the ie only stylesheets styles to ie6 only a download hover background position 0 0 this is some weird bug where the images shift when you hover but then when you mouse out the images dont shift back see the example example 2 for the second example we are going to use the css sprites technique but for the entire navigation this way only one call needs to be made to the server to load the navigation we are basically creating a css sprites matrix the markup ul id= nav li id= home a href= homespan span a li li id= about a href= aboutspan span a li li id= work a href= workspan span a li li id= play a href= playspan span a li li id= contact a href= contactspan span a li ul the css ul nav background 91c6d5 float left list style none width 510px ul nav li float left ul nav a color 000 display block font size 1 5em height 38px text align center position relative ul nav span background url images content 2008 03 nav gif no repeat display block height 100% left 0 position absolute top 0 width 100% ul nav li home a width 102px ul nav li home a hover span background position 0 38px ul nav li about a width 106px ul nav li about span background position 102px 0 ul nav li about a hover span background position 102px 38px ul nav li work a width 92px ul nav li work span background position 208px 0 ul nav li work a hover span background position 208px 38px ul nav li play a width 79px ul nav li play span background position 300px 0 ul nav li play a hover span background position 300px 38px ul nav li contact a width 131px ul nav li contact span background position 379px 0 ul nav li contact a hover span background position 379px 38px that may seem crazy but it all makes sense if you take the time to think about it again we have to serve some similar styles to ie6 and 7 from the previous example styles to ie6 and ie7 ul nav a cursor pointer styles to ie6 only ul nav a hover background position 0 0 see the example in conclusion this list is definitely not exhaustive they are just the 6 that i think are extremely important what other techniques do you think are important to know ',1),(226,'field',14,' 1785 ',1),(227,'field',3,' news ',1),(227,'slug',0,' upgraded to wordpress 2 5 ',1),(227,'title',0,' upgraded to wordpress 2 5 ',1),(227,'field',2,' i just upgraded to wordpress 2 5 tonight and i must say its pretty awesome the automatic upgrade of plugins is amazing and i really like the new organization of the admin area well im sure ill have a lot more to say about it once ive used it more kudos to happy cog and automattic for this release ',1),(522,'field',8,' region ',1),(228,'field',3,' web ',1),(228,'slug',0,' weekly link round up 24 ',1),(228,'title',0,' weekly link round up 24 ',1),(228,'field',2,' so many late nights this week watching basketball and working on a freelance project lots of good things to read this week 5 most common web standards misconceptions i love the first item web standards = validation just because your site is valid that doesnt mean its not crap core principles for rapidly attaining creative flow some simple techniques for achieving a state of focused concentration i find it hard to stay focused some times i need to try some of these a list apart issue 255 as usual a list apart delivers two solid articles findability orphan of the web design industry and sign up forms must die while i dont really agree with the thought that all sign up forms must die i think luke wroblewski brings up a lot of interesting points the secret to googles success free beer and sushi so youre telling me that i just have to tell my job that i will work better with beer and sushi yeah im sure that would fly decision or bug can you imagine actually being able to use pixels for font size i guess we can dream grid based design six creative column techniques six creative techniques for making your grid design extra special 10 tips for your first email campaign ugh just thinking about html emails makes me want to cry at least this article discusses the non design factors when preparing a campaign farnsworth wow they call all of their clients every week thats pretty awesome the thrill of launch this is a great article for two reasons it was really interesting to read about the hectic day that clickpass had leading up to their launch i know the feeling i think that openid is going to be really important this year with services like clickpass making it easier for developers to add openid to their sites i am hoping that openid will really take off this year ',1),(229,'slug',0,' using web development to make a difference ',1),(229,'title',0,' using web development to make a difference ',1),(229,'field',2,' during my senior year of college i wasnt quite sure what i wanted to do with my life so i applied to some graduate programs i knew one thing for sure i wanted to make a difference thankfully i was rejected from both graduate programs i applied to while i may not be making a difference in the army or anything like that i think that there are definitely ways to make a difference using web development at my company we are broken up into 4 teams each of which has a pro bono client doorways weave women empowered against violence timothy aycock melanoma research foundation the washington animal rescue league while there are times that we have to tell our pro bono clients that we are simply too busy to fill their needs we always try and get to them as quickly as possible a few weeks ago some of the employees from doorways came in to talk to us more about their organization it was pretty powerful to hear what they had to say to think that these people sacrifice so much time for the betterment of others is amazing to me i think it is extremely important for those of us who can to give back to those who are less fortunate whether it is donating time to a local non profit to help them establish their web presence or just to provide some consulting time it all will help last year i donated time to slice and integrate the worldwide breast cancer site into wordpress and i encourage everyone to try and find something to donate their time or services to make a difference ',1),(229,'field',14,' 1782 ',1),(230,'field',3,' web ',1),(230,'slug',0,' weekly link round up 23 ',1),(230,'title',0,' weekly link round up 23 ',1),(230,'field',2,' wow crazy week at work i felt like everything i had to do had a deadline of immediately im so glad its the weekend and i can watch some college basketball so here are a few interesting things from this week maintaining your personal brand online some nice tips to create and maintain your person brand ive been trying to do some of these things recently charlie rose face plants to save his macbook air i would definitely do the same to save my macbook pro wordpress 2 5 sneak peak can they release this version already it looks like it has some great improvements great work by happy cog youtube quality so you can add an extra parameter to the query string and get higher quality videos on youtube thats awesome how did they find that out why and how styling text links very good article discussing how to style links more effectively when you think about it links are the most important part of the web extensible css interface iii adding ajax interactivity this time cameron shows how to add in some simple ajax functionality im loving this series of articles ',1),(519,'field',8,' news ',1),(231,'slug',0,' sometimes its the small things that count ',1),(231,'title',0,' sometimes its the small things that count ',1),(231,'field',2,' last fall i bought a 2008 nissan altima i absolutely love it and i chose it over other cars like the accord and camry because of the way it drove but there is one thing that really bugs me the steering wheel controls more particularly the volume and next previous track controls as i wrote in the importance of testing i feel like some problems with products could be resolved pretty easily with just a little testing the steering wheel controls on the 2008 nissan altima are no different for some reason nissan decided to have the volume which you turn up and down be a horizontal control so basically if you want to turn the volume up you hit the control to the right if you want to turn the volume down you hit it to the left also strange when you want to go to the next song you hit the control up and to go to the previous song you hit the control down is that just completely opposite or what it reminds me of the seinfeld episode the opposite george hey i just found twenty dollars i tell you this something is happening in my life i did this opposite thing last night up was down black was white good was jerry bad george day was elaine night seinfeld the opposite every time i am about to adjust the volume level or change the song it takes me that extra second to think about it maybe its because im not used to it yet but if the volume were up and down and the change track control were left and right it would be what i expect and wouldnt take that extra time to process so to relate it to the web sometimes its the small things that count think about conventions that exist in everyday life and see if they can be applied to the web as well dont make me think ',1),(231,'field',14,' 1780 ',1),(232,'field',3,' web ',1),(232,'slug',0,' weekly link round up 22 ',1),(232,'title',0,' weekly link round up 22 ',1),(232,'field',2,' well i didnt get much sleep this week because i spent the entire week staying up late playing with my new macbook pro its amazing best purchase ever when i wasnt playing this is what i found interesting this week html reference nice reference of all of the html elements attributes deprecated attributes etc nothing new but just good for reference the secrets of grunge design i love this style to an extent i want to incorporate some small touches into the next redesign newzald from moleskine to market wow that is quite a process i think ill let the experts create the fonts and i will just enjoy the fruits of their labor wordpress is open source uh oh wordpress vs movable type drama ill tell you what switching from movable type to wordpress was the best decision ever i think wordpress has a much brighter future hulu so after being in beta for a while hulu finally went public i must say i was really impressed plus it gives me a chance to catch up on my new obsession 30 rock firefox 3 memory usage this looks really promising i know on a pc firefox is a memory hog but i havent noticed it since ive been on my mac apples design process through a keyhole holy crap apple designs 10 mock ups before narrowing it down maybe thats why their products are almost always awesome that design process it pretty intense ',1),(233,'slug',0,' use jquery to open all external links in a new window ',1),(233,'title',0,' use jquery to open all external links in a new window ',1),(233,'field',2,' in a recent project at work i had completed implementing a site and the client was reviewing it their company decided that they wanted all external links to open in a new window this is not a practice that i really like and others agree opening up new browser windows is like a vacuum cleaner sales person who starts a visit by emptying an ash tray on the customers carpet dont pollute my screen with any more windows thanks particularly since current operating systems have miserable window management if i want a new window i will open it myself jakob nielsen the top ten web design mistakes of 1999 breaking the back button is never a good thing but this article is not about that back to the site i was implementing i was really not interested in adding target= blank to every single external link so i came up with a better solution the solution the site was already using jquery for other functions so i figured that i should just use some of its powerfulness to make my life easier with a couple lines of code i solved my problem $ document ready function $ a href =http attr target blank check out the demo to see the results explanation if you know anything about attribute selectors that should look familiar to you basically it is saying apply the attribute target= blank to all links that begin with http really easy really powerful problem solved some may say it almost might be preferable to browse the site with javascript disabled so that the external links would just open in the same window but that debate is for another time ',1),(233,'field',14,' 1778 ',1),(234,'field',3,' web ',1),(234,'slug',0,' weekly link round up 21 ',1),(234,'title',0,' weekly link round up 21 ',1),(234,'field',2,' it was a busy week at work this week but a good busy i was slicing a site and implementing it into wordpress its going to be a good edition to my portfolio when its done so enough of the small talk this is what i found interesting this week microsofts interoperability principles and ie8 we awoke on monday morning to very interesting news weve decided that ie8 will by default interpret web content in the most standards compliant way it can this decision is a change from what weve posted previously creating a successful online portfolio great article discussing the common mistakes in online portfolios and 12 principles of effective portfolio design extensible css interface ii css selectors jquery the second article in the four part series the highly extensible css interface this one touches on some jquery and attribute selectors a list apart issue 254 two great articles on design on creativity and design is in the details i found both articles to be really interesting especially since design is the area that i am trying to improve the most in first impressions of internet explorer 8 beta 1 thats right everyone ie8 beta 1 is available for download roger gives a nice round up of its improvements and its shortcomings so far coding for the mobile web chris mills from opera discusses the dos and donts of coding for the mobile web i still think that its not really going to explode until we see more interfaces like the iphone and until cell phone carriers reduce the price of their unlimited data plans but still some good tips for the time being workplace experiments my co worker flagged this to me four day work weeks freedom to buy a book or software whenever that sounds amazing oh and in other news my brand spanking new 15 macbook pro should be arriving monday the anticipation is killing me i didnt know they ship from china ',1),(518,'field',8,' apply ',1),(235,'slug',0,' pngs the alphaimageloader filter and haslayout ',1),(235,'title',0,' pngs the alphaimageloader filter and haslayout ',1),(235,'field',2,' i recently wrote an article discussing how to use pngs effectively in all browsers including ie6 for work i had to slice a site that used a lot of pngs and i ran into something that i had never encountered before i was trying to use the microsoft proprietary alphaimageloader filter because they background images were pngs that were going to scale to fit the background the div that i was setting the png as the background to did not have a height or width specified apparently to use the alphaimageloader property the element that you are using it on must have another microsoft propriety property haslayout from the microsoft developer network site the object that the filter is applied to must have layout before the filter effect will display you can give the object layout by setting the height or width property setting the position property to absolute an example i am going to use the same working example i used in my ultimate png guide but this time i am going to add the following to the head of the page style type= text css div container div inner width auto style obviously not how you would want to really add that style to the page but i am just trying to prove that in ie6 to use a png with the alphaimageloader filter applied the element must have layout so here is the new page which should be broken in ie6 so there you have it remember to give elements layout if you are going to use the alphaimageloader filter ',1),(235,'field',14,' 1776 ',1),(236,'field',3,' web ',1),(236,'slug',0,' weekly link round up 20 ',1),(236,'title',0,' weekly link round up 20 ',1),(236,'field',2,' wow i cant believe i have written these weekly link round up 20 times the time sure has flown by navigation menus trends and examples nice discussion of navigation trends with lost of examples i really like the first trend trend toward speaking block navigation i may consider doing something like that in the next redesign how to recreate silverbacks parallax tutorial explaining the creative use of pngs on the silverback site 10 phrases every freelancer should kick out of their vocabulary the title speaks for itself some good stuff to remember a guide to web typography awesome tutorial about how to choose web typography contrast size hierarchy and space jquery tutorials for designers i am a big advocate of jquery nice collection of 10 simple tutorials extensible css interface i the foundation part i of the iv part series good start i am interested to see the rest ',1),(237,'field',3,' web ',1),(237,'slug',0,' gracious spam ',1),(237,'title',0,' gracious spam ',1),(237,'field',2,' im glad that some of my spam comments appreciate the time that i put into my site you have an outstanding good and well structured site i enjoyed browsing through it t good site youre a pretty good writer u thanks bro real good work i good site thanks simple but quality thanks i dont even know how akismet figures out that those are spam and not real comments ',1),(312,'field',15,' expressionengine html css javascript ',1),(238,'field',3,' news ',1),(238,'slug',0,' help name that font ',1),(238,'title',0,' help name that font ',1),(238,'field',2,' so they just painted big letters and numbers in my parking garage at work can you name that font with the numbers being below the baseline of the text it makes me think its georgia anyone else have a guess ',1),(547,'field',8,' news ',1),(239,'slug',0,' macbook vs macbook pro help me decide ',1),(239,'title',0,' macbook vs macbook pro help me decide ',1),(239,'field',2,' update i went with a macbook pro find out what helped me to make my decision i have been craving an apple laptop for about a year and a half now since apple just updated both the macbook and the macbook pro today i think its finally time but now the hard part comes up which do i get the macbook or the macbook pro macbook so here are the specs for the macbook that i would get size 13 inch processor 2 4ghz intel core 2 duo memory 2gb 667mhz ddr2 sdram 2x1gb hard drive 160gb serial ata drive 5400 rpm or go to 250gb for $100 more applecare protection plan $249 price $1 548 00 macboook pro now here are the specs for the macbook pro i would get size 15 inch processor 2 4ghz intel core 2 duo memory 2gb 667mhz ddr2 sdram 2x1gb hard drive 200gb serial ata drive 5400 rpm or go to 250gb for $50 more applecare protection plan $349 price $2 348 00 comparison based on those specs it seems like the macbook pro isnt packing that much more but in addition to all that it has a better graphics card backlit keyboard and a multi touch trackpad the backlit keyboard and 15 inch screen are big for me but is it worth that much more im not sure i wish apple would update their laptop comparison chart hopefully they will get to it today so what do you think which would you get ',1),(239,'field',14,' 1772 ',1),(240,'field',3,' web ',1),(240,'slug',0,' weekly link round up 19 ',1),(240,'title',0,' weekly link round up 19 ',1),(240,'field',2,' there has been a lot of discussion arguments recently about ie8s rumored version targeting i have been a little in between on which side to take but i think a few articles from this week really helped me to make my decision they shoot browsers dont they jeremy keith has a great discussion about why the default version targeting is incorrect he does not think you should have to add extra code ok just one line in order to enable new browser features version targeting threat or menace jeffrey zeldman takes a different approach and discusses how huge ies market share is and that a majority of people are not developing their websites with web standards and their sites would break display differently in ie8 if by default it would act like ie8 imagine all of those large and powerful companies having their sites broken microsoft couldnt take it this is what i think really sold me while i dont think its necessarily correct it is probably the right thing for microsoft to do to protect themselves common bonds eric meyer brings up a fantastic point here regarding the two different views of version targeting we all want to advance web standards we all want browsers to improve their support we all want better and more advanced specifications we all want to reduce inconsistencies we all want a better web here is the rest of this stuff that i found interesting this week scrutinizing the xo olpc user experience very interesting review of the affordable xo laptop idea a new typography term while i am not a print type designer i found this amusing start your own business i want to start my own sometime in the future great guide about what you need to do it right balancing work family nice list of 5 important things to remember before working so many hours awesome up your design with a b simple tutorial about how to spruce up your design with an auroral background 500 million downloads of firefox almost damn thats awesome still not enough though a conversation with matt mullenweg wow matt just turned 24 im turning 24 soon amazing what he has accomplished i am anxiously awaiting the new version of wordpress to see what the admin section looks like ',1),(546,'field',8,' publishing ',1),(241,'field',3,' web ',1),(241,'slug',0,' weekly link round up 18 ',1),(241,'title',0,' weekly link round up 18 ',1),(241,'field',2,' wow im actually all caught up with my feeds im really looking forward to this 3 day weekend i really could use the extra time to work on a personal project here is what i found interesting this week make sure your website works with or without www its surprising how many sites you see that dont work one way or the other not to mention that this can hurt your search engine optimization oh by the way im in the no www crowd image replacement in css3 this would be an awesome addition to css think about how much we use image replacement we should really have a bulletproof implementation without adding extra markup 25 ways to improve your site in 5 minutes i need to go through this list and see if there is anything i should do study 6% of people online contribute 50% of display ad clicks wow thats crazy i barely ever click on any ads google officially hijacks 404 pages what do you think at first i kind of had mixed feelings about this on one side if someone was on my site and got a google 404 page i would not be happy on the other hand the people have the option to just remove the toolbar if they dont want it and i guess to make it even better it only displays the google 404 page if the 404 page on the site is under 512 bytes i think it could actually be pretty useful ',1),(545,'field',8,' kingsroad ',1),(242,'field',3,' web ',1),(242,'slug',0,' weekly link round up 17 ',1),(242,'title',0,' weekly link round up 17 ',1),(242,'field',2,' well im actually writing my weekly round up on time this week guess it helps to actually keep up with my feeds here are a couple of items from last week that i didnt get a chance to read until this week 10 principles of effective web design nice overview of 10 principles to make designs usable remember web design is all about the user stay on target some examples of how to use the css3 pseudo selector target if only browsers could keep up now for the items from this week that i found interesting why being an average freelancer might just be enough i feel like i am an average freelancer and i am perfectly happy with it my design ability is not amazing but its not bad either thats not saying i dont want to improve it is obama a mac and clinton a pc i love obamas website it does feel very mac y the principles of beautiful html email this most important part is simplicity this is my favorite section an email is not a web page cinematic web design i love the analogy no child left behind is leaving designers behind i agree totally i wish i would have received more design training im trying on my own though jquery ui and jquery enchant alpha versions released today more jquery coolness i love the demos calls to action click here calls to action such an important part of turning visitors into conversions anatomy of a comment interesting discussion breaking down the different parts of a comment and what popular sites display which pieces we need girlfriends ok so i think im really late with this but this show is hilarious started out as an online show and now cbs bought the show the episodes take a long time to download from the site so i would also recommend checking them out on youtube ',1),(544,'field',8,' about ',1),(243,'field',3,' tutorial ',1),(243,'slug',0,' php get age function ',1),(243,'title',0,' php get age function ',1),(243,'field',2,' such things like copyright dates ages etc can cause problems on websites unless they are dynamic for example i have my age in the little about me blurb in the sidebar i made a little function to calculate my age so that i dont have to go in every year on my birthday and add another year to my age the function function age $bmonth $bday $byear $cmonth = date n $cday = date j $cyear = date y if $cmonth = $bmonth $cday = $bday $cmonth $bmonth return $cyear $byear else return $cyear $byear 1 this function takes 3 arguments the birth month the birth day and the birth year it will return the calculated age it obviously wont work with an age in the future it will return a negative number i could add in checking to see if its a valid date but i dont think its really necessary check out some examples nothing too complicated let me know if anyone has any suggestions to shorten the code ',1),(543,'field',8,' homepage ',1),(244,'field',3,' web ',1),(244,'slug',0,' weekly link round up 16 ',1),(244,'title',0,' weekly link round up 16 ',1),(244,'field',2,' another busy weekend so im a little late on my weekly link round up from last week just a few links but here it is creating the perfect portfolio pretty good article discussing the ways to build a perfect portfolio the key is to make sure you know your audience what font says change two type designers discuss the typography used in the presidential candidates logos i personally like obamas and john edwards the best graphic designer contracts agreements forms web designers contracts a nice list of contracts and forms for web designers and developers ',1),(245,'field',3,' web ',1),(245,'slug',0,' weekly link round up 15 ',1),(245,'title',0,' weekly link round up 15 ',1),(245,'field',2,' yeah so i am a little late with my weekly round up from last week better late than never the power of a bruised ego i view the source of almost every site i go to standards mode is the new quirks mode roger gives a good round up of this whole doctype switching non sense that had been going on last week how to build a facebook application i havent built one but this seemed like a good getting started tutorial the work from home generation i need to start doing this helvetica the movie hmm its not available right now hopefully they add it back i need to watch this animated png in firefox 3 just what we need more animated graphics ',1),(542,'field',8,' cocktails ',1),(246,'slug',0,' weird green background in firefox ',1),(246,'title',0,' weird green background in firefox ',1),(246,'field',2,' how to fix so it appears that there are two different fixes one of them completely removes fireshot and the second leaves fireshot installed both appear to work fix 1 uninstall fireshot 0 31 restart firefox enter about config in the address bar search for any variables that contain fireshot i think this is the one that is causing the problem general useragent extra fireshot right click on each one and select reset if you want re install fireshot version 0 25 fix 2 open the fireshot preferences uncheck add information about fireshot into user agent string restart firefox so a couple of my firefox add ons had updates this morning i installed them all without even thinking about it and my co worker adrian asked why i added the green background to my sifr headings i had no idea what he was talking about he said he also had a firefox add on that was updated fireshot i checked in firefox on the mac ie and another co workers firefox on pc and none of them had the green backgrounds i disabled javascript and the green backgrounds went away so something is going on with my sifr headings weird anyone else seeing the green backgrounds anyone know why ',1),(246,'field',14,' 1765 ',1),(247,'field',3,' web ',1),(247,'slug',0,' the importance of testing ',1),(247,'title',0,' the importance of testing ',1),(247,'field',2,' it is great when you can take situations in your everyday life and relate them to the web first i am going to discuss a well designed product with one major problem that i used to use daily then i will discuss how we can use experiences from our every day lives to make the web a better place so my parents have this bosch dishwasher that they bought a few years ago it really was awesome it is super quiet cleans well and has a nice stainless steel finish in the store and online this thing looks great and its easy to see why my parents bought it but there is just one big flaw as you can see by the photo this is as slick as a dishwasher can get the nice clean front with no buttons or switches to get in the way its looks really nice since its so quiet when it runs you dont hear all those horrible dish washing sounds the problem this is where the major problem comes in its so quiet that you dont even realize its running you have to open the door to see the control panel on the top of the door its nice to have that out of view and gives the kitchen a sleek design but there is no external display that lets you know that the dishwasher is running there is no lock on the door for when it is running so how could this have been solved how about thorough in home product testing im sure they had a test dishwasher setup and i bet they knew how long it took to run they didnt need to open it to see if it was still running but if they had a regular person testing it im sure they would encounter the same problem that i did how is this related to the web this shows the importance of having users not close to the development of the site or application to be there to test just thinking about things like this remind you to slow down and make sure everything is tested thoroughly steve krug is the master of usability testing and shows the true value of it a simple example that he gave when i went to an event apart was to go to magazines com and to buy a subscription to the new yorker without using the search it takes a while a little too long so everyone test your web sites and applications or you might just open the dishwasher and have all the water run out think about it can you think of other problems from your everyday life that could improve the way you develop websites ',1),(539,'field',8,' homepage ',1),(540,'field',8,' events ',1),(248,'slug',0,' integrated whole site with wordpress ',1),(248,'title',0,' integrated whole site with wordpress ',1),(248,'field',2,' last night i finished integrating my entire site into wordpress it took a little while but ive finally got all of my content migrated of course if you are reading this in your feed reader its going to say that all of the feeds are new but they are not hopefully soon i will write more about the process of powering a whole site with wordpress ',1),(248,'field',14,' 1763 ',1),(249,'field',3,' web ',1),(249,'slug',0,' weekly link round up 14 ',1),(249,'title',0,' weekly link round up 14 ',1),(249,'field',2,' busy busy weekend i didnt get a chance to write this on friday so ill get right to it this is what entertained me this week accessible can be beautiful there is no reason for people to not make a site accessible so make it happen people evolve your user interface to educate your users i love those little tips like these examples when you are using a well designed web application browser version timeline nice little timeline showing the release period of browser versions overcoming blankcanvasphobia i know i have this problem at times i think sketching with paper and pencil is a great cure css gradient text effect nice little gradient text effect just one simple image yahoo implements openid massive win for the project this is big news for openid if they can get a few other big name companies to implement it i think it may really take off the internet party what happens when googles parents leave town for the weekend very entertaining video well worth the 5 minutes tell the css wg what you want from css3 help the css working group set the priorities for css3 ',1),(538,'field',8,' age gate ',1),(250,'field',3,' web ',1),(250,'slug',0,' weekly link round up 13 ',1),(250,'title',0,' weekly link round up 13 ',1),(250,'field',2,' i cannot wait until tuesday i have been talking for about 2 years now about getting an apple laptop and i think the time has finally come depending on what is announced at macworld on tuesday i will most likely be ordering a brand spanking new macbook on wednesday im so excited that i feel like a little kid on christmas ok well i guess here is the stuff that i found interesting this week dos aint so bad after all i know exactly what cameron is talking about you go into furniture stores and places like that you see these workers who have been working there for ages just flying through all of these dos screens they are really efficient mommy why is there a server in the house ok this was one of the funniest things i have ever read click through and read the entire book so weird access switch yeah i think i am going to have to be doing this soon why do cable companies offer a promotional period for only 3 months and then like double the price there is no way i am sticking with them if they dont give me another promotion solutioneering or putting solutions before problems i love this article we need to continue to solve specific problems on the web not just throw out the first solution that comes to mind i know i am guilty of that at times but it is something that i am working on udasss unobtrusive degradable ajax style sheet switcher official documentation this was an excellent article that debuted on 24ways and it is great to read some further documentation everyone is joining the data portability working group google facebook six apart flickr linkedin and others all joined the data portability working group this is awesome news imagine being able to manage all of those accounts with one login or by going facebook and being able to access data from your google account this is a great step towards that ',1),(251,'slug',0,' updated dean edwards ie7 scripts ',1),(251,'title',0,' updated dean edwards ie7 scripts ',1),(251,'field',2,' as i have noted in previous posts using dean edwards ie7 script the ultimate png guide i am a big advocate of the dean edwards ie7 scripts thankfully dean has improved them even more instead of having a ton of different javascript files with large file sizes he has compressed them into two light weight javascript files the are now two scripts ie7 js and ie8 js and they are hosted on google code the ie7 js file fixes ie5 and ie6 so that it is up to par with ie7 then ie8 js adds in some additional functionality that is missing from ie7 note if you include ie8 js you do not need to include ie7 js usage there are a couple of different options here you can either download the files and place them on your server or link directly to the google code version option 1 download files download the zip file extract the ie7 folder to the root of your server include the script in the head of your document if lt ie 7 script src= ie7 ie8 js type= text javascript script endif in this example i am targeting all versions of internet explorer less than ie7 and applying the ie8 script to it or you could apply the ie7 script instead i just wanted the advanced css functionality you could also set it so that it is applied in ie7 as well if lte ie 7 script src= ie7 ie8 js type= text javascript script endif open ie6 and enjoy some things not being broken option 2 link to google code files find the version of the file you want to use copy the url ex http ie7 js googlecode com svn version 2 0 beta ie8 js include the script in the head of your document if lt ie 7 script src= http ie7 js googlecode com svn version 2 0 beta ie8 js type= text javascript script endif smile you just fixed ie6 hopefully that should get you started with what you need my previous articles using dean edwards ie7 script the ultimate png guide have some other details about the previous version of the script some of which still apply let me know if you have questions ',1),(251,'field',14,' 1760 ',1),(252,'field',3,' web ',1),(252,'slug',0,' weekly link round up 12 ',1),(252,'title',0,' weekly link round up 12 ',1),(252,'field',2,' im glad this week is over you know it really didnt feel like a short week i guess its because i worked on monday well here are the interesting links i found edit area really cool javascript that formats code i could really use this as i am typing this post i hate not being able to indent my list items check out the demonstration reflections of an interface designer really good reflection from the designer of wufoo i love this quote good designers however are more like matchmakers they design for the relationships between the tool and the user if you know anything about relationships then you know that this is extremely difficult to be good at relationships you have to not only be selfless but listening constantly and carefully 10 ways to get design approval ok this isnt really from this week but i read it this week this article is amazing this quote even makes me think about things differently their the clients tendency will be to try to improve the design however that should be your problem not theirs the role of a client should be to defend the needs of their users and business not do the design encourage the client to make comments such as i am not sure that my female users will like the masculine colours rather than can we make the whole design pink it is down to them to identify the problems and for you as the designer to find the most appropriate solution new years tech resolutions techcrunchs resolutions for some of the major players in the tech industry i really hope apple follows through with this one i want the damn iphone but there is no way im switching to att making of the human flipbook this commercial is amazing so creative apple docking patent works perfectly with ultra slim macbook apple never ceases to amaze me too bad this new slim macbook is a little too small for my liking where is a damn 15 inch macbook pro thats what i want ',1),(253,'field',3,' web ',1),(253,'slug',0,' javascript a requirement ',1),(253,'title',0,' javascript a requirement ',1),(253,'field',2,' i had to go to the fedex website to track a package this week and i was pretty disappointed while i was able to track my package i was surprised to see that the little tracking box was built in flash you can see the exact box that i am talking about in the image that follows so i thought whatever its done in flash im sure they have an html equivalent if someone does not have the flash plugin installed or if they have javascript disabled boy was i wrong some screenshots below is a screenshot of the page when javascript is enabled now here is what the page looks like when javascript is disabled jesus it looks like the page exploded not only does the tracking box go away but the page looks completely awful i know i know you are saying but everyone has javascript enabled and a flash plugin installed ah i beg to differ approximately 4% of users have javascript disabled yeah that looks like a small number but when you are huge company like fedex that turns out to be a lot of people honestly how hard is it to have an html alternative to the little flash tracking box a textbox and a button how complicated its pathetic that huge companies are still making terrible decisions like this on their web site when will they learn ',1),(537,'field',8,' clients ',1),(254,'field',3,' web ',1),(254,'slug',0,' weekly link round up 11 ',1),(254,'title',0,' weekly link round up 11 ',1),(254,'field',2,' well i hope everyone had a nice holiday break i only worked 2 days this week and there werent many good links that i could find since most people were enjoying the holidays i have finally recovered from my busy week at work and i only have the last 15 days of 24 ways to read i think im going to cherish them though since we have to wait a whole year for it again anyways these are the interesting links i found this week apple tries to patent a way to avoid long lines not that im a coffee drinker but this is an awesome idea i would like to see this implemented in all kinds of retail stores i also want to see the damn iphone available to all carriers tough client my son andy rutledges 10 year old son approached him saying that he wanted a website this is just awesome i hope one day my kids when i have them do this to me end of support for netscape web browsers not like anyone uses netscape anymore but at one time netscape did have 90% of the market share and they had a large role in pushing browser makers to improve their browsers they are part of the reason that we have awesome browsers like safari and firefox should you sell hosting this is dangerous territory if you ask me i dont think i will ever sell hosting to my freelance clients i will only make recommendations of hosts to use ',1),(536,'field',8,' case study ',1),(255,'field',3,' tutorial ',1),(255,'slug',0,' the ultimate png guide ',1),(255,'title',0,' the ultimate png guide ',1),(255,'field',2,' i would say one of the coolest things in web development design is the creative use of pngs although its a little hard because of the way that ie6 handles them i have already written about using dean edwards ie7 script but i wanted to take it a step further and talk more about pngs to review first download the dean edwards script next extract the files to the root of your webserver in a folder called ie7 it needs to be in this folder because some of the scripts have a dependency on the folder finally just include the script in the head of your document using conditional comments if lt ie 7 script src= ie7 ie7 standard p js type= text javascript script endif ok so now when you want to have the script fix the png in ie6 you just have to have trans png as the suffix of the filename of the image an example now i am no designer but i have mocked up a simple page to show some usage of pngs since the background on the body is the repeated diagonal lines we cannot use a gif for the rounded corners because we arent sure where the corners will intersect with the lines on the bottom in an ideal world this is how i would want to mark the page up but in ie6 the pngs have a blue glow around them so if we apply the dean edwards scripts to the page we see the bottom image disappears keep in mind you have to be looking in ie6 to see this problem this is because the script is applying the ie proprietary filter property and once this applied we cannot position or repeat a png so lets change the way we are marking it up so that the bottom shows up in ie6 basically we have just added an empty div that contains the bottom background png now we just have to worry about the repeated background of our main content area in order to get rid of the blue glow we have to apply ies filter property which means that we cant repeat it but if we apply the filter property manually and change the sizingmethod to scale we can give the effect of repeating the background div container div inner background image url blank gif filter progid dximagetransform microsoft alphaimageloader src= images content 2008 01 container bg png sizingmethod=scale basically its just stretching the image to fit the area but since its a simple image that we were going to repeat anyways it looks fine stretched in conclusion hopefully using a combination of these two png fixes can provide you with enough to get things looking good in all browsers anyone have any other solutions ',1),(535,'field',8,' case study ',1),(256,'field',3,' web ',1),(256,'slug',0,' weekly link round up 10 ',1),(256,'title',0,' weekly link round up 10 ',1),(256,'field',2,' damn i have been busy so i missed a week of the weekly link round up last weekend i had 2 holiday parties to go to football to watch and christmas presents to buy not only that but i have been extremely busy with freelance work and work at my full time job so busy that i had well over 200 feeds to read so after a quick skim of my feeds this is what i found link worthy in the past 2 weeks typographic contrast and flow nice simple article discussing the ways to create typographic contrast internet explorer 8 and acid2 a milestone great news the internal build of ie8 passed the acid2 test in standards mode while i guess this is a step in the right direction its probably still going to take a good 3 or 4 years for ie8 to even come out plus what is this standards mode from what i have read its some special mode that the developer has to trigger and this is different than a doctype what kind of crap is that 9 essential principles for good web design very good discussion about 9 essential principals for good web design lots of examples and links to more reading yahoo responds so yahoo wants to support 100% of the recommendations made by the email standards project thats pretty cool now how about those desktop email applications im looking at you outlook css unworking group i feel like i have to link to this since it caused so much controversy this past week i think andy clarke has gone a little crazy sometimes i dont even think he knows what he is actually writing yeah microsoft really dropped the ball by not updating ie6 for so long but they are finally showing progress and he wants the css working group to disband now now is the time to keep pushing microsoft is showing signs of playing ball bbc redesign tellys have rounded corners right nice breakdown of the bbc beta homepage i dont really like it very much either especially that stupid clock yeah its a pretty cool little flash application but its so useless overdoing accessibility discussion of some attributes that are used to try and help accessibility but really they are either not helping or hindering in some situations i love the alt attribute example stay tuned for the ultimate png guide coming sometime next week ',1),(534,'field',8,' case studies ',1),(257,'field',3,' web ',1),(257,'slug',0,' weekly link round up 9 ',1),(257,'title',0,' weekly link round up 9 ',1),(257,'field',2,' yeah so i didnt get a chance to post last night because i was at the wizards game ive still got some clean up to do on the redesign which i hope to take care of this weekend here is what i found interesting this week 24 ways its that time of the year again 24 ways to impress your friends already on day 8 if you havent read the previous years i would definitely recommend doing it flot a library using jquery to create charts and graphs this is so awesome css text wrapper a javascript library to have text wrap in non traditional ways i dont think you could use this much in production but still an interesting concept creating sexy stylesheets 10 ways to make your stylesheets sexy some good stuff here better web designer and web developer collaboration part one designer to css coder when you are like me and dont really design but do the front end you have to have a good relationship with your designer some good hints here to make that hand off smoother im interested to see the other parts when they come out ',1),(258,'slug',0,' creating multiple sites on a local web server ',1),(258,'title',0,' creating multiple sites on a local web server ',1),(258,'field',2,' so while i was redesigning my site i needed somewhere to develop the new design i didnt want to have to setup a sub domain on the live site because that would be a pain to have to ftp files up everytime i changed something so i installed xampp on my computer basically xampp is a all in one apache web server it installs apache php mysql everything i needed once you install it you get a web directory here c program filesxampphtdocs or whichever directory you install xampp to thats great everything works fine when you put things in that directory and browse to localhost but what about if you want to setup multiple sites that is where i really had to do some digging setting up multiple sites i found this really good article that walks you through setting up multiple sites on xampp the article was a little longer than i thought it had to be so i thought i would clarify some things find this file c program filesxamppapacheconfextrahttpd vhosts conf and open it in notepad find a line that says something like namevirtualhost 80 remove the sign that you see in front of it this turns it from being a comment to code that is actually executed this was not in any instructions i could find next scroll to the bottom and you can add multiple domains here is what mine looks like virtualhost 80 serveradmin webmaster localhost trevordavis dev documentroot c sites trevordavis dev webpages servername localhost trevordavis dev virtualhost virtualhost 80 serveradmin webmaster localhost trevordavis redesign documentroot c sites trevordavis redesign webpages servername localhost trevordavis redesign virtualhost finally find this file c windowssystem32driversetchosts and open it in notepad you need to add an entry for each site you setup in the httpd vhosts conf file my file looks like this 127 0 0 1 localhost 127 0 0 1 localhost trevordavis dev 127 0 0 1 localhost trevordavis redesign thats it once you have done this you can browse to http localhost trevordavis dev and http localhost trevordavis redesign on your computer when you have your web server running this means that you can view php files and execute sql locally its great let me know if you have any questions ',1),(258,'field',14,' 1753 ',1),(259,'field',3,' news ',1),(259,'slug',0,' version 2 redesign launched ',1),(259,'title',0,' version 2 redesign launched ',1),(259,'field',2,' finally i launched my redesign i still have a little bit of cleanup to do in the blog section but sunday night football is on so thats not going to happen tonight the goal for this redesign was to simplify im only using a couple of images and sticking to a pretty strict grid i would say the inspiration for this redesign is definitely khoi vinh so the headings or at least most of them are done using sifr im pulling in my twitter status next to my logo ive got my flickr photos ma gnolia bookmarks and amazon astore in the footer let me know if you have any feedback hopefully i will be able to clean up some of the blog stuff tomorrow or tuesday ',1),(533,'field',8,' team modal ',1),(260,'field',3,' web ',1),(260,'slug',0,' weekly link round up 8 ',1),(260,'title',0,' weekly link round up 8 ',1),(260,'field',2,' ive been busy for the last week or so working on the new site design hopefully im going to launch it within the next few days maybe even tonight i would say the theme for this redesign is simplicity im no designer so i should stop pretending right a lot of good links from this week i guess once i finally finish the redesign a real article will come i promise css a recipe for success pretty good article about styling a restaurant menu as an unordered list nothing ground breaking just a good example of the powerfulness of css creating multicolumn lists again nothing ground breaking just some simple techniques for creating multi column lists my one gripe is with the 3rd example im not sure why they dont just put the class name on the ordered lists instead of wrapping them in an extra div sure its not that much extra markup graphic design glossary nice list of definitions relating to the graphic design field might be helpful to send to clients so if you mix in those technical terms they understand it collecting for design discussion about collecting ideas for interface and design solutions always good to help remember ideas from other sites the rules of unobtrusive javascript i read chris heilmanns article last week but i like rogers explanation principles of design a series of 6 articles although only 3 are written so far covering the basic principles of design what does accessibility mean accessibility is not just making your site available for those with disabilities it is making your site available for as many people as possible disabled or not email standards project i hate html emails lets hope this project can force email client developers to stick to some sort of standards not saying i will like html emails any better but coding them will become tolerable i dont know how many more crappy html emails i can stand to code ensuring your html emails look great and get delivered good article about making your html emails look good and making sure they are getting into the users inboxes doesnt remind me of anything discussing how sometimes when you are starting new and kind or stuck get away from the computer and go for a walk or something a chance of scenery sometimes can really get the brain moving ',1),(532,'field',8,' team ',1),(261,'field',3,' web ',1),(261,'slug',0,' weekly link round up 7 ',1),(261,'title',0,' weekly link round up 7 ',1),(261,'field',2,' after a nice short week and 2 days of eating and football time to share my links for the week this collection is only until wednesday but i still found a bunch of interesting things harry potter and the order of the phoenix typography i need to go back and watch this movie again after seeing all the great typography that is used someone definitely put a lot of time and effort into choosing the typography for the movie how many html elements can you name in 5 minutes ready set go i got 51 how many did you get i got basically all of the non depreciated elements except for a few the ones i missed were like noscript frame and things like that how many css properties can you name in 7 minutes i got 67 there were some that i was smacking myself for not getting but then there are a bunch that arent really supported apple gets creative with mac ads can apple do anything wrong right now this ad is genius scientific web design 23 actionable lessons from eye tracking studies a lot of this stuff is things most people probably know but there is a lot of interesting stuff here interface research survey take this quick 10 question survey from a class at the art institute of atlanta the results are about what i figured except for 1 or 2 does advanced search sound too advanced yeah i think advanced search is not a good term i like what roger suggests refined and enhanced understanding web design the godfather speaks a great article from jeffrey zeldman about how you cant really design for the web if you dont understand it how to size text in css this was a great issue of a list apart this week this article shows different tests of sizing typography i think the important thing in this article is that richard is testing to see his vertical grid grow when users resize their text ',1),(531,'field',8,' about ',1),(262,'field',3,' news ',1),(262,'slug',0,' upgraded to wordpress 2 3 1 ',1),(262,'title',0,' upgraded to wordpress 2 3 1 ',1),(262,'field',2,' i decided to upgrade to the new version of wordpress tonight i wanted to get that out of the way before i finish and launch the redesigned site the upgrade went smoothly just noticed a couple of issues the display of my comments got a little wacky im not sure what exactly happened but im not gonna worry about it too much since the redesign is launching soon also it broke my ajax comment submit i have disabled it for now but there is a new input element with the name of wp unfiltered html comment i tried changing the javascript but i still couldnt get it to work hopefully its something i can address soon ',1),(551,'field',8,' make contact ',1),(263,'slug',0,' weekly link round up 6 ',1),(263,'title',0,' weekly link round up 6 ',1),(263,'field',2,' finally its the weekend i had to work basically all last weekend and its great to finally get a break got a pretty good collection of links for this week better web forms redesigning ebays registration garrett dimon gives a really good breakdown of a redesign of ebays registration form forms are easily one of the most important elements of web design yet they are one of the least thought about elements classy amp inspired by mr dan cederholm this wordpress plugin adds a span with a class around all ampersands edit not all ampersands only ampersands in headings so you can style the ampersand with a more attractive font being kind to widows and orphans i guess this is like an extension of the classy amp plugin offers that functionality along with converting quotes and other entities to their correct html values also adds non breaking spaces to try and prevent widows and orphans hence the title favikon upload a photo and create your favicon on the web no need to go into photoshop and crop it then create an ico file this does it all fatduk web dogma 06 10 rules that will enhance the user experience of any website or online application while i think this is old i still enjoyed reading it and i think it all applies still almost perfect htaccess file for wordpress blogs modify your htaccess file to try and prevent hackers from messing with your wordpress installation i promise a real post is coming soon along with a redesign sometime soon ',1),(263,'field',14,' 1748 ',1),(264,'field',3,' web ',1),(264,'slug',0,' weekly link round up 5 ',1),(264,'title',0,' weekly link round up 5 ',1),(264,'field',2,' wow im pathetic i can hardly keep up with one blog post a week im just so busy at work right now i stopped reading my rss feeds on wednesday so this is really like half a weeks worth of links ive got a big project for work launching on sunday so hopefully i will have more free time im also in the process of working up a new design for the site i dont necessarily feel like the current design is not good i just feel the need for a change grid javascript bookmarklet pretty awesome bookmarklet to generate any grid on any webpage definitely a keeper google coming to a gas station near you google is partnering with the makers of gas pumps to add google maps to the gas pump genius now when you are lost and you dont have gps but you dont want to admit to the wife or girlfriend that you are lost just say that you need gas then as you are filling up find out where the hell you are somethings missing in web design i do think web design is a little lacking compared to print but if you think about it the web is still a baby there is plenty of time for it to grow up screen readers sometimes ignore display none sometimes is the key word gotta love standard practice between different pieces of software that are supposed to do the same thing ie6 anyone still good to know ',1),(549,'field',8,' stories ',1),(265,'field',3,' web ',1),(265,'slug',0,' weekly link round up 4 ',1),(265,'title',0,' weekly link round up 4 ',1),(265,'field',2,' i didnt read too many great things this week but there were a few a couple of them are a little of topic but i still found them really interesting to read advanced css menu this is a continuation from last weeks entry design watercolor effect menu this entry shows how to create the xhtml and css from the menu that was designed last week jquery demo creating a sliding image puzzle plug in i really like a jquery a lot this is an awesome example of what is possible with it why i love my completely inefficient bathroom i dont know why i found this article so interesting but it was definitely different to analyze the usability of a bathroom office bathrooms as key indicators of team culture another bathroom article this one talking about the things that a bathroom needs posh plain old semantic html i love that there is an acronym for this i also love plain old html ',1),(548,'field',8,' launch ',1),(266,'field',3,' web ',1),(266,'slug',0,' weekly link round up 3 ',1),(266,'title',0,' weekly link round up 3 ',1),(266,'field',2,' yeah so i missed last week what can i say i was moving into my condo i almost missed this week too i got my wisdom teeth pulled this morning but hey i felt basically back to normal by about 2 this afternoon so heres what i found interesting this week moving along so it looks likes we might be seeing some new entries on the css zen garden yeah the site is been around for a while and a little tired but its still interesting if you have some time to kill the superest kevin cornell and matthew sutter go at it drawing characters with super powers the illustrations are amazing im so jealous of their ability to draw like that u 489 ok so not really web related but this is one of the strangest funniest stories i have heard ask 37signals can i build a product business if im just a designer very interesting to see the career path of someone so successful jason fried in the web development field make a mixa i am so tempted to get one of these design watercolor effect menu i love this style of design also good to get tips on how to achieve it google declares jihad on blog link farms will be very interesting to see how blog link farms are affected i guess i need to write more weekly articles too and not just link round ups ',1),(314,'field',15,' html css javascript ',1),(267,'slug',0,' weekly link round up 2 ',1),(267,'title',0,' weekly link round up 2 ',1),(267,'field',2,' ok so fridays it is i guess there are pros to posting this on friday evening there is plenty of time on the weekends to browse and read articles or if you arent a weekend reader they will be waiting in your rss reader on monday morning sounds good to me just a few good links from this week learn apache mod rewrite 13 real world examples mod rewrite is awesome while there are plenty of articles about it this article gives a nice intro and then 13 real world examples go ahead try to go to http www trevor davis com yeah you get redirected to http trevor davis com stupid useless www elements of great web design the polish i wish i was more creative i feel like there are flashes every once in a while but not enough i guess the only way to get better is to keep reading learning techniques and just trying stuff this is an excellent article about adding those finishing touches to sites the before and after is pretty incredible testing designs for color blindness this i found really interesting seeing what sites look like through the eyes of someone who is color blind go take a look at what your site looks like helping your client maintain markup quality this is something that all of us web developers struggle with how do we keep our clients from putting out crap code wysiwyg s dont help the cause either this idea is pretty interesting to have a sort of warning style when depreciated elements are being used interesting concept big bold backgrounds i personally love the big bold backgrounds when they are done well i instantly though of mtvs new site there are so many backgrounds on there i have refreshed a bunch of times and never seen the same one if only i had those kind of creative skills maybe some day ',1),(267,'field',14,' 1744 ',1),(268,'field',3,' web ',1),(268,'slug',0,' weekly link round up ',1),(268,'title',0,' weekly link round up ',1),(268,'field',2,' so my plan is to eventually get some sort of consistency and post a weekly round up of good links i havent decided exactly which day i will publish it but i am thinking about trying to do it on fridays i guess i am a little late but there are a few links that really stood out to me last week os x style searchbox i noticed that when apple redesigned their site the search box looked like the os x search box then i noticed that they used javascript to do it i guess so that it actually worked in safari css eleven css eleven is an international group of visual web designers and developers who are committed to helping the w3cs css working group to better deliver the tools that are needed to design tomorrows web im so jealous this is quite a star studded line up cameron adams jina bolton mark boulton dan cederholm andy clarke jeff croft aaron gustafson jon hicks roger johansson richard rutter jonathon snook dear new york times the pay wall was only half the problem the new york times recently removed their subscription requirement to reading articles but you still have to register to read them does only removing the subscription requirement solve the problem i think not a type in the right direction webkit now supports the font face css property i can only dream that this becomes a standards across all browsers this was 4 on my birthday web wish list this year i guess thats it from last week hopefully i will start to do this on some sort of consistent basis ',1),(555,'field',8,' media ',1),(556,'field',8,' events ',1),(269,'field',3,' news ',1),(269,'slug',0,' ive gone pink ',1),(269,'title',0,' ive gone pink ',1),(269,'field',2,' in support of breast care awareness month ive gone pink for the month while it is not that much it is in hopes of spreading the word on the technical side i decided not to change any of the markup but to just change the css and images as with just about anyone you talk to i was directly effected by breast cancer my mother died when i was 3 while i wish i could do more to help the cause i donate and show support when i can show your support donate to breast cancer research ',1),(270,'field',3,' news ',1),(270,'slug',0,' save friday night lights ',1),(270,'title',0,' save friday night lights ',1),(270,'field',2,' this is not a typical topic for me to write about but it is important enough that i need to write a little something most people probably don know it but the best show on tv right now is friday night lights while i know most people are probably pretty skeptical about that statement it is absolutely true after a wonderful debut season we are getting geared up for another one although nbc is trying to kill it by putting it on fridays at 9pm it is hard to put into words how amazing the show is im sure there are a lot of people who are thinking that it is just another football show they are vastly mistaken most episodes have about 15 minutes of football or less the show is about the people not about football the whole town of dillon revolves around their high school football team its crazy have you read the book seen the movie in my opinion the tv show is just as good as the book which is saying a lot since the book is fantastic bill simmons the sports guy just had a great article entitled please help me keep the lights on i think he sums it up perfectly dont you owe it to yourself to rent season 1 disc 1 and try the first four episodes look if fnl doesnt make it were just going to get more greys anatomy spin offs a csi for every city and 20 deal or no deal clones hollywood doesnt like to take chances and it doesnt like to fail it figures out what works bleeds it to death then flips the corpse and bleeds it some more isnt there enough trash on tv why not take a chance on something so highly recommended i have never met anyone who has watched the show and didnt enjoy it forget renting the first season buy it for $20 you cant buy many tv shows for that low of a price if that doesnt convince you there is a full money back guarantee so everyone if that didnt convince you tune in to nbc on october 5th at 9pm and watch the season 2 premiere i promise you wont be disappointed ',1),(553,'field',8,' products ',1),(271,'field',3,' tutorial ',1),(271,'title',0,' ajax forms with jquery ',1),(271,'slug',0,' ajax forms with jquery ',1),(271,'field',2,' there are so many different javascript frameworks out there but i have recently started to use jquery and i love it not only is the library much smaller than others but it is so simple to use i wanted to show how easy it is to turn a regular form into a ajax form start with a regular form first i am going to build a regular form the form is just going to be a basic email form you enter an email address to send to an email address to send from a subject and a message all fields are required so the process of the form is user fills out the form user submits the form to the server server side script makes sure that there are no blank fields and that the email addresses are valid if there are errors show the form again with the error messages if there are no errors send the email ok so this form is pretty simple and doesnt take much time to submit since its so short but lets see how much better we can make it with a little jquery add in javascript ok so next i am going to make an ajax version which is a duplicate of the first form the only other things i am going to include on the page are the jquery library which you can download here and my javascript to process this form firing my script when the document is ready jquery has a nice little function to have you script start when the document is ready $ document ready function script goes here ok easy enough now lets make something happen when the button to submit the form is clicked i was smart enough to add an id of submit to my button so it makes it really easy to reference $ document ready function $ submit click function return false first things first im going to hide anything with the class of error if its showing which nothing will be unless the form is unsuccessfully submitted twice i also create a variable that i am going to use later to see if the form has an error and a variable to store the email regular expression $ document ready function $ submit click function $ error hide var haserror = false var emailreg = w w w 2 4 $ return false error checking now that weve got the beginning of the script setup we need to do the error checking so first lets check to make sure that the email to address is not empty or invalid $ document ready function $ submit click function $ error hide var haserror = false var emailreg = w w w 2 4 $ var emailtoval = $ emailto val if emailtoval == $ emailto after span class= error you forgot to enter the email address to send to span haserror = true else if emailreg test emailtoval $ emailto after span class= error enter a valid email address to send to span haserror = true return false remember the email address to send to input has an id of emailto what that code is saying is get the value of the email to address input if it is empty add an error message after the input if it has an invalid email address add an error message after the input now we just need to repeat the error checking for the other form fields $ document ready function $ submit click function $ error hide var haserror = false var emailreg = w w w 2 4 $ var emailtoval = $ emailto val if emailtoval == $ emailto after span class= error you forgot to enter the email address to send to span haserror = true else if emailreg test emailtoval $ emailto after span class= error enter a valid email address to send to span haserror = true var emailfromval = $ emailfrom val if emailfromval == $ emailfrom after span class= error you forgot to enter the email address to send from span haserror = true else if emailreg test emailfromval $ emailfrom after span class= error enter a valid email address to send from span haserror = true var subjectval = $ subject val if subjectval == $ subject after span class= error you forgot to enter the subject span haserror = true var messageval = $ message val if messageval == $ message after span class= error you forgot to enter the message span haserror = true return false ok error checking is done if there are no errors we need to send the email via an ajax request im not going to include the whole script here just because its getting long but you can see the whole script so there are no errors lets remove the button from the form and add in a loading graphic if haserror == false $ this hide $ sendemail li buttons append img src= images template loading gif alt= loading id= loading submit the post request ok now lets send the values via an ajax post request to our send email script that just sends the email once the request is completed lets hide the form and display a success message $ post play jqueryajaxform sendemail php emailto emailtoval emailfrom emailfromval subject subjectval message messageval function data $ sendemail slideup normal function $ sendemail before h1success h1pyour email was sent p pretty nice huh so now you have a perfectly accessible form it works fine without javascript but it works even better with javascript i highly recommend checking out the jquery documentation so go ahead send yourself some emails to see for yourself update i was asked in the comments if i could include the php script so as requested here are the files that are used index php verify php sendemail php thanks php ',1),(315,'field',15,' html css javascript ',1),(272,'field',3,' web ',1),(272,'slug',0,' its still a stinking wysiwyg ',1),(272,'title',0,' its still a stinking wysiwyg ',1),(272,'field',2,' just the other day eric meyer announced that he has been working with webassist to create eric meyers css sculptor its a dreamweaver extension that assists users in creating clean markup and css while this seems like a vast improvement over previous wysiwyg s it still feels like one why do i feel this way while its great that this would mean that there is less crap code out there people are still basically using forms to generate the markup and css needed they still are not learning anything about web development one thing i saw in the plans for future releases was there are some things i expect will be improved in future releases like shorthand value minimization the simplest example of that being a condensation of 0 0 0 0 down to just plain 0 wow if thats not going to confuse the hell out of people who dont know css i dont know what will imagine trying to add a margin in so you add margin 10px 0 10px 0 then it gets condensed to margin 10px 0 it kind of seems like you would be confused as to why it wouldnt accept the values that you were adding unless they give some sort of alert telling the user that this is what is happening they will definitely be confused they wont know the different between margin and padding they still may use blockquotes to indent their text it just seems like crap users are still going to be choosing from a template do we really want the web to be built on templates what are the ramifications as i was thinking about this writing this i was reading a post at entitled will software ever make us redundant i think this post really got me thinking about how even though the wysiwygs are getting better i dont ever think that humans will become redundant in web design development the human mind is just too creative and amazing for a piece of software to ever be able to accomplish the same thing think about all of those wacky ie6 bugs i dont know mr meyer with all due respect it kinda feels like you sold out on us ',1),(560,'field',8,' tech style ',1),(273,'field',3,' web ',1),(273,'slug',0,' stop using helvetica ',1),(273,'title',0,' stop using helvetica ',1),(273,'field',2,' ok so thats a little extreme im going to preface this post a little bit i love helvetica as a font its a gorgeous font and it has stood the test of time so now that everyone understands my opinion on the font ill go back to my original post why do designers decide to use helvetica for their sites body copy it looks awful at small sizes the sizes that i think have the most problems are 12px and lower unfortunately i have seen sites that use body copy as small as 10px its pretty sad that when i get to a site that uses a small size of helvetica as the body copy i change the body font family to verdana using firebug i made an example page to show the various helvetica sizes from 10px 20px helvetica on windows helvetica on the mac in conclusion so i guess this is more of a call to action than a post so web designers stop using helvetica at such small sizes ',1),(559,'field',8,' athlete hub ',1),(274,'field',3,' tutorial ',1),(274,'slug',0,' calculating font sizes ',1),(274,'title',0,' calculating font sizes ',1),(274,'field',2,' there are a lot of articles out there about typography on the web i wanted to explain my method of controlling font sizes and margins in css i love dan malls soft serve technique but then you have to make a special case for ie6 hopefully it wont be too much longer that we have to worry about ie6 getting a usable base font size ok so to start i like setting the font size of the body to 62 5% i used to take dan cederholms approach of setting the font size to small but i finally realized that it did not give me a nice base font size to play with so by setting the font size of the body to 62 5% we get a base font size of 10px this gives us a nice round number to work with thus 1em now equals 10px 10px is way too small to be the font size of the content though thus i just set the font size of the outter most container to 1 2em since we had a base size of 10px our font size in the container becomes 12px heading font sizes the next thing i like to do is to set the font sizes of all of the headings h1 h6 a good set of values for headings is h1 22px h2 20px h3 18px h4 16px h5 14px h6 12px again these are just values that i am suggesting you could definitely choose whatever you want to get these font sizes we just need to do some simple math example lets use an h3 as an example we take the size that we want the heading to be 18px and divide it by the container font size 12px so 18 12 = 1 5 then we set the font size to either 1 5em or 150% i personally like working with ems although i used to prefer percentages so again font size we want to achieve font size of the container use this to compute the rest of your heading font sizes and then you will have nice pixel values to work with attacking the margins so obviously you want to avoid letting the browser control how your elements will be spaced so lets work on setting the margins on these elements too remove the default margins the first thing i do in a stylesheet is zero out the margins and paddings html body div h1 h2 h3 h4 h5 h6 ul ol dl li dt dd p blockquote pre form th td margin 0 padding 0 next i set a bottom margin of 1em on p ul ol dl blockquote p ul ol dl blockquote margin bottom 1em then to get an equal amount of margin on the bottom of the headings we just need to do more simple math we cant just set the bottom margin to 1em because our font size on these elements are bigger than the rest of the content example so lets use the h3 as an example again this time we take the font size of the container 12px and diving it by the size of the heading 18px 12 18 = 0 667 so then our h3 would look like this h3 font size 1 5em margin bottom 0 667em so again font size of the container font size of the element if you do this for all elements you will have an equal margin between all elements i made a page showing elements with equal margins i used to think this was best but i have since realized that i like having the headings closer to the text that is following so i divide the bottom margin on the headings by 4 thus we get a quarter of the margin above the heading below it in my opinion the example page with custom margins looks much better anyone else have other methods ',1),(316,'field',15,' html css javascript ',1),(558,'field',8,' homepage ',1),(275,'field',3,' tutorial ',1),(275,'slug',0,' creating a dynamic google sitemap ',1),(275,'title',0,' creating a dynamic google sitemap ',1),(275,'field',2,' my site has a wordpress blog on it but it does not power the whole site just the blog if my entire site were powered by wordpress then i could generate a sitemap for google using wordpress functions i did not want to have wordpress control everything i wanted to have more control by doing some quick queries you can generate a sitemap for google that has all of your blog entries in it setting it up first you will need to send the correct headers create the opening xml tag and connect to your database php header content type text xml charset=iso 8859 1 echo xml version= 1 0 encoding= utf 8 urlset xmlns= http www sitemaps org schemas sitemap 0 9 require once db connection goes here this is where i would require my db connection file if you are not sure how to connect to your database you will need to contact your host to get that information and then do a search for php mysql connection if you cant figure it out still let me know and i can help get the categories next we want to query the database to get the categories used in wordpress $query = select cat id category nicename from wp categories order by category nicename $result = mysql query $query then we need to loop through the categories and display a url entry for each category while $row = mysql fetch array $result mysql assoc echo url loc trevor davis com blog $row category nicename loc changefreqweekly changefreq url get the entries next we need to create a query to return all of the entries for each category $artquery = select p post name date format p post date %y %m %d as createdon from wp posts as p wp categories as cat wp post2cat as pc where p id = pc post id and pc category id = $row cat id group by p id order by p id desc $artresult = mysql query $artquery finally we want to create a url entry for each blog entry while $artrow = mysql fetch array $artresult mysql assoc echo url loc trevor davis com blog $row category nicename $artrow post name php loc lastmod $artrow createdon lastmod changefreqweekly changefreq url to finish it off we just close everything up echo urlset the whole script here is the finished script php header content type text xml charset=iso 8859 1 echo xml version= 1 0 encoding= utf 8 urlset xmlns= http www sitemaps org schemas sitemap 0 9 require once db connection goes here this is where i would require my db connection file $query = select cat id category nicename from wp categories order by category nicename $result = mysql query $query while $row = mysql fetch array $result mysql assoc echo url loc trevor davis com blog $row category nicename loc changefreqweekly changefreq url $artquery = select p post name date format p post date %y %m %d as createdon from wp posts as p wp categories as cat wp post2cat as pc where p id = pc post id and pc category id = $row cat id group by p id order by p id desc $artresult = mysql query $artquery while $artrow = mysql fetch array $artresult mysql assoc echo url loc trevor davis com blog $row category nicename $artrow post name php loc lastmod $artrow createdon lastmod changefreqweekly changefreq url echo urlset modifying the htaccess file we also want to rewrite the url for this file so that it is available at trevor davis com sitemap xml open up your htaccess file or create one if you dont have one then add the following rewriteengine on rewriterule sitemap xml googlesitemap php upload this file along with the googlesitemap php script to your site root and you are set you can also add the rest of your sites file structure to the sitemap as well you can see how i did this in my google sitemap sitemaps protocal you can read more about the sitemaps protocal to see what other attributes you can apply to each url entry by the way let me know if you can think of any way to improve this ',1),(276,'slug',0,' centering absolutely positioned items ',1),(276,'title',0,' centering absolutely positioned items ',1),(276,'field',2,' at work the other day i was working on the homepage of a small save the date site we had so many beautiful images to use so our designer decided to limit the text that is on the homepage so the container is absolutely positioned with a height of 100% in order to fill the viewport the client wrote back right before we were ready to launch and said that they noticed a large white margin on the right hand side we had to explain to them that since the design was left aligned and the picture cant go on forever there has to be an end to the design we decided to center the design in order to make it look better so i went in and added margin 0 auto like i normally would to center anything but then i realized since it is absolutely positioned it wouldt work like that how to center the absolute positioned item after doing some thinking i thought about positioning the item from the left edge a certain percent so i thought if i moved it over 50% and then shifted it back to the right then it should work example here is the css that i started with div centered height 300px left 50% position absolute top 20px width 500px ok so now weve got it shifted over 50% from the left hand side and in order to get it back to the center you need to take half of the width of the item in this case 250px so if we set a negative left margin of 250px we end up with the following css div centered height 300px left 50% margin left 250px position absolute top 20px width 500px you can see that the absolutely positioned item is now centered in case you didnt notice i alphabetize my css properties it makes everything so much easier to maintain once you actually start to think about it it pretty much comes naturally too give it a shot ',1),(276,'field',14,' 1735 ',1),(277,'field',3,' news ',1),(277,'slug',0,' switched to wordpress ',1),(277,'title',0,' switched to wordpress ',1),(277,'field',2,' i have been using movable type for a little while now but i just wasnt that happy with it i didnt really have any problems but it just wasnt for me so i installed wordpress in a separate folder to try it out i loved it i decide to make the switch even though some things are broken right now i should be able to fix them this weekend i think the main thing that got me to switch was the fact that wordpress is written in php which i can code and movable type is written in perl which i have no clue how to code in just having the ability to go in and change code was reason enough for me to switch so dont worry about the broken stuff it will be fixed soon enough ',1),(317,'field',15,' html css javascript ',1),(278,'field',3,' tutorial ',1),(278,'slug',0,' dynamic bread crumbs ',1),(278,'title',0,' dynamic bread crumbs ',1),(278,'field',2,' for a redesign project at work the new design called for bread crumbs in my opinion bread crumbs are a great thing to add to a site and others agree i didnt want to have to specify anything on each page for the bread crumbs to work so i wanted to do it all dynamically for the project at work i did it in coldfusion but on my own i did it in php i figured the way that i would have to do it would be to parse the url to see which folders i was in the code file breadcrumbs php php require buildbreadcrumbs php ol id= breadcrumbs li class= first a href= home a li php $breadcrumbs = $ server request uri if $breadcrumbs = $crumburl = $toks = split $breadcrumbs for $i = 1 $i count $toks 1 $i $crumburl = $toks $i if $breadcrumbmapping $toks $i = null echo lia href= $crumburl $breadcrumbmapping $toks $i a li else echo lia href= $crumburl $toks $i a li echo li class= last $pagetitle li ol the explanation the first thing that i do is include the file buildbreadcrumbs php ill get to that later then the idea is that we will determine what folders we are in based on the url we split the url based on the slashes and step through them to make links now back to the file buildbreadcrumbs php php $breadcrumbmapping = array folders to be mapped $breadcrumbmapping f1 = folder 1 $breadcrumbmapping f2 = folder 2 $breadcrumbmapping f3 = folder 3 this file is building as associative array to display different text than the folder name there are some situations where the folders are not too pretty so basically you just add the folder name f1 f2 f3 to the associative array and assign it a pretty name folder 1 folder 2 folder 3 if you dont assign a pretty name to a folder it will just display the folder name instead i made an example page to see the bread crumbs in action you can download the scripts here breadcrumbs php buildbreadcrumbs php ',1),(279,'field',3,' web ',1),(279,'slug',0,' html emails who needs them ',1),(279,'title',0,' html emails who needs them ',1),(279,'field',2,' there has been a lot of talk going on recently about html emails and i thought i would weigh in and give my two cents outlook the most popular email platform announced that they were switching their rendering engine the decided to switch to using the word engine excuse me but i think word is word processing software and in no way should it be used to render html i think we have all seen the output when you convert a microsoft document to a web page its scary so in the wake of microsoft taking a step backwards the real question is does it even matter in my opinion it shouldnt what do the experts say as zeldman states e mail was invented so people could quickly exchange text messages over fast or slow or really slow connections using simple non processor intensive applications on any computing platform or using phones or hand held devices or almost anything else that can display text and permits typing jeffrey zeldman e mail is not a platform for design emails seem similar to rss feeds we are getting the content without all the other crap we need to ask ourselves do we want to see rss feeds completely designed nope because then we might as well visit the site remember how we thought getting cross browser consistency was hard how about cross client html emails its a nightmare some support css some strip it all out some support inline css its awful my favorite quote from the article when he is discussing css support but only if you author in nonsemantic table layouts and bandwidth wasting inline css which is like using a broken refrigerator to store food at room temperature jeffrey zeldman e mail is not a platform for design in zeldmans follow up article eight points for better e mail relationships he steps back a little from his previous stance and he notes a few points about html email i think that after he cleared his head a little this article is very on point html email should be something that people specifically sign up for it should not be the selected option they should have to choose it simple is better zeldman posted an email that his friend received from nokia a few days later this is pure comedy roger johansson also had an opinion on the subject and its very similar to mine so what do we do i think we need to discuss the problems with full html emails with the marketing people who are pushing them is this really whats ideal is this going to receive the most positive feedback i think not i would be perfectly content receiving a simple mostly text email with limited branding a logo not to mention how much easier this would be to create now that i dont have a problem with ',1),(564,'field',8,' product hub ',1),(566,'field',8,' media hub ',1),(280,'slug',0,' book review designing interactions ',1),(280,'title',0,' book review designing interactions ',1),(280,'field',2,' designing interactions is quite a book if you are interested in technology its definitely a must read while its over 700 pages there are tons of pictures so you can fly right through it the book tracks back to the creation of the first mouse and the iterations of prototypes it went through while creating physical technology is vastly different from creating websites i feel as though you can learn a lot from the book summary the book has interviews with 42 designers who shaped our interactions with technology think about the first computer think about the first laptop think about the first palm pilot and the os running on it hearing the history behind the technology that we use everyday is fascinating you really get a lot of detail into how these people worked and their thought process i think the thing i found most interesting was learning that there is a similar process to prototype creation and usability testing between physical design and web development i dont think there is really any one type of person who should read this everyone would find something interesting in it so get it already ',1),(280,'field',14,' 1731 ',1),(281,'field',3,' web ',1),(281,'slug',0,' my web wish list ',1),(281,'title',0,' my web wish list ',1),(281,'field',2,' my birthday is coming up on thursday so i thought i would make up a list of 5 things i wish to happen with the web in the next year i know that most of these will not happen in that time frame but i can at least wish right the list in no particular order this is what i want for everyone running ie6 to be upgraded by automatic updates for the term web 2 0 to never be heard again for all standards compliant browsers to support attaching multiple background images using css for the ability to render all fonts on the web for all standards compliant browsers to support the nth child selector for everyone running ie6 to be upgraded by automatic updates as all web developers have experienced ie6 sucks but there is good news ie7 is a huge step forward sure it still has some of the same problems that ie6 had but it is basically on par with other standards compliant browsers thankfully microsoft is pushing out ie7 in their automatic updates and the number of people upgrading is rising quickly before we know it ie6 will no longer be the most popular browser any more for the term web 2 0 to never be heard again im sick of it the term is used everywhere even job descriptions there was a good article on fadtastic weekly thought why good designers should stop saying web 2 0 web 2 0 is meaningless and it needs to be vanished from everyones vocabulary for all standards compliant browsers to support attaching multiple background images using css safari already does why dont other standards compliant browsers just take a moment and think about how wonderfully simple the markup would be for rounded corners ahh maybe some day for the ability to render all fonts on the web why cant we upload fonts to our servers and have the browsers download them when needed it cant be the technology it seems like a simple task can you image the possibilities if designers were not restricted to web safe fonts while sifr is awesome there are so many limits to it this needs to happen now for all standards compliant browsers to support the nth child selector no more javascript striping no more using odd and even classes when browsers support structural pseudo classes or more specifically the n th child selector its going to be great we can handle all of the alternating styles that we want using only css what else so what are you getting me what else would you ask for ',1),(563,'field',8,' homepage ',1),(282,'slug',0,' sure lets destroy accessibility ',1),(282,'title',0,' sure lets destroy accessibility ',1),(282,'field',2,' so while i was doing my normal reading of rss feeds when i saw a link to white paper from solid state group the person who linked to it said how great number 4 is are we not going to think about accessibility anymore what about people who cannot use their mouse to point and click they use the keyboard meaning that they tab between the links to figure out what they want to use by firefox adding that outline it helps to show which link they are currently focused on sure i think there are some instances where its ok to remove the outline but not for every link this white paper really did not show much and in my opinion i have already discussed much better methods for transparent pngs in ie6 and min width using dean edwards ie7 script and a more accessible image replacement technique i love all these tutorials on the web but we need to warn people about the risks when doing such things rant ',1),(282,'field',14,' 1729 ',1),(318,'field',15,' html css javascript ',1),(283,'slug',0,' how do you start web development ',1),(283,'title',0,' how do you start web development ',1),(283,'field',2,' while reading forums blogs and other web development related resources i keep coming across people asking how to get started in css they may have be table converts or they may be new to the field but the question keeps coming up in my opinion a lot of people are going about it the wrong way sure they may be able to get a nice design that works across browsers and platforms and their code may validate but look under the hood of a lot of those sites the code can sometimes be just as bad as using a table where to start i think that the key to succeeding in the field is to begin by learning semantic html sure you may have been using html for years while doing table layouts but you are also the same people who were using nested blockquotes to increase your margins what is semantic html well lets first define semantics of or relating to meaning especially meaning in language now if we apply that to html it is the idea that every element has a meaning yes there is a reason that when you want emphasize something you wrap it in an em tag instead of simply choosing elements because of how they are styled you should be choosing elements because of their meaning once you have the semantics down then you get to use css to hook into all those wonderfully semantic elements that you have used just my thoughts that is not necessarily how i learned but i think that will be the most beneficial way to learn in the long run some resources these are some sites that i read regularly mainly focusing on the basic stuff 456 berea street a list apart css beauty css globe digital web magazine fadtastic vitamin ',1),(283,'field',14,' 1728 ',1),(284,'slug',0,' using dean edwards ie7 script ',1),(284,'title',0,' using dean edwards ie7 script ',1),(284,'field',2,' update dean edwards has updated his scripts i have written a new entry describing the updated ie7 scripts at an event apart boston eric meyer discussed how ie7 is quickly being adopted since this is the case we can treat ie6 as more of a secondary browser now we should all start to use the dean edwards ie7 script to bring ie6 up to par with standards compliant browsers the history behind the dean edwards script is that he wrote it when microsoft had said that they were not going to produce any more versions of internet explorer he wanted to provide a javascript solution to add more compliance to the browser using the script first download the dean edwards script next extract the files to the root of your webserver in a folder called ie7 it needs to be in this folder because some of the scripts have a dependency on the folder finally just include the script in the head of your document using conditional comments if lt ie 7 script src= ie7 ie7 standard p js type= text javascript script endif on the configuration page dean shows you which scripts do what by including the ie7 standard p js you get the support of the following scripts ie7 core js ie7 html4 js ie7 layout js ie7 css2 selectors js ie7 graphics js ie7 fixed js the only other script that i have included as well is the ie7 css3 selectors js to include support for css3 selectors think of all those wonderful attribute selectors you can start to use in your project it makes me all warm and tingly inside to think about where css can go when the browsers are up to the task enjoy this really should be one of the first steps you take in a project by doing this simple task you will save yourself from a lot of ie6 headaches sure this only works for ie6 users who have javascript enabled but honestly is there anyone who is using ie6 who actually turns off javascript if they do turn off javascript it may just break some presentation layer things but the site should still be perfectly usable ',1),(284,'field',14,' 1727 ',1),(285,'field',3,' news ',1),(285,'slug',0,' spider man 3 ',1),(285,'title',0,' spider man 3 ',1),(285,'field',2,' i was ordered by my fellow front end developer nate to write up a little blurb about what i thought about spider man 3 so i caught the 10 45 showing and the theater was packed i am going to go ahead and predict that it is going to break the record for weekend gross but yeah about the movie i would definitely say i enjoyed it while it is no movie that is going to win any award it is the typical spider man movie filled with action love and gratuitous humor i will say that were was about a 15 minute span where it almost feels like you are watching another movie it was just a bizarre sequence of events for the movie and i think they could have accomplished it in a different way if you liked the first 2 you will like this one this movie is a roller coaster of emotions for spiderman and it was well worth the price of admission ',1),(286,'slug',0,' improved navigation image replacement ',1),(286,'title',0,' improved navigation image replacement ',1),(286,'field',2,' so my co worker at work today was slicing a design and the designer said that the navigation had to be images being the good little accessibility people that we were we were trying to figure out a way to use images but have text also show up when images are disabled so my co worker went with the quick fix for now a javascript onmouseover solution and i told him that it was lame i told him there had to be a way to use css to do it i didnt have time to do it at work so i played with it and i have found a solution the markup ok so everyone knows to mark up navigation in an unordered list ul id= nav lia href= text to cover here a li lia href= text to cover here a li lia href= text to cover here a li lia href= text to cover here a li ul now instead of placing an image in the anchor tag and then using javascript to change the hover state i thought why not just add an extra span at the end of the anchor tag i chose the end but it also works with it at the beginning i think it makes more sense to have it at the end though so that the text within the anchor tag is read first by screen readers and bots so this is what our markup looks like now ul id= nav lia href= text to cover herespan span a li lia href= text to cover herespan span a li lia href= text to cover herespan span a li lia href= text to cover herespan span a li ul lets style it so i started off with just some normal styles that you would apply to a navigation zeroing out margins and paddings floating it removing the list styling and giving it a width next i floated the list items so that they would be in a line horizontally this is where it finally gets interesting i promise i styled the anchor tag like so ul nav li a background ffff99 display block height 30px padding 0 5px width 115px since this is just an example i put a random background color on to make sure it didnt show through in the final example and i gave them all the same width not a likely situation but i didnt feel like giving each list item an id that should be self explanatory enough now when i think back to the talk that eric meyer at an event apart boston he kept stressing that to a browser an element is just an element and you can do anything to it so my plan was to just set the anchor tag to be relatively positioned so that it would contain the span the next step is to add the background image to the span now one thing that needs to be realized is that you cannot use a transparent image but i dont think that really causes much of a problem in most cases ul nav li a span background url images content 2008 01 nav gif no repeat 0 30px cursor pointer display block height 30px left 0 position absolute top 0 width 125px the only things to note from that is that i combined the normal and hover states into one awesome image i wasnt worried about how pretty it looked i also had to add the cursor property for our best friend ie6 ok cool we are on our way now we just need to shift the background image on the hover state ul nav li a hover span background url images content 2008 01 nav gif no repeat 0 0 voila it works like a charm check out the example but did you check it in ie6 when i checked it in firefox and ie7 everything worked beautifully you can turn off the images and you get the text underneath when you do check it in ie6 you will notice that the hover states stay on its very odd after a lot of tinkering i finally found something that worked if you add the following to the anchor when it is in its hovered state it for some reason fixes it ul nav li a hover background 0 0 i have no explanation but it does not seem to have any adverse affects on other browsers lets bulletproof it we can add a simple property to the anchor tag so that when someone resizes their text it does not poke out from under the image ul nav li a background ffff99 display block height 30px overflow hidden added for bulletproofing padding 0 5px position relative width 115px check out the final example more bulletproofing if you wanted the text to resize gracefully when images are disabled i suppose you could set your height in ems then you would just need to build some extra blank space into your image so that it would work when images are enabled so hopefully that helps out my co worker i think it potentially solves a pretty big problem with css image navigation with images disabled ',1),(286,'field',14,' 1725 ',1),(287,'slug',0,' improved javascript striping ',1),(287,'title',0,' improved javascript striping ',1),(287,'field',2,' i am sure everyone has seen the javascript splintered striper which was shown during the 2005 24 ways to impress your friends or at least some variation of it a quick google for javascript striper came up with a ton of results well i ran into a little problem with the splintered striper and i have a solution to the problem the problem occurred if you had multiple class names on the element you are trying to stripe that may not make much sense so i guess an example will suffice striping example with problem say we start with the following markup ul class= stripe something lithis is an odd row li lithis is an even row li lithis is an odd row li lithis is an even row li lithis is an odd row li lithis is an even row li ul we are going to pretend that the class name something actually does something useful then using a javascript addloadevent function we will add the striping event to run on page load addloadevent function striper ul stripe li odd even essentially we have told the striper function to stripe all list elements li s that are descendants of unordered lists ul s with the class name of stripe then we want to apply the classes odd and even to the alternating list items here is where the problem lies since there are two classes on the unordered list the striper function does not recognize that it has a class name of stripe here is the problem in the code if parentelementclass == null currentparent classname == parentelementclass since we are just seeing if the class name of the current element is equal to the class name of stripe this is not true i have created a simple demo page with an unordered list table and paragraphs that are supposed to be striped fixing the striper really all you have to do to the javascript is to remove the line from above and replace with the lines below var pattern = new regexp parentelementclass $ if parentelementclass == null currentparent classname match pattern that takes the class name and splits is with a regular expression so now you could have fifty class names on the element and it will still work here is a little demo of the improved splintered striper im sure there is another way to do that easier so feel free to let me know if there is ',1),(287,'field',14,' 1724 ',1),(288,'slug',0,' i took the web design survey 2007 ',1),(288,'title',0,' i took the web design survey 2007 ',1),(288,'field',2,' i hope all you web people took the a list apart 2007 web design survey all it can do is get some wonderful statistics for us web nerds plus you get this sweet button so i urge everyone who has anything to do with the web to fill out the survey i did struggled with one question about what my specific job title is because there has been some recent debate about what exactly it is at my job my position is called webmaster recently we posted a new job css jedi front end developer this is my job title basically i helped to write the description for this job and this is what we decided that the actual job entails when we thought about webmaster we thought about a single person who is in charge of making minute updates to a single website but this is really not what i do sure i make small updates to my teams client sites but i also slice new designs as well i am also prototyping stuff all the time and do implementations so front end developer is suitable for me ',1),(288,'field',14,' 1723 ',1),(289,'slug',0,' css attribute selectors explained ',1),(289,'title',0,' css attribute selectors explained ',1),(289,'field',2,' so i had played around with css attribute selectors a little bit before i went to an event apart boston but i have a much better grasp of them now i gave a brief overview in my an event apart boston summary currently you really have to do some digging to figure out exactly how to use them but i hope this article explains them all better general information basically attribute selectors allow you to target elements based on their attributes i e alt href title etc in the table below you can see all the different options for attribute selectors attr whenever the attribute is set ex input type attr= val whenever the attribute equals the specific value ex input type= radio attr = val whenever the attribute equals one of the space separated list of values ex input type = radio checkbox attr = val whenever the attribute equals a hyphen separated list of words beginning with the value this one is supposed to be unreliable and i am a little confused by the specifications so i am not really sure of how to explain an example attr = val whenever the attribute contains the value ex a href = com attr = val whenever the attribute starts with the value ex a href = http attr$= val whenever the attribute ends with the value ex a href$= pdf ok so hopefully the general information makes them a little clearer and i hope the following examples make them very easy to use examples below i will give an example of each attribute selector and how it can be used attr ok so say maybe you want to style anchors that have the href attribute set to something this may help differentiate javascript anchors the css you want to add is like so a text decoration underline a href border bottom 1px dotted 999 text decoration none that will remove the underline and add a grey bottom border to anything that has the href attribute set attr= val ok so maybe you have added a green border to all input elements but then you dont want them on radio buttons so you add the following css input border 1px solid green input type= radio border none that will add a green border to all input elements except for radio buttons attr = val use the same example that you want to add a green border to all input elements except for radio buttons checkboxes and submit buttons the css you need is input border 1px solid green input type = radio checkbox submit border none so you get a green border on all input elements except radio buttons checkboxes and submit buttons attr = val ok so maybe you want to add a google favicon to every link to google add the following pretending you have a google favicon a href = google background url images googleicon gif no repeat 100% 50% padding right 25px so now any link to google http google com analytics http google com sitemaps etc will have the google favicon attr = val lets add an external link to all links that start with http a href = http background url images external gif no repeat 100% 50% padding right 25px now every link that starts with http will have an external link icon attr$= val ok now we should display an icon for any file types that we are linking to pdf doc xls a href$= pdf a href$= doc a href$= xls background position 100% 50% background repeat no repeat padding right 19px a href$= pdf background image url images pdf gif a href$= doc background image url images doc gif a href$= xls background image url images xls gif this is one of the coolest things for me no more adding extraneous markup in order to add an icon that shows the file type when linking to a file thats it i must say that this works in all browsers except ie 6 of course but if you use the dean edwards ie7 script and include the css 3 selectors it will work i will eventually give a rundown of how to use that script because i find the documentation a little hard to read so i hope everyone enjoys attribute selectors as much as i do ',1),(289,'field',14,' 1722 ',1),(290,'field',3,' web ',1),(290,'slug',0,' an event apart boston summary ',1),(290,'title',0,' an event apart boston summary ',1),(290,'field',2,' so i am finally getting around to writing up a summary of my time at an event apart boston i cant even express how much that i learned it was amazing to see so many respectable names in the web design development community all speak thank god for my company matrix group international for paying for myself and two co workers to go to the event so i thought i would give a quick run down of all of the events eric meyer secrets of a css jedi eric meyer started off the event with an wonderful talk showing the amazing things that are possible with css the first thing that he mentioned was that in order to get consistency between browser you should zero out the margins and paddings for every element except form elements people have been doing this by using the universal selector but by removing the margins and padddings for every element you can sometimes get weird results with form elements i mean conceptually what should happen when you add more padding to a radio button should the space between the circle and outline increase the other thing is that the universal selector takes more time to process than just having a large group selector his next point was that we need to realize that css doesnt care what element is doing what an element is an element which is when he turned a regular html table into a bar graph both vertical and horizontal basically he had a few classes and he was positioning the cells absolutely i am still not sure if it would have worked in ie 6 since it is so fussy at times he said he would post his html files at some point so i would be interested in testing in ie 6 it was just awesome to see the power of css and what we have to look forward to in the future as browsers get more and more powerful jeffrey zeldman writing the user interface jeffrey zeldman next spoke about writing content for the web when we look at the highest traffic sites on alexa it is not a coincidence that content heavy sites are at the top content is what drives traffic fresh copy is what counts more than looks people do not bookmark pages because of the images that are on it except for photographic sites they are bookmarking because of the content every instance of copy on a site is a brand opportunity and copy is often the easiest and cheapest part of a site to fix guide copy should be clear brief audience appropriate and brand appropriate web users are most often in find mode and they scan while monitors get better and better reading on the screen is much more fatiguing than reading print the keys to writing for the web is use frequent subheads chunk text use 8th grade vocabulary short declarative sentences i tell you zeldman really speaks well when he speaks you just get enthralled in what he is saying that is why i think working with him would be awesome it is too bad that the happy cog front end developer position requires you to be in philly i cant even imagine working with all of those awesome people at happy cog jason santa maria how to redesign your way out of a paper bag since i am not always the most creative person i was really interested in hearing this speech the first thing jason santa maria talked about was looking around you for inspiration keep a sketchbook keep morgue files whenever you see something in print that is cool put it into a file folder surround yourself in a creative environment but the best solution for seeking inspiration is to do research when happy cog was redesigning the comhaltas website they went and heard these people play the music and they hung out with them this gave them some insight into the music and gave them inspiration to create the design we also need to remember that design is iterative first you start with grey box comps which is where you focus on the idea and not minute details once satisfied with those you get into the specifics of each element when designing you need to consider things that will not look dated in a year another topic that i have recently read about in transcending css is about grid design this is not a new technique it is just something that people do not know how to do but basically by setting up a grid and designing by it you keep things in line and can create really clean and nicely defined lines this way you can plan for the placement of things even if you arent the one updating it jason said to embrace the whitespace which i think is something that is definitely being done in this whole web 2 0 thing the way to design is left to right top to bottom big to small just like how we read make sure there is enough contrast on elements and things do not have to be over styled on a side note jason had a little rant about how is not the same thing as ldquo and is not the same thing as rsquo and are used for feet and inches while and are used for quotation marks and apostrophes jasons speech really inspired me and i have since given up on my sister who was going to design my site for me i am just going to go for it steve krug the web usability diet i had heard steve krug give a similar speech at another conference but his points are still so valid he first begin by pointing out that even the best thought out products have usability flaws you can put it all the research and time creating the product but without testing it it can easily fail web user testing is easy to do round up a few volunteers have them follow a script where they will be asked to complete some tasks record it using software like camtasia then review with your team and see how much you screwed up oh yeah and pay your volunteers he made the point that you need to focus on the most serious ones until they are right it really does not take too much time and effort to realize that you have the problems the harder part is fixing them all the example that he used was to order a subscription of the new yorker magazine on magazines com without using the search function we found that it was not very easy time yourself only a handful of people did it in the alloted amount of time approximately 3 minutes he has used this example time and time again and magazines com still has not corrected the problem while usability testing is relatively easy sometimes it is hard to convince your clients of the value of it but honestly if money is involved there needs to be testing andrew kirkpatrick beyon basic access i must say andrew kirkpatrick did not have the most enthralling speech but it was an extremely hard topic to make interesting he spoke about how accessibility is more than just alt attributes label s th s or retaining information when javascript is disabled there are many different kinds of disabilities that users of the web have and we need to embrace all of them not just a few the whole gist of his speech was that we need to provide the name role and state of objects that users are interacting with for instance if you have a set of tabs these need to be named so that they make sense their role needs to be defined i e tabs and the current state of each tab needs to be readily accessible providing keyboard access to arrow over between tabs is a huge step forward yahoo and dojo are making great strides in this domain and their scripts are readily available dan cederholm interface design juggling dan cederholm may have given the best talk of the entire two days he was witty and his insight was great not to mention he is currently one of my favorite designers he first spoke about choosing color by starting with a small color palette and reusing variations of that set throughout the design you get a much more cohesive design a few ways to choose these palettes are grab a nature photo you like and use the color picker apply the mosaic filter in photoshop to any image and see the color combinations that are possible even such a simple thing as link color can carry great weight since links are the most important item of the web choosing a color that will stand out is important in dans definition great typography is invisible since there are not many universal fonts we just need to learn how to work with what we got one thing that dan does beautifully on his site is by styling his s beautifully it is such a small thing but just by adding one class it really adds that extra beauty to the page another interesting point that dan brought up was the importance of favicons these can be used when people link to your site they are used for bookmarks and we are seeing them more and more on mobile devices so essentially it is the first brand opportunity for your site dan also talked about adding small simple details without adding complexity by adding a simple 3px drop shadow on the bottom of a box it adds a lot of detail to the box without any extra markup finally dan talked about microformats i must say i was a little unclear about the benefits at first but after hearing his speech i totally understand them i thought it was all very confusing but essentially all that you are doing is adding a few universally accepted classes to elements as dan said we are really desiging for the future allowing people to do all sort of cool things with these universal classes oh and of course dan talked about being bulletproof check out what your site looks like with images disabled check it out with css disabled finally bump up the text two sizes opening night party restaurant 33 definitely the coolest bar i have ever been to restaurant 33 had these cool lighting effects all over the place and it was really entrancing not to mention the free food free drinks and people were cool too cameron moll good vs great design cameron moll is another wonderful designer and his talk seemed more conceptual than technical but it was still very interesting he first started taking about how there are some things that are just mapped naturally and that can help up determine how something works design is essentially communication but great design yields meaningful communication sure there may be some really creative people out there but if they dont know how to design for specific audiences then there talent is wasted cameron talked about how seeing things in greyscale can help to see the importance of specific elements in design he then went on to talk about how influence is almost cheap it can be found anywhere and copied anywhere while it can also be found anywhere inspiration is a much deeper thing finally cameron discussed the difference between redesigning just updating the look of the site and realigning adapting to your users changed needs he finished with the concept of fixing vs preventing by putting in more time up front to prevent things you will be saving time in the long run from fixing ethan marcotte web standards stole my truck ethn marcottes talk was a little boring to me because he didnt really discuss many new things to me he did make a few interesting points though while embracing standards may seen hard to non standardistas the benefits are huge lighter page weight better accessibility better seo one single document that can control the style of an entire site you can use the developer tools like firebug web developer toolbar out there you can decrease debugging time use borders and backgrounds to debug layout problems validate your code when all else fails just delete properties and start from scratch the most profound statement he made was that building a site with standards is easy but keeping it standards compliant is hard molly holzschlag building better browsers as many people heard molly holzschlag is going to do some work for microsoft to whip their browser into shape while at first i did not think mollys speech was going to be very interesting it turned out to be pretty good she first pointed out that browsers are software too they all have bugs also the browser history is not that long they are relatively young in software age since there are so many different interpretations to things it is easy to have many different approaches to implementation dont worry i still hate ie but after hearing her talk and thinking back to my programming days in college i have more respect for ie mollys browser pathways to success were create common baselines clarify ambiguous specifications use transparent development cycles keep an open dialog with the community foster events and networking microsoft was a sponsor of an event apart compete of ue and features eric meyer state of css in ie 7 world ok everyone lets admit it ie 7 is a huge step forward it can basically be considered on the same standards compliant level as firefox safari and opera the browser advanced so much in a standards sense i am not going to bore you with all of the things that are now possible in ie 7 that werent in ie 6 but i will point out one cool thing attribute selectors attribute selectors are awesome thats it maybe one of the coolest things in css by adding something like a href$= pdf to your css file you can add a pdf icon to all links to pdfs by adding something like a href = http you can target all external links an add an icon for that thats the long and short of it its awesome eric also encouraged everyone to make ie 6 more like ie 7 with dean edwards ie7 scripts via javascript you can make ie 6 act must like ie 7 i have played around with it a little and it is really cool use it spread the word jeffrey zeldman selling design jeffrey wrapped it up with an interesting discussion on choosing clients i have read a few articles recently about choosing clients and this just reinforced the point you do not need great clients you need great relationships you still need to choose your clients carefully and make sure not to choose indecisive clients or the work will never get done successfully the way to a good relationship is to involve the decision makers who are high up in the organization this makes them feel special everyone wants and needs to feel special sometimes our job is to sell ideas not pixels solve a problem with your design dont just create a design when responding to criticism figure out what they mean by it why dont they like that color they also need to realize that the site is not about the stakeholders it is about the users when all else fails push back look into it agree with them surprise thats it i must say it was awesome i cant wait to find some time to actually do my site design if ever you have the change go to an event apart event everything was very well organized and i learned a lot thanks to everyone at an event apart happy cog and the speakers ',1),(319,'field',15,' html css javascript ',1),(291,'field',3,' news ',1),(291,'slug',0,' an event apart boston ',1),(291,'title',0,' an event apart boston ',1),(291,'field',2,' so my company is paying for two other webmasters and myself to go to an event apart boston it is not too often that you can get this many amazing names in the field of web development together in one place i think i am really looking forward to the more design centered events like redesigning your way out of a paper bag by jason santa maria good vs great design by cameron moll selling design by jeffrey zeldman while i cant wait to go to all of the events these are the ones i really cant wait to go to i feel like i have a amazing grasp of the technical side of web development i e css xthml etc but i wish i could become better at the design side that is what i hope to get better at in the next few months i will post an update after the show and give a rundown of the speakers ',1),(292,'slug',0,' problems with commenting ',1),(292,'title',0,' problems with commenting ',1),(292,'field',2,' so in the quest to abolish the www from my url i seemed to have broken movable type comments i added the following to my htaccess file rewriteengine on rewritecond % http host www trevor davis com$ nc rewriterule $ trevor davis com $1 r=301 l that means whenever anyone tried to go to www trevor davis com they were redirected to trevor davis com my co worker adrian told me today that when he was trying to add a comment to one of my entries he got an error that said no entry id after much googling i finally determined it was because of the url rewriting i could not really find a solution but i finally went into the mt config cgi file and found out that when i had setup the site i set it up with www trevor davis com for some reason this broke the comments i changed it to trevor davis com and my quest to abolish the www continues ',1),(292,'field',14,' 1719 ',1),(293,'field',3,' web ',1),(293,'slug',0,' the rise of flash again ',1),(293,'title',0,' the rise of flash again ',1),(293,'field',2,' this week there was an a list apart article called semantic flash slippery when wet when i first started learning about web standards i hated flash i thought that it was really all just bells and whistles and nothing useful as time has passed i have realized that there are some situations where flash can be useful first there was the sifr scalable inman flash replacement earlier this week there was the introduction of swfir swf image replacement i think this technique seems really cool and there are definitely situations where i would be interested in using it just adding a simple drop shadow and rotating the image a few degrees really add a nice effect to the image my only problem is that i think it may be overused i hope that people dont get so flash happy that they use it for all images on their site the same goes for the sifr technique i hope that people only utilize these techniques in moderation and we dont see it all over the place i have a feeling that we are going to start seeing more and more flash out there and i really hope that we dont see it used the way it used to be i still cannot understand how a person can build an all flash site and feel good about themselves does it make them happy that people with screen readers would have problems using their site i guess it must make someone happy since people are still doing it as a side note i have played around with the swfir script and it was very very easy to implement ',1),(294,'field',3,' web ',1),(294,'slug',0,' learning from mistakes ',1),(294,'title',0,' learning from mistakes ',1),(294,'field',2,' you really do get better through experience the best experience is learning from your mistakes i learned a great deal from one experience in particular about 2 months ago i did some work for the a pretty high profile client their regular webmaster was going to be out of town during the busiest time of the year for them and i had agreed to help them update the site for the next 2 weeks over the phone i had been in contact with a representative and we had agreed on a set price for the 2 weeks we had guesstimated that i would do approximately 2 hours of work a night that was mistake number 1 i should have gotten something in writing at least an email to confirm how much we had agreed on would have worked nick gould wrote an excellent article entitled web design contracts why bother nick says a written contract wont always avoid this outcome ive had clients tell me with a straight face that they didnt realize we were billing for each hour of work despite a clear statement in our contract to that effect but in that case i could at least point back to the contract language humbly mumbling apologies as i did so as evidence of his misunderstanding this is exactly what i would have been able to do if i had what we had agreed on in writing for the future i plan on doing the following before starting any work write detailed contracts that clearly explain the pricing the deliverables the process and the payment discuss any questions about the contract with the client wait for an initial payment from the client i would recommend that anyone doing freelance work do the same take some time to review nicks article and take the time to write these contracts in the end it is only going to help you to top it all off the guy offered me some gear to make up for the money that he refused to pay me no thanks a t shirt does not make up for the fact that you cheated me on a side note the site was a disaster to work on it was poorly organized still used tables for layout and did not use includes effectively it is so sad to see a site that has such high visibility be so poor apparently they just launched a redesign and guess what it still uses tables for layout hopefully they will at least utilize stylesheets and includes just for fun if you dont have it already download the web developer toolbar go to some big name sites and go to outline table cells see how many big organizations are still so far behind in their adherence to web standards when are these companies going to realize that the web is such a valuable tool for their marketing campaign i guess that is a topic for another conversation ',1),(321,'field',15,' html css javascript ',1),(295,'slug',0,' web design development process ',1),(295,'title',0,' web design development process ',1),(295,'field',2,' what are the steps that you go through when making a web site are you adding a lot of extra div and span tags do you have way too many classes maybe you should reconsider your process the process that i have found effective is exactly what i am doing with this site create the markup for everything add divs that make sense i e header content footer go in and implement the design adding the necessary divs and classes your markup will become much less bloated and you will have less non semantic elements sure you may have to add a couple of extra div tags to add those rounded corners but its better to add those after you have the structure in place while i could easily come up with a design for this site i really am not as creative as my sister is that is why i have tasked her with coming up with a logo and a design for my site then when it is time for her to build her online portfolio i will help her to implement the site how can you improve your design development process can you improve mine share your methods ',1),(295,'field',14,' 1716 ',1),(296,'slug',0,' web standards what dont they get ',1),(296,'title',0,' web standards what dont they get ',1),(296,'field',2,' i still dont understand why people refuse to embrace web standards is there an advantage to using tables for layout yeah that bloated code and horribly inaccessible code sure sounds great to me too you know what sounds better to me some nice lean code with a stylesheet to control the style on the site there are two sites that i know of that have paid a lot of money to have their sites redesigned my high school georgetown prep a site that i provided maintenance for a few weeks the orange bowl try viewing the source of those sites yuck it hurts me to look at that they paid good money for that how can we educate the companies who built these sites to actually embrace web standards the web standards project is a great start hopefully they can help to educate others but they cant do it alone all web developers who embrace standards need to educate when they have the opportunity we also need to help fight against microsoft and their terrible product internet explorer sure ie 7 is a huge improvement but it still stinks or how about the fact that outlook 2007s html rendering engine will use words engine instead of ies that sets html emails back a good ten years or so embrace web standards keep on fighting the good fight ',1),(296,'field',14,' 1715 ',1),(297,'slug',0,' css forms ',1),(297,'title',0,' css forms ',1),(297,'field',2,' everyone hates forms they are hard to style so that they work with your site design they are hard to make them accessible yeah yeah we have heard it all but in reality they are not that hard to do since every other web developer designer has their own method i thought i would share my two cents when thinking through all of the html elements to find something that makes sense for forms there are many options unordered list ordered list divs paragraphs tables yes some people still use tables for forms there are probably others but i like to use a more uncommon element a definition list it is perfect for the job you have got the definition term which is essentially like the label then you have got the definition description which is basically the actual form element lets start with some un styled markup form action= method= post name= sendtofriendform id= sendtofriendform dl class= forms dtlabel for= name your name label dt ddinput name= name id= name type= text dd dtlabel for= senderemail your email address span class= required span label dt ddinput name= senderemail id= senderemail type= text dd dtlabel for= recipientemail friends email address span class= required span label dt ddinput name= recipientemail id= recipientemail type= text dd dd class= help use commas to separate multiple email addresses dd dtlabel for= sex sex label dt dd class= radio input name= sex id= male type= radio label for= male male label input name= sex id= female type= radio label for= female female label dd dtlabel for= message message label dt ddtextarea name= message id= message textarea dd dl button type= submit submit button form i have created the page so you can see the output even un styled this form doesnt even look bad but lets add some style form margin 0 padding 0 dl forms float left width 100% dl forms dt margin 0 padding 10px 0 0 0 clear left float left width 175px dl forms label font weight bold dl forms dd margin 0 padding 10px 0 0 0 dl forms dd help clear left padding top 2px font size 90% color 999 dl forms input dl forms textarea width 300px dl forms dd radio input width auto dl forms textarea height 150px required color ff0000 font weight bold i dont think i need to go step by step through that because it is pretty simple styling i have created the styled page for you to see i personally like forms that have the label and the input element on the same line but thats just me it is pretty flexible try resizing the font two times still very readable you could easily do the widths in ems or percentages i just chose to use pixels since i dont have any parent element containing it should be pretty good in all browsers especially since we didnt do any crazy css i know it looks good in ff ie6 and ie7 i believe it works fine in safari and opera obviously this isnt the be all and end all to styling forms with css but it is something to start with so go out and make it better but be sure to share what you have created ',1),(46,'field',3,' javascript presentations ',1),(49,'field',3,' css ',1),(51,'field',14,' 2021 ',1),(54,'field',3,' expressionengine presentations ',1),(56,'field',3,' css presentations ',1),(57,'field',14,' 2016 ',1),(59,'field',3,' asides css ',1),(60,'field',3,' expressionengine ',1),(62,'field',3,' html thoughts ',1),(65,'field',3,' css expressionengine html presentations ',1),(66,'field',4,' http www viget com inspire css generated content ',1),(67,'field',3,' web ',1),(69,'field',14,' 1986 ',1),(70,'field',14,' 1972 ',1),(71,'field',3,' expressionengine ',1),(72,'field',14,' 1968 ',1),(73,'field',3,' asides javascript ',1),(74,'field',3,' javascript tutorial ',1),(76,'field',14,' 1961 ',1),(77,'field',14,' 1960 ',1),(79,'field',3,' asides javascript ',1),(80,'field',14,' 1957 ',1),(81,'field',3,' javascript tutorial ',1),(83,'field',14,' 1951 ',1),(84,'field',3,' asides javascript ',1),(85,'field',3,' asides javascript ',1),(86,'field',3,' asides javascript ',1),(87,'field',14,' 1947 ',1),(88,'field',3,' asides ',1),(89,'field',3,' asides ',1),(91,'field',3,' asides ',1),(92,'field',3,' asides ',1),(93,'field',3,' asides ',1),(95,'field',14,' 1938 ',1),(96,'field',3,' asides ',1),(97,'field',3,' expressionengine tutorial ',1),(99,'field',3,' asides ',1),(100,'field',3,' asides ',1),(101,'field',14,' 1932 ',1),(102,'field',3,' asides ',1),(103,'field',3,' javascript tutorial ',1),(104,'field',3,' expressionengine tutorial ',1),(105,'field',3,' news ',1),(106,'field',14,' 1926 ',1),(107,'field',3,' asides ',1),(108,'field',14,' 1924 ',1),(109,'field',14,' 1923 ',1),(110,'field',14,' 1922 ',1),(111,'field',14,' 1921 ',1),(112,'field',14,' 1920 ',1),(113,'field',14,' 1919 ',1),(114,'field',14,' 1918 ',1),(115,'field',14,' 1917 ',1),(116,'field',3,' asides ',1),(117,'field',3,' asides expressionengine ',1),(118,'field',3,' web ',1),(119,'field',3,' asides ',1),(120,'field',3,' asides ',1),(121,'field',3,' expressionengine web ',1),(122,'field',3,' asides ',1),(123,'field',14,' 1908 ',1),(124,'field',3,' asides javascript ',1),(126,'field',3,' asides ',1),(127,'field',3,' asides ',1),(128,'field',14,' 1903 ',1),(129,'field',14,' 1902 ',1),(130,'field',3,' asides ',1),(131,'field',3,' javascript tutorial ',1),(132,'field',3,' asides ',1),(133,'field',3,' asides ',1),(134,'field',3,' asides ',1),(135,'field',3,' tutorial ',1),(136,'field',3,' asides ',1),(137,'field',3,' tutorial ',1),(138,'field',3,' asides ',1),(139,'field',3,' asides ',1),(140,'field',3,' asides ',1),(141,'field',3,' expressionengine tutorial ',1),(142,'field',3,' tutorial ',1),(143,'field',3,' asides ',1),(144,'field',3,' asides ',1),(145,'field',3,' asides ',1),(146,'field',14,' 1865 ',1),(147,'field',3,' asides ',1),(148,'field',3,' javascript tutorial ',1),(149,'field',3,' asides ',1),(150,'field',3,' asides ',1),(151,'field',3,' asides ',1),(152,'field',3,' javascript tutorial ',1),(153,'field',3,' asides ',1),(154,'field',3,' asides ',1),(155,'field',14,' 1856 ',1),(156,'field',3,' asides ',1),(157,'field',14,' 1854 ',1),(159,'field',3,' asides ',1),(160,'field',14,' 1851 ',1),(161,'field',3,' asides ',1),(162,'field',3,' asides ',1),(163,'field',3,' asides ',1),(164,'field',3,' asides ',1),(166,'field',14,' 1845 ',1),(167,'field',3,' asides ',1),(168,'field',14,' 1843 ',1),(169,'field',14,' 1842 ',1),(170,'field',3,' javascript tutorial ',1),(171,'field',14,' 1840 ',1),(172,'field',14,' 1839 ',1),(173,'field',3,' web ',1),(174,'field',14,' 1837 ',1),(175,'field',14,' 1836 ',1),(177,'field',14,' 1834 ',1),(754,'title',0,' gopole ',1),(179,'field',14,' 1832 ',1),(180,'field',14,' 1831 ',1),(181,'field',14,' 1830 ',1),(182,'field',14,' 1829 ',1),(183,'field',3,' web ',1),(184,'field',14,' 1827 ',1),(185,'field',14,' 1826 ',1),(186,'field',14,' 1825 ',1),(187,'field',3,' javascript tutorial ',1),(188,'field',14,' 1823 ',1),(189,'field',14,' 1822 ',1),(190,'field',14,' 1821 ',1),(191,'field',14,' 1820 ',1),(192,'field',14,' 1819 ',1),(193,'field',14,' 1818 ',1),(194,'field',3,' web ',1),(195,'field',3,' news ',1),(196,'field',14,' 1815 ',1),(197,'field',3,' web ',1),(198,'field',14,' 1813 ',1),(199,'field',3,' javascript tutorial ',1),(200,'field',14,' 1811 ',1),(201,'field',14,' 1810 ',1),(202,'field',14,' 1809 ',1),(203,'field',3,' web ',1),(204,'field',14,' 1807 ',1),(205,'field',3,' tutorial ',1),(206,'field',14,' 1805 ',1),(207,'field',3,' javascript tutorial ',1),(208,'field',14,' 1803 ',1),(209,'field',14,' 1802 ',1),(210,'field',3,' javascript tutorial ',1),(211,'field',14,' 1800 ',1),(212,'field',3,' news ',1),(213,'field',14,' 1798 ',1),(214,'field',14,' 1797 ',1),(215,'field',14,' 1796 ',1),(216,'field',14,' 1795 ',1),(217,'field',3,' tutorial ',1),(218,'field',14,' 1793 ',1),(219,'field',14,' 1792 ',1),(220,'field',14,' 1791 ',1),(221,'field',14,' 1790 ',1),(222,'field',3,' tutorial ',1),(223,'field',14,' 1788 ',1),(224,'field',3,' news ',1),(225,'field',14,' 1786 ',1),(226,'field',3,' tutorial ',1),(227,'field',14,' 1784 ',1),(228,'field',14,' 1783 ',1),(229,'field',3,' thoughts ',1),(230,'field',14,' 1781 ',1),(231,'field',3,' thoughts ',1),(232,'field',14,' 1779 ',1),(233,'field',3,' tutorial ',1),(234,'field',14,' 1777 ',1),(235,'field',3,' tutorial ',1),(236,'field',14,' 1775 ',1),(237,'field',14,' 1774 ',1),(238,'field',14,' 1773 ',1),(239,'field',3,' news ',1),(240,'field',14,' 1771 ',1),(241,'field',14,' 1770 ',1),(242,'field',14,' 1769 ',1),(243,'field',14,' 1768 ',1),(244,'field',14,' 1767 ',1),(245,'field',14,' 1766 ',1),(246,'field',3,' news ',1),(247,'field',14,' 1764 ',1),(248,'field',3,' news ',1),(249,'field',14,' 1762 ',1),(250,'field',14,' 1761 ',1),(251,'field',3,' tutorial ',1),(252,'field',14,' 1759 ',1),(253,'field',14,' 1758 ',1),(254,'field',14,' 1757 ',1),(255,'field',14,' 1756 ',1),(256,'field',14,' 1755 ',1),(257,'field',14,' 1754 ',1),(258,'field',3,' tutorial ',1),(259,'field',14,' 1752 ',1),(260,'field',14,' 1751 ',1),(261,'field',14,' 1750 ',1),(262,'field',14,' 1749 ',1),(263,'field',3,' web ',1),(264,'field',14,' 1747 ',1),(265,'field',14,' 1746 ',1),(266,'field',14,' 1745 ',1),(267,'field',3,' web ',1),(268,'field',14,' 1743 ',1),(269,'field',14,' 1742 ',1),(270,'field',14,' 1741 ',1),(271,'field',14,' 1740 ',1),(272,'field',14,' 1739 ',1),(273,'field',14,' 1738 ',1),(274,'field',14,' 1737 ',1),(275,'field',14,' 1736 ',1),(276,'field',3,' tutorial ',1),(277,'field',14,' 1734 ',1),(278,'field',14,' 1733 ',1),(279,'field',14,' 1732 ',1),(280,'field',3,' web ',1),(281,'field',14,' 1730 ',1),(282,'field',3,' web ',1),(283,'field',3,' web ',1),(284,'field',3,' tutorial ',1),(285,'field',14,' 1726 ',1),(286,'field',3,' tutorial ',1),(287,'field',3,' tutorial ',1),(288,'field',3,' news ',1),(289,'field',3,' tutorial ',1),(290,'field',14,' 1721 ',1),(291,'field',14,' 1720 ',1),(292,'field',3,' web ',1),(293,'field',14,' 1718 ',1),(294,'field',14,' 1717 ',1),(295,'field',3,' web ',1),(296,'field',3,' web ',1),(298,'slug',0,' orbcomm ',1),(298,'title',0,' orbcomm ',1),(298,'field',2,' building this site gave me the opportunity to build a site with craft something i had been itching to use on a project for some time my role in the project was to build the front end of the site configure craft and then integrate the two in building this site i also created three craft plugins bust listing section and reroute ',1),(298,'field',4,'',1),(298,'field',5,' orbcomm featured ',1),(298,'field',6,' orbcomm home homepage orbcomm networks networks page orbcomm modems chipsets modems chipsets page orbcomm technologies technologies page orbcomm contact contact page ',1),(299,'name',0,' craft ',1),(300,'name',0,' css ',1),(301,'name',0,' html ',1),(302,'name',0,' javascript ',1),(303,'field',4,'',1),(303,'title',0,' lansinoh ',1),(303,'slug',0,' lansinoh ',1),(303,'field',2,' i sure didnt know it before i started the project but lansinoh is one of the leaders in the breastfeeding industry since mobile accounted for 47% of visits building a site to adapt to any device was a must my role in the project was to build the front end of the site and integrate with expressionengine which included ecommerce user submission forms and a store finder this was probably the most complex expressionengine site that i have built to date ',1),(303,'field',16,'',1),(303,'field',15,' expressionengine html css javascript ',1),(303,'field',6,' lansinoh home homepage lansinoh product category breastfeeding lansinoh product show product lansinoh moms stories moms stories lansinoh where to buy where to buy lansinoh cart cart lansinoh contact us contact us homepage small screen lansinoh home small homepage small screen with navigation open lansinoh home small nav open pumping small screen lansinoh product category small ',1),(304,'name',0,' expressionengine ',1),(305,'slug',0,' nea ',1),(305,'title',0,' nea ',1),(305,'field',2,' nea is a leading a leading global venture capital firm who came to viget to redesign their website we rebuilt the site to adapt to whatever size screen it is being viewed on and my role was to build the front end of the site and integrate into expressionengine ',1),(305,'field',4,' http www nea com ',1),