/** * Phalcon_Acl_Role description * * @param string $name * @param string $description */ PHP_METHOD(Phalcon_Acl_Role, __construct){ zval *v0 = NULL, *v1 = NULL; zval *i0 = NULL; zval *p0[] = { NULL }; PHALCON_MM_GROW(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z|z", &v0, &v1) == FAILURE) { PHALCON_MM_RESTORE(); RETURN_NULL(); } if (!v1) { PHALCON_INIT_VAR(v1); ZVAL_STRING(v1, "", 1); } if (PHALCON_COMPARE_STRING(v0, "*")) { PHALCON_ALLOC_ZVAL_MM(i0); object_init_ex(i0, phalcon_acl_exception_class_entry); PHALCON_INIT_VAR(p0[0]); ZVAL_STRING(p0[0], "Role name cannot be \"*\"", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(i0, "__construct", 1, p0, PHALCON_CALL_CHECK); zend_throw_exception_object(i0 TSRMLS_CC); Z_ADDREF_P(i0); PHALCON_MM_RESTORE(); return; } phalcon_update_property_zval(this_ptr, "_name", strlen("_name"), v0 TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_description", strlen("_description"), v1 TSRMLS_CC); PHALCON_MM_RESTORE(); RETURN_NULL(); }
/** * Returns connection related to transaction * * @return Phalcon_Db */ PHP_METHOD(Phalcon_Transaction, getConnection){ zval *t0 = NULL, *t1 = NULL; zval *r0 = NULL; zval *p1[] = { NULL }; PHALCON_MM_GROW(); PHALCON_ALLOC_ZVAL_MM(t0); phalcon_read_property(&t0, this_ptr, "_rollbackOnAbort", sizeof("_rollbackOnAbort")-1, PHALCON_NOISY_FETCH TSRMLS_CC); if (zend_is_true(t0)) { PHALCON_ALLOC_ZVAL_MM(r0); PHALCON_CALL_FUNC(r0, "connection_aborted", 0x043); if (zend_is_true(r0)) { PHALCON_INIT_VAR(p1[0]); ZVAL_STRING(p1[0], "The request was aborted", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(this_ptr, "rollback", 1, p1, PHALCON_CALL_DEFAULT); } } PHALCON_ALLOC_ZVAL_MM(t1); phalcon_read_property(&t1, this_ptr, "_connection", sizeof("_connection")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_RETURN_CHECK_CTOR(t1); }
/** * Phalcon_Db_Column constructor * * @param string $columnName * @param array $definition */ PHP_METHOD(Phalcon_Db_Column, __construct){ zval *v0 = NULL, *v1 = NULL; zval *r0 = NULL, *r1 = NULL, *r2 = NULL, *r3 = NULL, *r4 = NULL, *r5 = NULL, *r6 = NULL; zval *r7 = NULL, *r8 = NULL, *r9 = NULL; zval *i0 = NULL, *i1 = NULL, *i2 = NULL; zval *t0 = NULL, *t1 = NULL, *t2 = NULL, *t3 = NULL; zval *p0[] = { NULL }, *p1[] = { NULL }, *p2[] = { NULL }; int eval_int; PHALCON_MM_GROW(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zz", &v0, &v1) == FAILURE) { PHALCON_MM_RESTORE(); RETURN_NULL(); } phalcon_update_property_zval(this_ptr, "_columnName", strlen("_columnName"), v0 TSRMLS_CC); eval_int = phalcon_array_isset_string(v1, "type", strlen("type")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(r0); phalcon_array_fetch_string(&r0, v1, "type", strlen("type"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_type", strlen("_type"), r0 TSRMLS_CC); } else { PHALCON_ALLOC_ZVAL_MM(i0); object_init_ex(i0, phalcon_db_exception_class_entry); PHALCON_INIT_VAR(p0[0]); ZVAL_STRING(p0[0], "Column type is required", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(i0, "__construct", 1, p0, PHALCON_CALL_CHECK); zend_throw_exception_object(i0 TSRMLS_CC); Z_ADDREF_P(i0); PHALCON_MM_RESTORE(); return; } eval_int = phalcon_array_isset_string(v1, "notNull", strlen("notNull")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(r1); phalcon_array_fetch_string(&r1, v1, "notNull", strlen("notNull"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_notNull", strlen("_notNull"), r1 TSRMLS_CC); } eval_int = phalcon_array_isset_string(v1, "size", strlen("size")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(r2); phalcon_array_fetch_string(&r2, v1, "size", strlen("size"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_size", strlen("_size"), r2 TSRMLS_CC); } eval_int = phalcon_array_isset_string(v1, "scale", strlen("scale")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(t0); phalcon_read_property(&t0, this_ptr, "_type", sizeof("_type")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_INIT_VAR(t1); ZVAL_LONG(t1, 3); PHALCON_ALLOC_ZVAL_MM(r3); is_equal_function(r3, t0, t1 TSRMLS_CC); if (zend_is_true(r3)) { PHALCON_ALLOC_ZVAL_MM(r4); phalcon_array_fetch_string(&r4, v1, "scale", strlen("scale"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_scale", strlen("_scale"), r4 TSRMLS_CC); } else { PHALCON_ALLOC_ZVAL_MM(i1); object_init_ex(i1, phalcon_db_exception_class_entry); PHALCON_INIT_VAR(p1[0]); ZVAL_STRING(p1[0], "Column type does not support scale parameter", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(i1, "__construct", 1, p1, PHALCON_CALL_CHECK); zend_throw_exception_object(i1 TSRMLS_CC); Z_ADDREF_P(i1); PHALCON_MM_RESTORE(); return; } } eval_int = phalcon_array_isset_string(v1, "unsigned", strlen("unsigned")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(r5); phalcon_array_fetch_string(&r5, v1, "unsigned", strlen("unsigned"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_unsigned", strlen("_unsigned"), r5 TSRMLS_CC); } eval_int = phalcon_array_isset_string(v1, "autoIncrement", strlen("autoIncrement")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(t2); phalcon_read_property(&t2, this_ptr, "_type", sizeof("_type")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_INIT_VAR(t3); ZVAL_LONG(t3, 0); PHALCON_ALLOC_ZVAL_MM(r6); is_equal_function(r6, t2, t3 TSRMLS_CC); if (zend_is_true(r6)) { PHALCON_ALLOC_ZVAL_MM(r7); phalcon_array_fetch_string(&r7, v1, "autoIncrement", strlen("autoIncrement"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_autoIncrement", strlen("_autoIncrement"), r7 TSRMLS_CC); } else { PHALCON_ALLOC_ZVAL_MM(i2); object_init_ex(i2, phalcon_db_exception_class_entry); PHALCON_INIT_VAR(p2[0]); ZVAL_STRING(p2[0], "Column type cannot be auto-increment", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(i2, "__construct", 1, p2, PHALCON_CALL_CHECK); zend_throw_exception_object(i2 TSRMLS_CC); Z_ADDREF_P(i2); PHALCON_MM_RESTORE(); return; } } eval_int = phalcon_array_isset_string(v1, "first", strlen("first")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(r8); phalcon_array_fetch_string(&r8, v1, "first", strlen("first"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_first", strlen("_first"), r8 TSRMLS_CC); } eval_int = phalcon_array_isset_string(v1, "after", strlen("after")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(r9); phalcon_array_fetch_string(&r9, v1, "after", strlen("after"), PHALCON_NOISY_FETCH TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_after", strlen("_after"), r9 TSRMLS_CC); } PHALCON_MM_RESTORE(); RETURN_NULL(); }
/** * Dispatches a controller action taking into account the routing parameters * * @param Phalcon_Request $request * @param Phalcon_Response $response * @param Phalcon_View $view * @param Phalcon_Model_Manager $model * @return Phalcon_Controller */ PHP_METHOD(Phalcon_Dispatcher, dispatch){ zval *request = NULL, *response = NULL, *view = NULL, *model = NULL, *controllers_dir = NULL; zval *value = NULL, *controller = NULL, *number_dispatches = NULL; zval *controller_name = NULL, *controllers = NULL, *controller_class = NULL; zval *controller_path = NULL, *params = NULL, *action_name = NULL; zval *action_method = NULL; zval *r0 = NULL, *r1 = NULL, *r2 = NULL, *r3 = NULL, *r4 = NULL, *r5 = NULL, *r6 = NULL; zval *r7 = NULL, *r8 = NULL, *r9 = NULL, *r10 = NULL, *r11 = NULL, *r12 = NULL; zval *t0 = NULL, *t1 = NULL, *t2 = NULL, *t3 = NULL, *t4 = NULL, *t5 = NULL, *t6 = NULL; zval *t7 = NULL, *t8 = NULL, *t9 = NULL, *t10 = NULL; zval *c0 = NULL, *c1 = NULL, *c2 = NULL; zval *i0 = NULL; zval *a0 = NULL, *a1 = NULL; zval *p0[] = { NULL, NULL, NULL, NULL, NULL }; int eval_int; zend_class_entry *ce0; PHALCON_MM_GROW(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zz|zz", &request, &response, &view, &model) == FAILURE) { PHALCON_MM_RESTORE(); RETURN_NULL(); } if (!view) { PHALCON_INIT_VAR(view); ZVAL_NULL(view); } if (!model) { PHALCON_INIT_VAR(model); ZVAL_NULL(model); } PHALCON_ALLOC_ZVAL_MM(r0); PHALCON_ALLOC_ZVAL_MM(t0); phalcon_read_property(&t0, this_ptr, SL("_basePath"), PHALCON_NOISY TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(t1); phalcon_read_property(&t1, this_ptr, SL("_controllersDir"), PHALCON_NOISY TSRMLS_CC); PHALCON_CONCAT_VV(r0, t0, t1); PHALCON_CPY_WRT(controllers_dir, r0); PHALCON_INIT_VAR(value); ZVAL_NULL(value); PHALCON_INIT_VAR(controller); ZVAL_NULL(controller); PHALCON_INIT_VAR(number_dispatches); ZVAL_LONG(number_dispatches, 0); phalcon_update_property_bool(this_ptr, SL("_finished"), 0 TSRMLS_CC); ws_e10f_0: PHALCON_INIT_VAR(t2); phalcon_read_property(&t2, this_ptr, SL("_finished"), PHALCON_NOISY TSRMLS_CC); if (zend_is_true(t2)) { goto we_e10f_0; } phalcon_update_property_bool(this_ptr, SL("_finished"), 1 TSRMLS_CC); PHALCON_INIT_VAR(t3); phalcon_read_property(&t3, this_ptr, SL("_controllerName"), PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(controller_name, t3); if (!zend_is_true(controller_name)) { PHALCON_INIT_VAR(t4); phalcon_read_property(&t4, this_ptr, SL("_defaultController"), PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(controller_name, t4); phalcon_update_property_zval(this_ptr, SL("_controllerName"), controller_name TSRMLS_CC); } PHALCON_INIT_VAR(t5); phalcon_read_property(&t5, this_ptr, SL("_controllers"), PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(controllers, t5); PHALCON_INIT_VAR(r1); PHALCON_INIT_VAR(r2); PHALCON_CALL_STATIC_PARAMS_1(r2, "phalcon_text", "camelize", controller_name); PHALCON_CONCAT_VS(r1, r2, "Controller"); PHALCON_CPY_WRT(controller_class, r1); eval_int = phalcon_array_isset(controllers, controller_class); if (!eval_int) { PHALCON_INIT_VAR(c0); ZVAL_BOOL(c0, 0); PHALCON_INIT_VAR(r3); PHALCON_CALL_FUNC_PARAMS_2(r3, "class_exists", controller_class, c0); if (!zend_is_true(r3)) { PHALCON_INIT_VAR(r4); PHALCON_CONCAT_VVS(r4, controllers_dir, controller_class, ".php"); PHALCON_CPY_WRT(controller_path, r4); if (phalcon_file_exists(controller_path TSRMLS_CC) == SUCCESS) { if (phalcon_require(controller_path TSRMLS_CC) == FAILURE) { return; } } else { PHALCON_INIT_VAR(r5); PHALCON_CONCAT_SVS(r5, "File for controller class ", controller_class, " doesn't exist"); PHALCON_CALL_METHOD_PARAMS_2_NORETURN(this_ptr, "_throwdispatchexception", response, r5, PHALCON_NO_CHECK); } PHALCON_INIT_VAR(c1); ZVAL_BOOL(c1, 0); PHALCON_INIT_VAR(r6); PHALCON_CALL_FUNC_PARAMS_2(r6, "class_exists", controller_class, c1); if (!zend_is_true(r6)) { PHALCON_INIT_VAR(r7); PHALCON_CONCAT_SVS(r7, "Class ", controller_class, " was not found on controller file"); PHALCON_CALL_METHOD_PARAMS_2_NORETURN(this_ptr, "_throwdispatchexception", response, r7, PHALCON_NO_CHECK); } } ce0 = phalcon_fetch_class(controller_class TSRMLS_CC); PHALCON_INIT_VAR(i0); object_init_ex(i0, ce0); p0[0] = this_ptr; p0[1] = request; p0[2] = response; p0[3] = view; p0[4] = model; PHALCON_CALL_METHOD_PARAMS_NORETURN(i0, "__construct", 5, p0, PHALCON_CHECK); PHALCON_CPY_WRT(controller, i0); if (phalcon_method_exists_ex(controller, SL("initialize") TSRMLS_CC) == SUCCESS) { PHALCON_CALL_METHOD_NORETURN(controller, "initialize", PHALCON_NO_CHECK); } PHALCON_INIT_VAR(t6); phalcon_read_property(&t6, this_ptr, SL("_controllers"), PHALCON_NOISY TSRMLS_CC); phalcon_array_update(&t6, controller_class, &controller, PHALCON_NO_SEPARATE_THX, PHALCON_COPY, PHALCON_NO_CTOR TSRMLS_CC); phalcon_update_property_zval(this_ptr, SL("_controllers"), t6 TSRMLS_CC); } else { PHALCON_INIT_VAR(r8); phalcon_array_fetch(&r8, controllers, controller_class, PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(controller, r8); } PHALCON_INIT_VAR(t7); phalcon_read_property(&t7, this_ptr, SL("_params"), PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(params, t7); PHALCON_INIT_VAR(t8); phalcon_read_property(&t8, this_ptr, SL("_actionName"), PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(action_name, t8); if (!zend_is_true(action_name)) { PHALCON_INIT_VAR(t9); phalcon_read_property(&t9, this_ptr, SL("_defaultAction"), PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(action_name, t9); phalcon_update_property_zval(this_ptr, SL("_actionName"), action_name TSRMLS_CC); } if (phalcon_method_exists_ex(controller, SL("beforedispatch") TSRMLS_CC) == SUCCESS) { PHALCON_INIT_VAR(r9); PHALCON_CALL_METHOD_PARAMS_3(r9, controller, "beforedispatch", controller_name, action_name, params, PHALCON_NO_CHECK); if (Z_TYPE_P(r9) == IS_BOOL && !Z_BVAL_P(r9)) { PHALCON_INIT_VAR(value); ZVAL_BOOL(value, 0); goto we_e10f_0; } } PHALCON_INIT_VAR(r10); PHALCON_CONCAT_VS(r10, action_name, "Action"); PHALCON_CPY_WRT(action_method, r10); if (phalcon_method_exists(controller, action_method TSRMLS_CC) == SUCCESS) { PHALCON_INIT_VAR(a0); array_init(a0); phalcon_array_append(&a0, controller, PHALCON_SEPARATE_PLZ TSRMLS_CC); phalcon_array_append(&a0, action_method, PHALCON_SEPARATE_PLZ TSRMLS_CC); PHALCON_INIT_VAR(value); PHALCON_CALL_FUNC_PARAMS_2(value, "call_user_func_array", a0, params); } else { if (phalcon_method_exists_ex(controller, SL("notfoundaction") TSRMLS_CC) == SUCCESS) { PHALCON_INIT_VAR(a1); array_init(a1); phalcon_array_append(&a1, controller, PHALCON_SEPARATE_PLZ TSRMLS_CC); add_next_index_stringl(a1, SL("notFoundAction"), 1); PHALCON_INIT_VAR(value); PHALCON_CALL_FUNC_PARAMS_2(value, "call_user_func_array", a1, params); } else { PHALCON_INIT_VAR(r11); PHALCON_CONCAT_SVSVS(r11, "Action '", action_name, "' was not found on controller '", controller_name, "'"); PHALCON_CALL_METHOD_PARAMS_2_NORETURN(this_ptr, "_throwdispatchexception", response, r11, PHALCON_NO_CHECK); } } if (phalcon_method_exists_ex(controller, SL("afterdispatch") TSRMLS_CC) == SUCCESS) { PHALCON_CALL_METHOD_PARAMS_3_NORETURN(controller, "afterdispatch", controller_name, action_name, params, PHALCON_NO_CHECK); } PHALCON_SEPARATE(number_dispatches); increment_function(number_dispatches); PHALCON_INIT_VAR(t10); ZVAL_LONG(t10, 256); PHALCON_INIT_VAR(r12); is_smaller_function(r12, t10, number_dispatches TSRMLS_CC); if (zend_is_true(r12)) { PHALCON_INIT_VAR(c2); ZVAL_STRING(c2, "Dispatcher has detected a cyclic routing causing stability problems", 1); PHALCON_CALL_METHOD_PARAMS_2_NORETURN(this_ptr, "_throwdispatchexception", response, c2, PHALCON_NO_CHECK); } goto ws_e10f_0; we_e10f_0: phalcon_update_property_zval(this_ptr, SL("_returnedValue"), value TSRMLS_CC); phalcon_update_property_zval(this_ptr, SL("_lastController"), controller TSRMLS_CC); RETURN_CHECK_CTOR(controller); }
/** * Returns a slice of the resultset to show in the pagination * * @return stdClass */ PHP_METHOD(Phalcon_Paginator_Adapter_Model, getPaginate){ zval *v0 = NULL, *v1 = NULL, *v2 = NULL, *v3 = NULL, *v4 = NULL, *v5 = NULL, *v6 = NULL; zval *v7 = NULL, *v8 = NULL, *v9 = NULL, *v10 = NULL; zval *t0 = NULL, *t1 = NULL, *t2 = NULL, *t3 = NULL, *t4 = NULL, *t5 = NULL, *t6 = NULL; zval *t7 = NULL, *t8 = NULL, *t9 = NULL, *t10 = NULL, *t11 = NULL, *t12 = NULL; zval *r0 = NULL, *r1 = NULL, *r2 = NULL, *r3 = NULL, *r4 = NULL, *r5 = NULL, *r6 = NULL; zval *r7 = NULL, *r8 = NULL, *r9 = NULL, *r10 = NULL, *r11 = NULL, *r12 = NULL, *r13 = NULL; zval *r14 = NULL, *r15 = NULL, *r16 = NULL, *r17 = NULL, *r18 = NULL, *r19 = NULL, *r20 = NULL; zval *r21 = NULL, *r22 = NULL, *r23 = NULL, *r24 = NULL, *r25 = NULL, *r26 = NULL, *r27 = NULL; zval *r28 = NULL; zval *i0 = NULL, *i1 = NULL, *i2 = NULL; zval *a0 = NULL; zval *p2[] = { NULL }, *p3[] = { NULL }, *p4[] = { NULL }, *p5[] = { NULL }; PHALCON_MM_GROW(); PHALCON_ALLOC_ZVAL_MM(t0); phalcon_read_property(&t0, this_ptr, "_limitRows", sizeof("_limitRows")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_CPY_WRT(v0, t0); PHALCON_ALLOC_ZVAL_MM(t1); phalcon_read_property(&t1, this_ptr, "_config", sizeof("_config")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(r0); phalcon_array_fetch_string(&r0, t1, "data", strlen("data"), PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_CPY_WRT(v1, r0); PHALCON_ALLOC_ZVAL_MM(t2); phalcon_read_property(&t2, this_ptr, "_page", sizeof("_page")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_CPY_WRT(v2, t2); if (Z_TYPE_P(v2) == IS_NULL) { PHALCON_INIT_VAR(v2); ZVAL_LONG(v2, 1); } PHALCON_ALLOC_ZVAL_MM(r1); PHALCON_CALL_FUNC_PARAMS_1(r1, "count", v1, 0x008); PHALCON_CPY_WRT(v3, r1); PHALCON_ALLOC_ZVAL_MM(i0); object_init(i0); PHALCON_CPY_WRT(v4, i0); PHALCON_INIT_VAR(t3); ZVAL_LONG(t3, 1); PHALCON_ALLOC_ZVAL_MM(r2); sub_function(r2, v2, t3 TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(r3); mul_function(r3, v0, r2 TSRMLS_CC); PHALCON_CPY_WRT(v5, r3); PHALCON_ALLOC_ZVAL_MM(r4); PHALCON_INIT_VAR(t4); ZVAL_LONG(t4, 1); PHALCON_ALLOC_ZVAL_MM(r5); sub_function(r5, v3, t4 TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(r6); div_function(r6, r5, v0 TSRMLS_CC); Z_ADDREF_P(r6); PHALCON_CALL_FUNC_PARAMS_1(r4, "ceil", r6, 0x00D); Z_DELREF_P(r6); PHALCON_CPY_WRT(v6, r4); if (Z_TYPE_P(v1) != IS_OBJECT) { PHALCON_ALLOC_ZVAL_MM(i1); object_init_ex(i1, phalcon_paginator_exception_class_entry); PHALCON_INIT_VAR(p2[0]); ZVAL_STRING(p2[0], "Invalid data for paginator", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(i1, "__construct", 1, p2, PHALCON_CALL_CHECK); zend_throw_exception_object(i1 TSRMLS_CC); Z_ADDREF_P(i1); PHALCON_MM_RESTORE(); return; } if (Z_TYPE_P(v2) == IS_NULL) { PHALCON_INIT_VAR(v2); ZVAL_LONG(v2, 0); } PHALCON_INIT_VAR(t5); ZVAL_LONG(t5, 0); PHALCON_INIT_VAR(r7); is_smaller_function(r7, v5, t5 TSRMLS_CC); if (zend_is_true(r7)) { PHALCON_ALLOC_ZVAL_MM(i2); object_init_ex(i2, phalcon_paginator_exception_class_entry); PHALCON_INIT_VAR(p3[0]); ZVAL_STRING(p3[0], "The start page number is zero or less", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(i2, "__construct", 1, p3, PHALCON_CALL_CHECK); zend_throw_exception_object(i2 TSRMLS_CC); Z_ADDREF_P(i2); PHALCON_MM_RESTORE(); return; } PHALCON_INIT_VAR(a0); array_init(a0); phalcon_update_property_zval(v4, "items", strlen("items"), a0 TSRMLS_CC); PHALCON_INIT_VAR(t6); ZVAL_LONG(t6, 0); PHALCON_INIT_VAR(r8); is_smaller_function(r8, t6, v3 TSRMLS_CC); if (zend_is_true(r8)) { PHALCON_INIT_VAR(r9); is_smaller_or_equal_function(r9, v5, v3 TSRMLS_CC); if (zend_is_true(r9)) { Z_ADDREF_P(v5); p4[0] = v5; PHALCON_CALL_METHOD_PARAMS_NORETURN(v1, "seek", 1, p4, PHALCON_CALL_DEFAULT); Z_DELREF_P(p4[0]); } else { PHALCON_INIT_VAR(p5[0]); ZVAL_LONG(p5[0], 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(v1, "seek", 1, p5, PHALCON_CALL_DEFAULT); PHALCON_INIT_VAR(v2); ZVAL_LONG(v2, 1); } PHALCON_INIT_VAR(v7); ZVAL_LONG(v7, 1); ws_e435_0: PHALCON_INIT_VAR(r10); PHALCON_CALL_METHOD(r10, v1, "valid", PHALCON_CALL_DEFAULT); if (!zend_is_true(r10)) { goto we_e435_0; } PHALCON_INIT_VAR(r11); PHALCON_CALL_METHOD(r11, v1, "current", PHALCON_CALL_DEFAULT); PHALCON_INIT_VAR(t7); phalcon_read_property(&t7, v4, "items", sizeof("items")-1, PHALCON_NOISY_FETCH TSRMLS_CC); Z_ADDREF_P(r11); phalcon_array_append(t7, r11 TSRMLS_CC); phalcon_update_property_zval(v4, "items", strlen("items"), t7 TSRMLS_CC); PHALCON_INIT_VAR(r12); is_smaller_or_equal_function(r12, v0, v7 TSRMLS_CC); if (zend_is_true(r12)) { goto we_e435_0; } PHALCON_SEPARATE(v7); increment_function(v7); goto ws_e435_0; we_e435_0: if(0) { }; } phalcon_update_property_long(v4, "first", strlen("first"), 1 TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(r13); phalcon_add_function(r13, v5, v0 TSRMLS_CC); PHALCON_INIT_VAR(r14); is_smaller_function(r14, r13, v3 TSRMLS_CC); if (zend_is_true(r14)) { PHALCON_INIT_VAR(t8); ZVAL_LONG(t8, 1); PHALCON_ALLOC_ZVAL_MM(r15); phalcon_add_function(r15, v2, t8 TSRMLS_CC); PHALCON_CPY_WRT(v8, r15); } else { PHALCON_ALLOC_ZVAL_MM(r16); phalcon_add_function(r16, v5, v0 TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(r17); is_equal_function(r17, r16, v3 TSRMLS_CC); if (zend_is_true(r17)) { PHALCON_CPY_WRT(v8, v3); } else { PHALCON_ALLOC_ZVAL_MM(r18); PHALCON_ALLOC_ZVAL_MM(r19); div_function(r19, v3, v0 TSRMLS_CC); PHALCON_CALL_FUNC_PARAMS_1(r18, "intval", r19, 0x00E); PHALCON_INIT_VAR(t9); ZVAL_LONG(t9, 1); PHALCON_ALLOC_ZVAL_MM(r20); phalcon_add_function(r20, r18, t9 TSRMLS_CC); PHALCON_CPY_WRT(v8, r20); } } PHALCON_INIT_VAR(r21); is_smaller_function(r21, v6, v8 TSRMLS_CC); if (zend_is_true(r21)) { PHALCON_CPY_WRT(v8, v6); } phalcon_update_property_zval(v4, "next", strlen("next"), v8 TSRMLS_CC); PHALCON_INIT_VAR(t10); ZVAL_LONG(t10, 1); PHALCON_INIT_VAR(r22); is_smaller_function(r22, t10, v2 TSRMLS_CC); if (zend_is_true(r22)) { PHALCON_INIT_VAR(t11); ZVAL_LONG(t11, 1); PHALCON_ALLOC_ZVAL_MM(r23); sub_function(r23, v2, t11 TSRMLS_CC); PHALCON_CPY_WRT(v9, r23); } else { PHALCON_INIT_VAR(v9); ZVAL_LONG(v9, 1); } phalcon_update_property_zval(v4, "before", strlen("before"), v9 TSRMLS_CC); phalcon_update_property_zval(v4, "current", strlen("current"), v2 TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(r24); mod_function(r24, v3, v0 TSRMLS_CC); if (zend_is_true(r24)) { PHALCON_ALLOC_ZVAL_MM(r25); PHALCON_ALLOC_ZVAL_MM(r26); div_function(r26, v3, v0 TSRMLS_CC); PHALCON_CALL_FUNC_PARAMS_1(r25, "intval", r26, 0x00E); PHALCON_INIT_VAR(t12); ZVAL_LONG(t12, 1); PHALCON_ALLOC_ZVAL_MM(r27); phalcon_add_function(r27, r25, t12 TSRMLS_CC); PHALCON_CPY_WRT(v10, r27); } else { PHALCON_ALLOC_ZVAL_MM(r28); div_function(r28, v3, v0 TSRMLS_CC); PHALCON_CPY_WRT(v10, r28); } phalcon_update_property_zval(v4, "last", strlen("last"), v10 TSRMLS_CC); phalcon_update_property_zval(v4, "total_pages", strlen("total_pages"), v10 TSRMLS_CC); PHALCON_RETURN_CTOR(v4); }
/** * Executes the validator * * @return boolean */ PHP_METHOD(Phalcon_Model_Validator_Uniqueness, validate){ zval *r0 = NULL, *r1 = NULL, *r2 = NULL, *r3 = NULL, *r4 = NULL, *r5 = NULL, *r6 = NULL; zval *r7 = NULL, *r8 = NULL, *r9 = NULL, *r10 = NULL, *r11 = NULL, *r12 = NULL, *r13 = NULL; zval *r14 = NULL, *r15 = NULL, *r16 = NULL, *r17 = NULL, *r18 = NULL, *r19 = NULL, *r20 = NULL; zval *r21 = NULL, *r22 = NULL, *r23 = NULL; zval *v0 = NULL, *v1 = NULL, *v2 = NULL, *v3 = NULL, *v4 = NULL, *v5 = NULL, *v6 = NULL; zval *v7 = NULL, *v8 = NULL, *v9 = NULL; zval *i0 = NULL; zval *a0 = NULL; zval *c0 = NULL; zval *t0 = NULL; zval *p4[] = { NULL }, *p9[] = { NULL }, *p11[] = { NULL }, *p13[] = { NULL }, *p15[] = { NULL, NULL, NULL }, *p16[] = { NULL, NULL, NULL }; HashTable *ah0, *ah1; HashPosition hp0, hp1; zval **hd; int eval_int; PHALCON_MM_GROW(); PHALCON_ALLOC_ZVAL_MM(r0); PHALCON_CALL_METHOD(r0, this_ptr, "isrequired", PHALCON_CALL_DEFAULT); if (zend_is_true(r0)) { PHALCON_ALLOC_ZVAL_MM(r1); PHALCON_CALL_METHOD(r1, this_ptr, "getrecord", PHALCON_CALL_DEFAULT); PHALCON_ALLOC_ZVAL_MM(i0); phalcon_clone(i0, r1 TSRMLS_CC); PHALCON_CPY_WRT(v0, i0); PHALCON_ALLOC_ZVAL_MM(r2); PHALCON_CALL_METHOD(r2, this_ptr, "getfieldname", PHALCON_CALL_DEFAULT); PHALCON_CPY_WRT(v1, r2); PHALCON_INIT_VAR(a0); array_init(a0); PHALCON_CPY_WRT(v2, a0); if (Z_TYPE_P(v1) == IS_ARRAY) { if (Z_TYPE_P(v1) != IS_ARRAY) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid argument supplied for foreach()"); } else { ah0 = Z_ARRVAL_P(v1); zend_hash_internal_pointer_reset_ex(ah0, &hp0); fes_d73d_0: if(zend_hash_get_current_data_ex(ah0, (void**) &hd, &hp0) != SUCCESS){ goto fee_d73d_0; } PHALCON_INIT_VAR(v3); ZVAL_ZVAL(v3, *hd, 1, 0); PHALCON_INIT_VAR(r3); PHALCON_INIT_VAR(r4); Z_ADDREF_P(v3); p4[0] = v3; PHALCON_CALL_METHOD_PARAMS(r4, v0, "readattribute", 1, p4, PHALCON_CALL_DEFAULT); Z_DELREF_P(p4[0]); Z_ADDREF_P(r4); PHALCON_CALL_FUNC_PARAMS_1(r3, "addslashes", r4, 0x01F); Z_DELREF_P(r4); PHALCON_CPY_WRT(v4, r3); PHALCON_INIT_VAR(r5); PHALCON_CONCAT_VBOTH(r5, v3, "='", v4); PHALCON_INIT_VAR(r6); PHALCON_CONCAT_RIGHT(r6, r5, "'"); Z_ADDREF_P(r6); PHALCON_SEPARATE_ARRAY(v2); phalcon_array_append(v2, r6 TSRMLS_CC); zend_hash_move_forward_ex(ah0, &hp0); goto fes_d73d_0; fee_d73d_0: if(0){ }; } } else { PHALCON_ALLOC_ZVAL_MM(r7); PHALCON_ALLOC_ZVAL_MM(r8); PHALCON_CALL_METHOD(r8, this_ptr, "getvalue", PHALCON_CALL_DEFAULT); Z_ADDREF_P(r8); PHALCON_CALL_FUNC_PARAMS_1(r7, "addslashes", r8, 0x01F); Z_DELREF_P(r8); PHALCON_CPY_WRT(v4, r7); PHALCON_ALLOC_ZVAL_MM(r9); PHALCON_CONCAT_VBOTH(r9, v1, "='", v4); PHALCON_ALLOC_ZVAL_MM(r10); PHALCON_CONCAT_RIGHT(r10, r9, "'"); Z_ADDREF_P(r10); PHALCON_SEPARATE_ARRAY(v2); phalcon_array_append(v2, r10 TSRMLS_CC); } PHALCON_ALLOC_ZVAL_MM(r11); PHALCON_CALL_METHOD(r11, v0, "getmanager", PHALCON_CALL_DEFAULT); PHALCON_CPY_WRT(v5, r11); PHALCON_ALLOC_ZVAL_MM(r12); PHALCON_CALL_METHOD(r12, v5, "getmetadata", PHALCON_CALL_DEFAULT); PHALCON_CPY_WRT(v6, r12); PHALCON_ALLOC_ZVAL_MM(r13); Z_ADDREF_P(v0); p9[0] = v0; PHALCON_CALL_METHOD_PARAMS(r13, v6, "getprimarykeyattributes", 1, p9, PHALCON_CALL_DEFAULT); Z_DELREF_P(p9[0]); PHALCON_CPY_WRT(v7, r13); if (Z_TYPE_P(v7) != IS_ARRAY) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid argument supplied for foreach()"); } else { ah1 = Z_ARRVAL_P(v7); zend_hash_internal_pointer_reset_ex(ah1, &hp1); fes_d73d_1: if(zend_hash_get_current_data_ex(ah1, (void**) &hd, &hp1) != SUCCESS){ goto fee_d73d_1; } PHALCON_INIT_VAR(v8); ZVAL_ZVAL(v8, *hd, 1, 0); PHALCON_INIT_VAR(r15); PHALCON_INIT_VAR(r16); Z_ADDREF_P(v8); p11[0] = v8; PHALCON_CALL_METHOD_PARAMS(r16, v0, "readattribute", 1, p11, PHALCON_CALL_DEFAULT); Z_DELREF_P(p11[0]); Z_ADDREF_P(r16); PHALCON_CALL_FUNC_PARAMS_1(r15, "addslashes", r16, 0x01F); Z_DELREF_P(r16); PHALCON_INIT_VAR(r14); PHALCON_CONCAT_VBOTH(r14, v8, "<>'", r15); PHALCON_INIT_VAR(r17); PHALCON_CONCAT_RIGHT(r17, r14, "'"); Z_ADDREF_P(r17); PHALCON_SEPARATE_ARRAY(v2); phalcon_array_append(v2, r17 TSRMLS_CC); zend_hash_move_forward_ex(ah1, &hp1); goto fes_d73d_1; fee_d73d_1: if(0){ }; } PHALCON_ALLOC_ZVAL_MM(r18); PHALCON_INIT_VAR(c0); ZVAL_STRING(c0, " AND ", 1); PHALCON_CALL_FUNC_PARAMS_2(r18, "join", c0, v2, 0x00F); PHALCON_CPY_WRT(v2, r18); PHALCON_ALLOC_ZVAL_MM(r19); Z_ADDREF_P(v2); p13[0] = v2; PHALCON_CALL_STATIC_ZVAL_PARAMS(r19, v0, "count", 1, p13); Z_DELREF_P(p13[0]); PHALCON_INIT_VAR(t0); ZVAL_LONG(t0, 0); PHALCON_INIT_VAR(r20); is_smaller_function(r20, t0, r19 TSRMLS_CC); if (zend_is_true(r20)) { PHALCON_ALLOC_ZVAL_MM(r21); PHALCON_CALL_METHOD(r21, this_ptr, "getoptions", PHALCON_CALL_DEFAULT); PHALCON_CPY_WRT(v9, r21); eval_int = phalcon_array_isset_string(v9, "message", strlen("message")+1); if (eval_int) { PHALCON_ALLOC_ZVAL_MM(r22); phalcon_array_fetch_string(&r22, v9, "message", strlen("message"), PHALCON_NOISY_FETCH TSRMLS_CC); Z_ADDREF_P(r22); p15[0] = r22; Z_ADDREF_P(v1); p15[1] = v1; PHALCON_INIT_VAR(p15[2]); ZVAL_STRING(p15[2], "unique", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(this_ptr, "appendmessage", 3, p15, PHALCON_CALL_DEFAULT); Z_DELREF_P(p15[0]); Z_DELREF_P(p15[1]); } else { PHALCON_ALLOC_ZVAL_MM(r23); PHALCON_CONCAT_BOTH(r23, "Value of field '", v1, "' is already present in another record"); Z_ADDREF_P(r23); p16[0] = r23; Z_ADDREF_P(v1); p16[1] = v1; PHALCON_INIT_VAR(p16[2]); ZVAL_STRING(p16[2], "unique", 1); PHALCON_CALL_METHOD_PARAMS_NORETURN(this_ptr, "appendmessage", 3, p16, PHALCON_CALL_DEFAULT); Z_DELREF_P(p16[0]); Z_DELREF_P(p16[1]); } PHALCON_MM_RESTORE(); RETURN_FALSE; } } PHALCON_MM_RESTORE(); RETURN_TRUE; }
/** * Appends a message to the validator * * @param string $message * @param string $field * @param string $type */ PHP_METHOD(Phalcon_Model_Validator, appendMessage){ zval *v0 = NULL, *v1 = NULL, *v2 = NULL; zval *t0 = NULL, *t1 = NULL; zval *r0 = NULL, *r1 = NULL; zval *i0 = NULL; zval *p0[] = { NULL, NULL, NULL }, *p2[] = { NULL, NULL, NULL }; PHALCON_MM_GROW(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z|zz", &v0, &v1, &v2) == FAILURE) { PHALCON_MM_RESTORE(); RETURN_NULL(); } if (!v1) { PHALCON_INIT_VAR(v1); ZVAL_STRING(v1, "", 1); } else { PHALCON_SEPARATE_PARAM(v1); } if (!v2) { PHALCON_INIT_VAR(v2); ZVAL_STRING(v2, "", 1); } else { PHALCON_SEPARATE_PARAM(v2); } if (PHALCON_COMPARE_STRING(v1, "")) { PHALCON_ALLOC_ZVAL_MM(t0); phalcon_read_property(&t0, this_ptr, "_fieldName", sizeof("_fieldName")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_CPY_WRT(v1, t0); } if (PHALCON_COMPARE_STRING(v2, "")) { PHALCON_ALLOC_ZVAL_MM(r0); PHALCON_INIT_VAR(p0[0]); ZVAL_STRING(p0[0], "Validator", 1); PHALCON_INIT_VAR(p0[1]); ZVAL_STRING(p0[1], "", 1); PHALCON_ALLOC_ZVAL_MM(r1); PHALCON_CALL_FUNC_PARAMS_1(r1, "get_class", this_ptr, 0x049); p0[2] = r1; PHALCON_CALL_FUNC_PARAMS(r0, "str_replace", 3, p0, 0x01A); PHALCON_CPY_WRT(v2, r0); } PHALCON_ALLOC_ZVAL_MM(i0); object_init_ex(i0, phalcon_model_message_class_entry); Z_ADDREF_P(v0); p2[0] = v0; Z_ADDREF_P(v1); p2[1] = v1; Z_ADDREF_P(v2); p2[2] = v2; PHALCON_CALL_METHOD_PARAMS_NORETURN(i0, "__construct", 3, p2, PHALCON_CALL_CHECK); Z_DELREF_P(p2[0]); Z_DELREF_P(p2[1]); Z_DELREF_P(p2[2]); PHALCON_ALLOC_ZVAL_MM(t1); phalcon_read_property(&t1, this_ptr, "_messages", sizeof("_messages")-1, PHALCON_NOISY_FETCH TSRMLS_CC); Z_ADDREF_P(i0); phalcon_array_append(t1, i0 TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_messages", strlen("_messages"), t1 TSRMLS_CC); PHALCON_MM_RESTORE(); RETURN_NULL(); }
/** * Rollbacks the transaction * * @param string $rollbackMessage * @param Phalcon_Model_Base $rollbackRecord * @return boolean */ PHP_METHOD(Phalcon_Transaction, rollback){ zval *v0 = NULL, *v1 = NULL, *v2 = NULL; zval *t0 = NULL, *t1 = NULL, *t2 = NULL, *t3 = NULL, *t4 = NULL; zval *a0 = NULL, *a1 = NULL; zval *r0 = NULL, *r1 = NULL; zval *i0 = NULL; zval *p2[] = { NULL, NULL }; PHALCON_MM_GROW(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|zz", &v0, &v1) == FAILURE) { PHALCON_MM_RESTORE(); RETURN_NULL(); } if (!v0) { PHALCON_INIT_VAR(v0); ZVAL_STRING(v0, "", 1); } else { PHALCON_SEPARATE_PARAM(v0); } if (!v1) { PHALCON_INIT_VAR(v1); ZVAL_NULL(v1); } PHALCON_ALLOC_ZVAL_MM(t0); phalcon_read_property(&t0, this_ptr, "_manager", sizeof("_manager")-1, PHALCON_NOISY_FETCH TSRMLS_CC); if (!PHALCON_COMPARE_STRING(t0, "")) { PHALCON_INIT_VAR(a0); array_init(a0); PHALCON_ALLOC_ZVAL_MM(t1); phalcon_read_property(&t1, this_ptr, "_manager", sizeof("_manager")-1, PHALCON_NOISY_FETCH TSRMLS_CC); Z_ADDREF_P(t1); PHALCON_SEPARATE_ARRAY(a0); add_next_index_zval(a0, t1); add_next_index_stringl(a0, "notifyRollback", strlen("notifyRollback"), 1); Z_ADDREF_P(a0); PHALCON_INIT_VAR(a1); array_init(a1); Z_ADDREF_P(this_ptr); PHALCON_SEPARATE_ARRAY(a1); add_next_index_zval(a1, this_ptr); Z_ADDREF_P(a1); PHALCON_CALL_FUNC_PARAMS_2_NORETURN("call_user_func_array", a0, a1, 0x001); Z_DELREF_P(a0); Z_DELREF_P(a1); } PHALCON_ALLOC_ZVAL_MM(r0); PHALCON_ALLOC_ZVAL_MM(t2); phalcon_read_property(&t2, this_ptr, "_connection", sizeof("_connection")-1, PHALCON_NOISY_FETCH TSRMLS_CC); PHALCON_CALL_METHOD(r0, t2, "rollback", PHALCON_CALL_DEFAULT); PHALCON_CPY_WRT(v2, r0); PHALCON_INIT_VAR(t3); ZVAL_BOOL(t3, 1); PHALCON_ALLOC_ZVAL_MM(r1); is_equal_function(r1, v2, t3 TSRMLS_CC); if (zend_is_true(r1)) { if (PHALCON_COMPARE_STRING(v0, "")) { PHALCON_INIT_VAR(v0); ZVAL_STRING(v0, "Transaction aborted", 1); } if (zend_is_true(v1)) { phalcon_update_property_zval(this_ptr, "_rollbackRecord", strlen("_rollbackRecord"), v1 TSRMLS_CC); } PHALCON_ALLOC_ZVAL_MM(i0); object_init_ex(i0, phalcon_transaction_failed_class_entry); Z_ADDREF_P(v0); p2[0] = v0; PHALCON_ALLOC_ZVAL_MM(t4); phalcon_read_property(&t4, this_ptr, "_rollbackRecord", sizeof("_rollbackRecord")-1, PHALCON_NOISY_FETCH TSRMLS_CC); Z_ADDREF_P(t4); p2[1] = t4; PHALCON_CALL_METHOD_PARAMS_NORETURN(i0, "__construct", 2, p2, PHALCON_CALL_CHECK); Z_DELREF_P(p2[0]); Z_DELREF_P(p2[1]); zend_throw_exception_object(i0 TSRMLS_CC); Z_ADDREF_P(i0); PHALCON_MM_RESTORE(); return; } PHALCON_MM_RESTORE(); RETURN_NULL(); }
/** * Executes the dispatch loop * * @return Phalcon_View */ PHP_METHOD(Phalcon_Controller_Front, dispatchLoop){ zval *dispatcher = NULL, *router = NULL, *base_path = NULL, *view = NULL, *model = NULL; zval *response = NULL; zval *t0 = NULL, *t1 = NULL, *t2 = NULL, *t3 = NULL, *t4 = NULL, *t5 = NULL, *t6 = NULL; zval *t7 = NULL, *t8 = NULL, *t9 = NULL; zval *i0 = NULL, *i1 = NULL; zval *r0 = NULL, *r1 = NULL, *r2 = NULL, *r3 = NULL, *r4 = NULL, *r5 = NULL, *r6 = NULL; zval *r7 = NULL, *r8 = NULL, *r9 = NULL, *r10 = NULL; zval *p18[] = { NULL, NULL, NULL, NULL }; PHALCON_MM_GROW(); PHALCON_ALLOC_ZVAL_MM(t0); phalcon_read_property(&t0, this_ptr, "_dispatcher", sizeof("_dispatcher")-1, PHALCON_NOISY TSRMLS_CC); if (!zend_is_true(t0)) { PHALCON_ALLOC_ZVAL_MM(i0); object_init_ex(i0, phalcon_dispatcher_ce); PHALCON_CALL_METHOD_NORETURN(i0, "__construct", PHALCON_CHECK); PHALCON_CPY_WRT(dispatcher, i0); PHALCON_ALLOC_ZVAL_MM(t1); phalcon_read_property(&t1, this_ptr, "_controllersDir", sizeof("_controllersDir")-1, PHALCON_NOISY TSRMLS_CC); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(dispatcher, "setcontrollersdir", t1, PHALCON_NO_CHECK); } else { PHALCON_ALLOC_ZVAL_MM(t2); phalcon_read_property(&t2, this_ptr, "_dispatcher", sizeof("_dispatcher")-1, PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(dispatcher, t2); } PHALCON_ALLOC_ZVAL_MM(t3); phalcon_read_property(&t3, this_ptr, "_request", sizeof("_request")-1, PHALCON_NOISY TSRMLS_CC); if (!zend_is_true(t3)) { PHALCON_ALLOC_ZVAL_MM(r0); PHALCON_CALL_STATIC(r0, "phalcon_request", "getinstance"); phalcon_update_property_zval(this_ptr, "_request", strlen("_request"), r0 TSRMLS_CC); } PHALCON_ALLOC_ZVAL_MM(t4); phalcon_read_property(&t4, this_ptr, "_response", sizeof("_response")-1, PHALCON_NOISY TSRMLS_CC); if (!zend_is_true(t4)) { PHALCON_ALLOC_ZVAL_MM(r1); PHALCON_CALL_STATIC(r1, "phalcon_response", "getinstance"); phalcon_update_property_zval(this_ptr, "_response", strlen("_response"), r1 TSRMLS_CC); } PHALCON_ALLOC_ZVAL_MM(t5); phalcon_read_property(&t5, this_ptr, "_router", sizeof("_router")-1, PHALCON_NOISY TSRMLS_CC); if (!zend_is_true(t5)) { PHALCON_ALLOC_ZVAL_MM(i1); object_init_ex(i1, phalcon_router_rewrite_ce); PHALCON_CALL_METHOD_NORETURN(i1, "__construct", PHALCON_CHECK); PHALCON_CPY_WRT(router, i1); PHALCON_CALL_METHOD_NORETURN(router, "handle", PHALCON_NO_CHECK); } else { PHALCON_ALLOC_ZVAL_MM(t6); phalcon_read_property(&t6, this_ptr, "_router", sizeof("_router")-1, PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(router, t6); } PHALCON_ALLOC_ZVAL_MM(t7); phalcon_read_property(&t7, this_ptr, "_basePath", sizeof("_basePath")-1, PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(base_path, t7); PHALCON_ALLOC_ZVAL_MM(r2); PHALCON_CALL_METHOD(r2, this_ptr, "getviewcomponent", PHALCON_NO_CHECK); PHALCON_CPY_WRT(view, r2); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(view, "setbasepath", base_path, PHALCON_NO_CHECK); PHALCON_CALL_METHOD_NORETURN(view, "start", PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r3); PHALCON_CALL_METHOD(r3, this_ptr, "getmodelcomponent", PHALCON_NO_CHECK); PHALCON_CPY_WRT(model, r3); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(model, "setbasepath", base_path, PHALCON_NO_CHECK); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(dispatcher, "setbasepath", base_path, PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r4); PHALCON_CALL_METHOD(r4, router, "getcontrollername", PHALCON_NO_CHECK); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(dispatcher, "setcontrollername", r4, PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r5); PHALCON_CALL_METHOD(r5, router, "getactionname", PHALCON_NO_CHECK); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(dispatcher, "setactionname", r5, PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r6); PHALCON_CALL_METHOD(r6, router, "getparams", PHALCON_NO_CHECK); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(dispatcher, "setparams", r6, PHALCON_NO_CHECK); phalcon_update_property_zval(this_ptr, "_dispatcher", strlen("_dispatcher"), dispatcher TSRMLS_CC); phalcon_update_property_zval(this_ptr, "_router", strlen("_router"), router TSRMLS_CC); PHALCON_ALLOC_ZVAL_MM(t8); phalcon_read_property(&t8, this_ptr, "_response", sizeof("_response")-1, PHALCON_NOISY TSRMLS_CC); PHALCON_CPY_WRT(response, t8); PHALCON_ALLOC_ZVAL_MM(t9); phalcon_read_property(&t9, this_ptr, "_request", sizeof("_request")-1, PHALCON_NOISY TSRMLS_CC); p18[0] = t9; p18[1] = response; p18[2] = view; p18[3] = model; PHALCON_CALL_METHOD_PARAMS_NORETURN(dispatcher, "dispatch", 4, p18, PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r7); PHALCON_CALL_METHOD(r7, dispatcher, "getcontrollername", PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r8); PHALCON_CALL_METHOD(r8, dispatcher, "getactionname", PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r9); PHALCON_CALL_METHOD(r9, dispatcher, "getparams", PHALCON_NO_CHECK); PHALCON_CALL_METHOD_PARAMS_3_NORETURN(view, "render", r7, r8, r9, PHALCON_NO_CHECK); PHALCON_CALL_METHOD_NORETURN(view, "finish", PHALCON_NO_CHECK); PHALCON_ALLOC_ZVAL_MM(r10); PHALCON_CALL_METHOD(r10, view, "getcontent", PHALCON_NO_CHECK); PHALCON_CALL_METHOD_PARAMS_1_NORETURN(response, "setcontent", r10, PHALCON_NO_CHECK); PHALCON_RETURN_CHECK_CTOR(response); }
/** * Internal filter function * * @parammixed $value * @paramarray $filters * @param boolean $silent * @returnmixed */ PHP_METHOD(Phalcon_Filter, _filter){ zval *v0 = NULL, *v1 = NULL, *v2 = NULL; zval *r0 = NULL, *r1 = NULL, *r2 = NULL, *r3 = NULL, *r4 = NULL; zval *t0 = NULL, *t1 = NULL; zval *i0 = NULL; zval *p2[] = { NULL }; PHALCON_MM_GROW(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zz|z", &v0, &v1, &v2) == FAILURE) { PHALCON_MM_RESTORE(); RETURN_NULL(); } if (!v2) { PHALCON_INIT_VAR(v2); ZVAL_BOOL(v2, 0); } PHALCON_INIT_VAR(t0); ZVAL_STRING(t0, "extraspaces", 1); PHALCON_ALLOC_ZVAL_MM(r0); is_equal_function(r0, v1, t0 TSRMLS_CC); if (zend_is_true(r0)) { PHALCON_ALLOC_ZVAL_MM(r1); Z_ADDREF_P(v0); PHALCON_CALL_FUNC_PARAMS_1(r1, "trim", v0, 0x020); Z_DELREF_P(v0); PHALCON_RETURN_DZVAL(r1); } PHALCON_INIT_VAR(t1); ZVAL_STRING(t1, "striptags", 1); PHALCON_ALLOC_ZVAL_MM(r2); is_equal_function(r2, v1, t1 TSRMLS_CC); if (zend_is_true(r2)) { PHALCON_ALLOC_ZVAL_MM(r3); Z_ADDREF_P(v0); PHALCON_CALL_FUNC_PARAMS_1(r3, "strip_tags", v0, 0x03E); Z_DELREF_P(v0); PHALCON_RETURN_DZVAL(r3); } if (!zend_is_true(v2)) { PHALCON_ALLOC_ZVAL_MM(i0); object_init_ex(i0, phalcon_exception_class_entry); PHALCON_ALLOC_ZVAL_MM(r4); PHALCON_CONCAT_BOTH(r4, "Filter ", v1, " is not supported"); Z_ADDREF_P(r4); p2[0] = r4; PHALCON_CALL_METHOD_PARAMS_NORETURN(i0, "__construct", 1, p2, PHALCON_CALL_CHECK); Z_DELREF_P(p2[0]); zend_throw_exception_object(i0 TSRMLS_CC); Z_ADDREF_P(i0); PHALCON_MM_RESTORE(); return; } else { PHALCON_RETURN_CHECK_CTOR(v0); } se_e618_3: if(0) { }; PHALCON_MM_RESTORE(); RETURN_NULL(); }
/** * Internal sanizite wrapper to filter_var * * @param mixed $value * @param mixed $filters * @param boolean $silent * @return mixed */ PHP_METHOD(Phalcon_Filter, _sanitize){ zval *v0 = NULL, *v1 = NULL, *v2 = NULL; zval *r0 = NULL, *r1 = NULL, *r2 = NULL, *r3 = NULL, *r4 = NULL, *r5 = NULL, *r6 = NULL; zval *r7 = NULL, *r8 = NULL; zval *t0 = NULL, *t1 = NULL, *t2 = NULL, *t3 = NULL, *t4 = NULL, *t5 = NULL, *t6 = NULL; zval *t7 = NULL, *t8 = NULL; zval *c0 = NULL, *c1 = NULL, *c2 = NULL; zval *a0 = NULL; zval *i0 = NULL; zval *p3[] = { NULL, NULL, NULL }, *p4[] = { NULL }; PHALCON_MM_GROW(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zz|z", &v0, &v1, &v2) == FAILURE) { PHALCON_MM_RESTORE(); RETURN_NULL(); } if (!v2) { PHALCON_INIT_VAR(v2); ZVAL_BOOL(v2, 0); } PHALCON_INIT_VAR(t0); ZVAL_STRING(t0, "email", 1); PHALCON_ALLOC_ZVAL_MM(r0); is_equal_function(r0, v1, t0 TSRMLS_CC); if (zend_is_true(r0)) { PHALCON_ALLOC_ZVAL_MM(r1); PHALCON_INIT_VAR(t1); ZVAL_LONG(t1, 517); PHALCON_CALL_FUNC_PARAMS_2(r1, "filter_var", v0, t1, 0x03D); PHALCON_RETURN_DZVAL(r1); } PHALCON_INIT_VAR(t2); ZVAL_STRING(t2, "int", 1); PHALCON_ALLOC_ZVAL_MM(r2); is_equal_function(r2, v1, t2 TSRMLS_CC); if (zend_is_true(r2)) { PHALCON_ALLOC_ZVAL_MM(r3); PHALCON_INIT_VAR(t3); ZVAL_LONG(t3, 519); PHALCON_CALL_FUNC_PARAMS_2(r3, "filter_var", v0, t3, 0x03D); PHALCON_RETURN_DZVAL(r3); } PHALCON_INIT_VAR(t4); ZVAL_STRING(t4, "string", 1); PHALCON_ALLOC_ZVAL_MM(r4); is_equal_function(r4, v1, t4 TSRMLS_CC); if (zend_is_true(r4)) { PHALCON_ALLOC_ZVAL_MM(r5); PHALCON_INIT_VAR(t5); ZVAL_LONG(t5, 513); PHALCON_CALL_FUNC_PARAMS_2(r5, "filter_var", v0, t5, 0x03D); PHALCON_RETURN_DZVAL(r5); } PHALCON_INIT_VAR(t6); ZVAL_STRING(t6, "float", 1); PHALCON_ALLOC_ZVAL_MM(r6); is_equal_function(r6, v1, t6 TSRMLS_CC); if (zend_is_true(r6)) { PHALCON_ALLOC_ZVAL_MM(r7); p3[0] = v0; PHALCON_INIT_VAR(t7); ZVAL_LONG(t7, 520); p3[1] = t7; PHALCON_INIT_VAR(a0); array_init(a0); PHALCON_INIT_VAR(t8); ZVAL_LONG(t8, 4096); Z_ADDREF_P(t8); PHALCON_SEPARATE_ARRAY(a0); add_assoc_zval(a0, "flags", t8); p3[2] = a0; PHALCON_CALL_FUNC_PARAMS(r7, "filter_var", 3, p3, 0x03D); PHALCON_RETURN_DZVAL(r7); } if (!zend_is_true(v2)) { PHALCON_ALLOC_ZVAL_MM(i0); object_init_ex(i0, phalcon_exception_class_entry); PHALCON_ALLOC_ZVAL_MM(r8); PHALCON_CONCAT_BOTH(r8, "Sanitize filter ", v1, " is not supported"); Z_ADDREF_P(r8); p4[0] = r8; PHALCON_CALL_METHOD_PARAMS_NORETURN(i0, "__construct", 1, p4, PHALCON_CALL_CHECK); Z_DELREF_P(p4[0]); zend_throw_exception_object(i0 TSRMLS_CC); Z_ADDREF_P(i0); PHALCON_MM_RESTORE(); return; } else { PHALCON_RETURN_CHECK_CTOR(v0); } se_e618_2: if(0) { }; PHALCON_MM_RESTORE(); RETURN_NULL(); }